A dart-lang version of the SIP UA stack, ported from JsSIP.
- Use pure dart-lang
- SIP over WebSocket (use real SIP in your flutter mobile, desktop, web apps)
- Audio/video calls (flutter-webrtc) and instant messaging
- Support with standard SIP servers such as OpenSIPS, Kamailio, Asterisk and FreeSWITCH.
- iOS
- Android
- Web
- macOS
- Linux
- Windows
- Fuchsia
- Proguard rules:
-keep class io.flutter.app.** { *; } -keep class io.flutter.plugin.** { *; } -keep class io.flutter.util.** { *; } -keep class io.flutter.view.** { *; } -keep class io.flutter.** { *; } -keep class io.flutter.plugins.** { *; } -keep class com.cloudwebrtc.webrtc.** {*;} -keep class org.webrtc.** {*;} - Install Flutter
- Verify the install:
flutter doctor - Run:
flutter channel beta flutter upgrade flutter config --enable-web git clone https://github.com/cloudwebrtc/dart-sip-ua.git cd dart-sip-ua/example flutter create . flutter pub get flutter run -d chrome Application should have loaded in Chrome.
Register with SIP server:
In the application, enter connexion settings by clicking the top-right hamburger menu, then click Accounts
- Click
Register- If registration is ok, it should say
Status: Registeredat the top - If it fails to register, open Chrome Dev tools and looks for errors in the Javascript Console.
- If registration is ok, it should say
Calling:
- Once registered, click the top-left
Back Arrowto return to keypad. - Enter a phone number
- Click the green phone icone
Thanks to the original authors of JsSIP for providing the JS version, which makes it possible to port the dart-lang.
The first version was sponsored by Suretec Systems Ltd. T/A SureVoIP.
The project is inseparable from the contributors of the community.
- SureVoIP - Sponsor
- CloudWebRTC - Original Author
- Robert Sutton - Contributor
- Gavin Henry - Contributor
dart-sip-ua is released under the MIT license.