v265 Mobile Channels Are Here 📱

SentiOne Automate version 265 was released on 31.08.2026. This release officially launches mobile channels for iOS and Android — backed by native SDKs for both platforms — and brings trained model export to the UI, AI credential slugs for smooth cross-environment migration, and an expanded Public API.

Mobile Channels for iOS and Android

Bots can now be deployed directly in native mobile applications. New iOS and Android channel types provide a dedicated, mobile-first integration:

  • Native SDK communication built on a modern streaming protocol with automatic connection keep-alive, so conversations stay reliable even on unstable mobile networks
  • Voice support with configurable ASR and TTS providers (Techmo, Google, Microsoft, ElevenLabs)
  • Enterprise-grade security: optional external JWT enforcement with audience validation and JWKS verification, session lifetime tied to token expiration, and proactive token-refresh warnings sent before expiry so conversations are never interrupted
  • Full conversation lifecycle: conversation restore after reconnection, event messages, bot commands, and secure metadata passing with per-value sensitivity control

See Adding the Mobile SDK Channel (iOS & Android) for a step-by-step configuration guide, and Mobile SDK security for details on app identity verification and external JWT authentication.

Native SDKs for iOS and Android

Alongside the platform support, we are releasing native SDKs for both platforms — a Swift SDK for iOS and a Kotlin SDK for Android. They handle the whole client side of the integration: the handshake and app identity check, opening and restoring conversations, streaming bot replies, voice input and playback, agent handover, and token refresh where the channel enforces external JWT.

The SDKs are available to SentiOne customers. Getting started takes a few lines — on iOS:

import SentiOneAutomate

let configuration = try SentiOneSDKConfiguration(
    appKey: "mc-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    teamId: "A1B2C3D4E5"
)
let sdk = SentiOneSDK(configuration: configuration, delegate: self)

And on Android:

val sdk = SentiOneAutomate.create(
    context = context,
    config = Configuration(appKey = "mc-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"),
    tokenProvider = null, // required only when the channel enforces external JWT
)

Each SDK ships with its own integration guide covering installation, session handling, voice, and error handling. Contact the SentiOne team to request access and the current version.

Export Projects with Trained Models via UI

Projects can now be exported together with trained NLU models directly from the UI — previously available only through the API. Trained models are included automatically where available, eliminating the need to retrain after importing the project on another environment.

AI Credential Slugs for Cross-Environment Migration

AI credentials now have user-friendly, editable slugs (e.g. open_ai_for_project_x) instead of opaque identifiers. During project import, the system automatically matches credentials by slug when the original credential doesn't exist on the target environment. When a match cannot be found, a clear error message tells you exactly which credential needs to be created.

See Migrating a project between environments for the full migration workflow.

Per-Domain Proxy in Integrations

Individual integrations can now be routed through a dedicated proxy, configured directly in the integration form. Proxy credentials support Basic Auth and are stored securely through the Secrets module. Proxy settings are included in project export and import.

Public API Enhancements

  • Sessions with messages in one call: a new includeMessages flag on the session list endpoint returns sessions together with their full message history, removing the need for separate per-session requests
  • Bot state after turn: conversation exports (Public API, JSON export, and CSV) now include the bot's state after each turn — the last block and context reached — enabling precise conversation-path reporting

Full API documentation is available at automate.help.sentione.com/reference.

Export All Errors & Unrecognized Messages

The Errors and Unrecognized Messages views now offer an "export all" option, with exports prepared server-side for both tabs — no more manual page-by-page copying.

Reliable Agent Handovers

Message processing in WebChat is now serialized per conversation, guaranteeing that transfers to an agent are final. Messages sent by the user right after a handover are reliably delivered to the agent instead of racing against the transfer.


💊 IMPROVEMENTS

  • [Mobile] New iOS and Android channel types with native SDK support — now generally available
  • [Mobile] Native Swift (iOS) and Kotlin (Android) SDKs handling handshake, conversations, voice, handover, and token refresh
  • [Mobile] Configurable ASR and TTS providers for voice in mobile apps
  • [Mobile] External JWT security with audience validation and JWKS verification
  • [Mobile] Proactive token-refresh warnings and connection keep-alive for uninterrupted conversations
  • [NLU] Export projects with trained models directly from the UI
  • [NLU] AI credential slugs with automatic matching during cross-environment import
  • [Integration] Per-domain proxy configuration with credentials secured via Secrets module
  • [API] Retrieve sessions together with messages in a single call (includeMessages flag)
  • [API] Bot state after each turn exposed in conversation exports (API, JSON, CSV)
  • [Analytics] Export all Errors and Unrecognized messages, prepared server-side
  • [Conversations] Clearer naming of conversation export formats
  • [WebChat] Serialized message processing guarantees reliable agent handovers
  • [Admin] Real-time NLU training status updates now work correctly in multi-cluster deployments

🐛 FIXES

  • [WebChat] Chat now starts correctly on browsers with strict tracking protection (e.g. Safari)

  • [WebChat] Conversation starts automatically after closing and reopening the widget — no more stuck "End of conversation" label

  • [Flow] Block connections can no longer be accidentally broken in the editor

  • [Test Suites] Malformed import archives are rejected with a clear validation error instead of destabilizing the admin panel

  • [Conversations] Bot transcription no longer fails when statement tags differ only in letter case

  • [UI] Log icon no longer overlaps the bot avatar in Chat Tester

  • [Security] Updated dependencies to resolve security vulnerabilities

Follow the changelog for more exciting new features! 👋