Android Chatbot SDK — Release Notes
Version history for dialogs_Chatbot_Android, the official Android SDK for integrating
the EnableX Dialogs conversational AI chat bot into native Android applications. Releases are shown
in reverse chronological order — latest first.
This is the first published release of the Android Chatbot SDK. Platform: Android 7.0+ (API 24) · Language: Kotlin (Java-compatible).
Download: dialogs_Chatbot_Android-1.0.0.zip
dialogs_Chatbot_Android provides a fully managed chat UI (built with Jetpack Compose,
wrapped for both View- and Fragment-based apps) with zero configuration required beyond a Bot ID
and host URL.
What's Included
Public API
| API | Description |
|---|---|
EnxChatClient.start(config, listener?) | One-call setup: initialize the WebView and connect to the bot |
EnxChatClient.bindToLifecycle(owner) | Auto-manage disconnect/release with an Activity or Fragment lifecycle |
EnxChatConfig | Configuration model: botId, host, path, isCallView, enableHistory |
EnxChatFragment | Fragment wrapper around EnxChatClient for fragment-first apps |
EnxChatSession | Headless, advanced lifecycle for custom orchestration (Level 3 API) |
EnxChatBotListener | onBotConnected(BotInfo) and onClose() callbacks |
EnxChatSessionListener | Full session event listener for advanced integrations |
EnxChatClient.resetConversation() | Clears the server-side conversation and local message list |
Chat Mode
- Full chat interface (Jetpack Compose) with message list and input bar
- Bot avatar, name, and startup message loaded from
BotInfo - Animated typing indicator while the bot composes a reply
- Markdown rendering in bot messages via Markwon (bold, italic, tables, strikethrough)
Message Types Supported
- Plain text messages (user ↔ bot)
- Quick replies and action buttons
- Image, video, audio, and file/document attachments
- Structured cards and carousels
- Calendar (date picker) prompts
- System / handover status messages
Media Attachments
- In-app attachment picker (image, video, document) via the Activity Result API
- Image loading and caching via Coil
- Built-in emoji picker
Click-to-Call Mode
- Server-driven via the
BotInfo.clickToCallfield (“text”, “audio”, or “video”) — no extra integration code required - Minimal, call-only screen (
EnxClickToCallMinimalScreen) with a single tap-to-call button when the bot is configured for audio or video - Full-screen video call activity (
EnxVideoCallActivity) rendering the agent's call iframe - Audio/video call buttons in the chat header when
isCallView = true
Technical
- WebView-based JS bridge (
AndroidBridge) for bot protocol and message parsing - Compose-first architecture with an XML View wrapper (
EnxChatClientextendsFrameLayout) and a Fragment wrapper - Lifecycle-safe mode via
bindToLifecycle(auto disconnect/release) - Optional conversation history restore (
enableHistory) - Base package:
com.dialogs_chatbot_android(renamed fromcom.enx_chatbot_android)
Distribution
| Format | Location |
|---|---|
| AAR | build/outputs/aar/dialogs_Chatbot_Android-<version>-release.aar |
| Gradle module | :dialogs_Chatbot_Android |
| Build task | copyVersionedReleaseAar produces the versioned release AAR |
Known Limitations
- Single bot instance per
EnxChatClient/EnxChatSession(no multi-bot pooling) - No UI theming API beyond header color and profile picture in v1.0
- Call features require the bot to send the corresponding call-start payloads
- Requires network access at startup to load the bot WebView
- minSdk 24 (Android 7.0)
Permissions Required
Add these to your app's AndroidManifest.xml:
Always required:
android.permission.INTERNETandroid.permission.ACCESS_NETWORK_STATE
Required only if call actions (including Click-to-Call) are enabled:
android.permission.CAMERAandroid.permission.RECORD_AUDIOandroid.permission.MODIFY_AUDIO_SETTINGS