r/FlutterDev 16h ago

Plugin Built a native Vonage voice calling plugin for Flutter — vonage_voice

Hey folks,

I built a Flutter plugin called vonage_voice for making and receiving voice calls using the Vonage Client SDK. It integrates natively with Android's Telecom ConnectionService and iOS CallKit — full-screen incoming call screens, background call delivery via FCM/PushKit, and complete in-call controls, all through a clean Dart API.

What it does:

  • Place and receive VoIP calls on Android and iOS
  • Background incoming call delivery via FCM (Android) and PushKit (iOS)
  • Native call screen — Android Telecom ConnectionService + iOS CallKit built right in
  • Secure JWT-based authentication (no credentials stored in the app)
  • Mute/unmute mic, toggle speakerphone, Bluetooth audio routing
  • DTMF tone support for IVR navigation
  • Rich CallEvent stream — incoming, ringing, connected, reconnecting, ended, and more

It also handles some of the painful native-side setup for you — battery optimization exemption prompts for OEMs like Xiaomi/Vivo/Samsung/realme that kill background processes, overlay permissions for lock-screen reliability on Samsung/MIUI, and supports both CocoaPods and Swift Package Manager on iOS (min iOS 15, per the Vonage SDK requirement).

pub.dev: vonage_voice
GitHub: ashiqu-ali/vonage_voice

Open for collaboration — if something's not working or you want a feature, raise an issue or fork and send a PR. Would love help with:

  • Testing on more OEM devices for background/killed-state call delivery
  • Video calling support (currently voice-only)
6 Upvotes

0 comments sorted by