Android Chatbot UI Kit — Release Notes

Version history for dialogs_ChatbotAV_Android, the official pre-built chat and video-calling UI Kit for Android. Releases are shown in reverse chronological order — latest first.

v1.0.0 — July 16, 2026
Initial Release

This is the first published release of the Android Chatbot UI Kit.
Download: dialogs_ChatbotAV_Android-1.0.0.zip

This document consolidates the SDK team's own release-notes review, cross-checked directly against the current source tree (reviewed 2026-07-16). The original v1.0.0 notes only described EnxChatClient; the code review found substantially more already-shipped functionality (Level 2/3 APIs, both call paths, rich attachment previews, and more) which is documented below as part of this same v1.0.0 release, since SDK_VERSION in gradle.properties was still 1.0.0 at the time of review.

What's Included

Public API

AdditionNotes
EnxChatConfigbotId, host (required), plus optional path/isCallView/enableHistory.
EnxChatClientstart(config, listener?), bindToLifecycle(owner), disconnect(), release().
EnxChatBotListeneronBotConnected(botInfo), onClose().
EnxChatSession (Level 3)Headless lifecycle/session API — create(...), initialize(), connect(), sendMessage(text, attachments), disconnect(), resetConversation(), release(), getWebView(), saveState()/restoreState(), state: StateFlow<EnxChatState>.
EnxChatFragment (Level 2)Fragment-first wrapper — newInstance(...), bindToHostLifecycle(...), start()/connect()/disconnect()/release().
EnxChatSessionListener / EnxChatSessionListenerAdapterRicher event contract than EnxChatBotListener: onStateChanged, onChatReady, onConnected, onConversationReady, onMessageSent, onBotResponse, onBotMessage, onTyping, onDisconnected, onBotInfo, onClear, onConversationReset, onAudioCallClick, onVideoCallClick, onError, onVideoCallRequested, onNativeUIKitCallRequested, onVideoCallEnded.
EnxChatState enumCREATED, INITIALIZING, INITIALIZED, CONNECTING, CONNECTED, DISCONNECTED, ERROR, RELEASED — exposed via getState()/getCurrentState()/state: StateFlow.
EnxChat composable + EnxChatControllerCompose-native advanced entry point; EnxChatController.resetConversation() for imperative resets from outside the composable.
EnxCallView composableReusable audio/video call icon buttons for custom app-owned chat headers.
ChatMessage model (+ ChatAttachment, QuickReply, MessageType, AttachmentType)Full structured message model: text, quick replies, buttons, image/video/audio/file/card/carousel/system messages, multi-select support (allowMultiple).
BotInfo model (+ BotDetails, ChatTheme, StartupForm, Security, AgentHuntingStatusMessage)Full bot metadata — theme colors, contact/legal links, startup form config, agent-hunting status copy, security flags (escapeHTML), maxMessageLength, click-to-call mode.
EnxChatClient.setBotIdAndHost(...)Present but @Deprecated in favor of startWithBot(...)/start(config, listener).
EnxChatClient.setProfilePictureUrl(...) / setHeaderColor(...)Header customization hooks.
EnxChatClient config-change survivalonSaveInstanceState/onRestoreInstanceState persist WebView state across rotation.
EnxChatClient.unbindFromLifecycle()Explicit teardown of a previous bindToLifecycle(...) binding.

Chat Features (UI Layer)

Calling Features

File & Attachment Sending

Known Limitations

Required Permissions

Always required: INTERNET, ACCESS_NETWORK_STATE. Required for call features: CAMERA, RECORD_AUDIO, MODIFY_AUDIO_SETTINGS, WAKE_LOCK, FOREGROUND_SERVICE, FOREGROUND_SERVICE_MEDIA_PROJECTION, SYSTEM_ALERT_WINDOW, BLUETOOTH_CONNECT/BLUETOOTH_SCAN/BLUETOOTH_ADVERTISE.

These come from three sources merged automatically by Gradle: the SDK module's own manifest, Enx_UIKit_Android-2.2.3.aar's manifest, and Enx-Rtc-Android-release.aar's manifest.

Dependency Versions in This Build

DependencyVersion
Enx_UIKit_Android (vendored AAR)2.2.3
Enx-Rtc-Android (vendored AAR)release (unversioned filename)
libwebrtc (vendored AAR)unversioned filename
Kotlin2.0.21
AGP9.0.1
Compose BOM2024.09.00
ExoPlayer2.19.1
Gson2.10.1
socket.io-client2.1.2
Markwon4.6.2
Coil-Compose2.5.0
sdp-android1.1.1
minSdk / compileSdk / targetSdk24 / 36 / 36