utd_calls_kit 0.9.2 copy "utd_calls_kit: ^0.9.2" to clipboard
utd_calls_kit: ^0.9.2 copied to clipboard

PlatformAndroid

LiveKit-based WhatsApp-style 1:1 audio & video calling for Flutter — independent UTD-Stream kit.

0.9.2 #

Signaling capability surfacing (additive, non-breaking).

  • Call invitation now rides the paid signaling capability (call invitation
    • presence), billed separately from chat. UTDCallController.signalingEnabled / .planLimits (from the session mint, via UTDCallsClient) let app code pre-check before starting a call — both nullable; null on an older engine ("unknown, let the server decide").
  • When the engine refuses a call because signaling isn't enabled for the plan (a paid-capability gate), the failure now carries UTDStreamException.isFeatureDisabled / isSignalingDisabled and still maps to UTDCallEndReason.notActivated, so the UI can show an upsell rather than a raw error. The exception is rethrown from startCall / acceptIncoming for app-code inspection.
  • Public API additions: UTDCallController.signalingEnabled/.planLimits, UTDCallsClient.signalingEnabled/.planLimits. Billing is MAU-based (no per-minute/per-message change to this kit). Bumped utd_signaling to 0.1.1.

0.9.0 #

  • VoIP/FCM wake-from-killed → CallKit. An incoming call now rings the device even when the app is backgrounded or killed:
    • iOS: PushKit VoIP pushes are delivered natively into CallKit by flutter_callkit_incoming; accept/decline flow through the existing UTDCallKitBridge into the controller.
    • Android: a top-level @pragma('vm:entry-point') FCM background handler (utdFirebaseBackgroundHandler) shows the full-screen CallKit incoming UI (backed by the plugin's foreground service) on a {type:'call'} data message; foreground onMessage does the same.
  • New api/push_token_api.dart (UTDPushTokenApi): register / unregister push tokens via POST / DELETE /api/v1/devices/push-token (Bearer). Collects the iOS PushKit VoIP token (FlutterCallkitIncoming.getDevicePushTokenVoIP) and/or the FCM token (FirebaseMessaging.instance.getToken) and registers whichever is available with the right platform; re-registers on FCM onTokenRefresh and on PushKit VoIP token updates.
  • New push/push_dispatcher.dart (UTDPushDispatcher, UTDCallPush): token collection + foreground/background call routing + cold-start resume (coldStartAcceptedCall).
  • UTDCallsConfig.enablePush flag (default true). When enabled, the client registers tokens on init() and the controller resumes a cold-started accepted call (look up call_idgetCallacceptIncoming → join). A CallKit accept whose invitation never arrived over the signal WS (woke from background/killed) is resolved the same way.
  • UTDCallController.unregisterPush() for sign-out.
  • callkit_bridge now resolves a call's call_id from CallKitParams.extra['call_id'] when the UUID was shown by a background push isolate (whose UUID the bridge never registered).
  • Added firebase_core + firebase_messaging dependencies.
  • 1.0.0 is gated on device QA — push, CallKit wake, and cold start cannot be exercised by flutter analyze or unit tests. See the README device-QA checklist. Requires host-app Firebase + iOS PushKit/CallKit/APNs config, and the engine's APNS_* / FCM_* credentials provisioned (push dispatch is gated until then).

0.5.0 #

  • Native incoming-call UI: CallKit (iOS) / ConnectionService (Android) via the new UTDCallKitBridge, driven by in-app signal-WS invitations.
  • UTDCallsConfig.enableCallKit flag (default true); the in-app UTDIncomingCallScreen remains the fallback when disabled/unavailable.
  • Bridged native actions (accept → acceptIncoming, decline/timeout → reject, ended → hang up); native timer started on room connect; UI dismissed on terminal states.
  • Added flutter_callkit_incoming and uuid dependencies.
  • Foreground / in-app only — PushKit/FCM wake-from-killed deferred to v1.0.

0.0.1 #

  • TODO: Describe initial release.
0
likes
130
points
0
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

LiveKit-based WhatsApp-style 1:1 audio & video calling for Flutter — independent UTD-Stream kit.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

equatable, firebase_core, firebase_messaging, floating, flutter, flutter_callkit_incoming, flutter_screenutil, flutter_webrtc, livekit_client, proximity_sensor, utd_signaling, uuid

More

Packages that depend on utd_calls_kit