pipecat_flutter_android 3.2.0
pipecat_flutter_android: ^3.2.0 copied to clipboard
Android implementation of the pipecat_flutter plugin
3.2.0 #
- feat: Emit an
InputStatusUpdatedEventwhenever the local microphone's observed sending state (inputs.microphone∧publishing.microphone) changes — including poll-driven reconcile convergence that no DailyCallClientListenercallback would surface — so the client's mic indicator can never lag the real capture state. - fix: Re-emit the input state on connect success and again shortly after (+300 ms / +1 s), so late UI subscribers and post-connect publishing settling are always reflected after a (re)connect. Fixes a stale "muted" mic indicator while audio is live after reconnecting to a new room.
- test: Cover the new sending-state change notification in
LocalMicStateControllerTest.
3.1.0 #
- feat: Vendor
pipecat-client-androidas a local source fork underandroid/vendored/pipecat-client-android/and patch it with nativellm-function-call-started,llm-function-call-in-progress, andllm-function-call-stoppedRTVI message handling — mirroring the iOS vendored SDK approach. - feat: Implement
onLLMFunctionCallStarted,onLLMFunctionCallInProgress, andonLLMFunctionCallStoppedcallbacks in the plugin; each emits the corresponding typed Flutter timeline event with canonical-JSON argument and result payloads. - chore: Android clients no longer depend on the Dart-side compat-bridge synthesizer for tool-call events; both platforms now emit lifecycle events natively.
3.0.1 #
- fix: Replace the previous local-mic reconcile loop with a listener-driven state machine keyed to Daily
inputs.microphoneandpublishing.microphone. - fix: Make mute/unmute completion wait for fully observed Daily convergence, with bounded polling fallback and
MIC_RECONCILE_ERRORon failure. - test: Add native controller unit coverage for ordered transitions, rapid retoggles, drift recovery, and polling fallback.
3.0.0 #
- BREAKING: Drop
LlmFunctionCallEventemission. Migrate to the newLlmFunctionCall{Started,InProgress,Stopped}Eventlifecycle exposed bypipecat_flutter3.0.0. - chore:
onLLMFunctionCallis a no-op pending an Android-side SDK patch mirroring iOS. Until then, Android clients receive tool calls via the Dart-side compat-bridge synthesizer inpipecat_flutter(the bot runner'srtvi_tool_call_server_message_v1envelope).
2.4.1 #
- fix: Make local microphone mute state authoritative and self-healing against Daily input and publishing state.
- fix: Force local audio levels and user-speaking events to silence while the local microphone is muted.
2.4.0 #
- fix: Replace broken
updateRemoteParticipantsbot audio muting with correctupdateSubscriptionsForParticipants(local subscription control). - fix: Store bot participant ID on
onBotConnectedinstead of fragile runtime lookup. - fix: Set
isBotAudioMutedonly after async subscription call succeeds. - feat: Register
CallClientListenerfor reactiveonInputsUpdatedandonSubscriptionsUpdatedtrack events. - fix: Return
BOT_NOT_CONNECTEDerror ifmuteBotAudiocalled before bot joins.
2.3.0 #
- feat: Add transport diagnostics.
- feat: Add sub-phases connection statuses.
2.2.0 #
- chore: Bump package version to
2.2.0.
2.1.0 #
- feat: Implement
client-message
2.0.5 #
- Fix: Delay call of release() on failed connection
2.0.4 #
- Fix: SIGSEGV
2.0.3 #
- Fix: type mismatch for LLMFunctionCallData.args after pipecat client SDK update (Value? → JsonElement)
2.0.2 #
- feat: send LLM tool call result
- fix: missing argument for parameter
2.0.1 #
- Fix: failed to build in Android
2.0.0 #
- Refactor: single canonical stream
0.2.0+3 #
- Update
pipecat_flutter_platform_interfacedependency constraint to^0.2.0.
0.2.0+2 #
- Integrate
sendText
0.1.0+1 #
- Integrates
ai.pipecat:daily-transport:1.1.0