siprix_voip_sdk 1.0.37 copy "siprix_voip_sdk: ^1.0.37" to clipboard
siprix_voip_sdk: ^1.0.37 copied to clipboard

Siprix VoIP SDK plugin for embedding voice-over-IP (VoIP) audio/video calls based on SIP/RTP protocols into Flutter applications.

1.0.37 #

  • Fixed decoding H264 bitstream contaning SPS/PPS as separate packets with marker flags
  • iOS Flutter: Automatically toggle hold state on 'AddCall'/SwitchToCall'/'GroupCall' cases initiated from the app when enabled CallKit
  • Android Flutter: Added ability to handle call events in the own service class
  • Unified versions of the child packages //2026.04.18

1.0.36 #

  • Fixed parsing SDP with wrong attributes order, which could cause to lose codecs settings
  • Filter out special characters from the 'brandName'
  • Android Flutter: Added ongoing call notification
  • Android Flutter: Updated notifications using CallStyle/MessagingStyle and separate channels
  • Android Flutter: Redesigned Activity's lock screen visibility (enable only when call present)
  • iOS Flutter: Updated CallKit implementation
  • iOS Flutter: Added ability to detect and notify Bluetooth device connection
  • Flutter: Implemented Iterator for CallsModel
  • Flutter: Added attribute 'reason' to the CDR model //2026.03.29

1.0.35 #

  • Fixed bug with losing mute state when switch between calls or make conference
  • Improved handling RtcpMux/BUNDLE options when ICE enabled
  • MacOS: Fixed potential crash on initialize
  • Fixed triggering 'OnPlayerState' event
  • Added ability to set brandName in the 'msid' SDP attribute
  • Android Flutter: Added ability to sync calls state when Activity destroyed during the call
  • Android Flutter: Fixed potential exception on display incoming call notification
  • iOS Flutter: Fixed bug with inverted mute behaviour on iOS 17+
  • iOS Flutter: Signal Flutter when call muted by CalKit
  • iOS Flutter: Added new setting 'enableCallKitMute' (ability to mute call by CallKit)
  • iOS Flutter: Added new setting 'enableCallKitReportCallAsVideo' (ability to mute call by CallKit) //2026.03.18

1.0.34 #

  • Windows: Fixed handling homeFolder with Unicode symbols
  • Windows: Added ability to detect default audio device changes and switch audio during a call
  • Added ability to retrieve last received SIP message when call terminated
  • Added ability to end call when it's waiting on Re-Invite response
  • Don't update registration when it's failed on TCP connection closed by remote side
  • Redesigned deleting subscriptions (after receive confirmation from remote side)
  • iOS: improved switching between transports
  • iOS: converted SiprixPushRegistry to singleton.
  • Android: added ability to request full screen intent permission
  • Added ability to set ContentType for Message requests
  • Flutter: Added homeFolder setting
  • Added new exampe app with single model for easy start (https://github.com/siprix/SampleFlutter) //2026.02.25

1.0.33 #

  • Added new method 'PlayTone' and ability to play files/tones to local speaker even where there is no call
  • Redesigned internal mixer impl to avoid sound artifacts when SDK hosts conference call
  • Added ability to send SIP responses back to sender
  • Added ability to create few subscriptions for the same ext@account with different events
  • Added ability to set body for SUBSCRIBE request
  • Fixed handling SDP with enabled 'rtcp-mux'
  • iOS: updated CallKit impl (accept SIP call after activate audio session)
  • iOS: imroved handling networks switching and restore connection when app become active
  • Flutter-Android: fixed potential security exception on handling reject call notification
  • Flutter: updated 'SubscriptionsModel' implementation
  • Flutter example: added popup dialogs for dtmf/transfer.. actions in call UI
  • Flutter example: added more explicit way to display and set default SIP account //2025.12.19

1.0.32 #

  • Fixed sound artifacts which could appear when SDK hosts conference call
  • Added ability to skip registration request when SDK has been successfully registered less than 1sec ago
  • Android: Use Bluetooth as default device when it present
  • Android: Added fallback to default ringtone Redesigned CallNotif service impl
  • iOS: Added new method 'handlePushNotif' which restores registration when push received Fixes related to handling connection in background mode //2025.12.05

1.0.31 #

  • Updated upgradeToVideo implementation. Added new mode 'manual'
  • Added new event 'onCallVideoUpgradeRequested' Triggered when specified 'acc.upgradeToVideo=manual' and remote side requests to add video
  • Added new method 'acceptVideoUpgrade' App has invoke it from 'onCallVideoUpgradeRequested' event handler
  • iOS: Added new method 'endCallKitCall' Example app uses it to end CallKit calls when SIP INVITE hasn't received
  • Android: Added ability to disable displaying activity on lock screen by adding to manifest <meta-data android:name="com.siprix.DontShowWhenLocked" android:value="true" /> //2025.11.16

1.0.30 #

  • Added new setting 'acc.upgradeToVideo' and event 'onCallVideoUpgraded' //2025.11.07

1.0.29 #

  • Added new setting 'ini.enableVUmeter' and event 'onVuMeterLevel' Allow display mic/spkr volume level indicator
  • Added new setting 'ini.enableAes128Sha32' Enable using aes128_sha1_32 SRTP crypto cipher
  • Added new event 'onSipNotify' Triggered when received SIP NOTIFY message. Allow handle voicemail (Message Waiting) notifications
  • Added new method 'getStats(callId)' Returns call statistics details as string in json format
  • Fixed handling H264 packetization settings
  • Android: Fixed potential crash when app uses TLS transport and switches between networks //2025.11.03

1.0.28 #

  • Added new method 'UpgradeToVideo'
  • Fixed handling case when call started with video on hold
  • iOS/Android: Fixed handling device rotation on capturing video
  • iOS/Android: Added new method 'SwitchCamera' //2025.09.29

1.0.27 #

  • Android: Fixes related to 16K page size support
  • iOS: Updated handling push notif and incoming calls //2025.09.20

1.0.26 #

  • Fixed remote hold detection (when all media lines are sendonly or inactive)
  • Modified handling 'sips' scheme (put 'sips' to Contact header)
  • iOS: Added ability to activate audio session manually (when push notification not received)
  • iOS: Modified internal video rendering implementation
  • iOS: Fixed ability to use jpeg image instead of camera
  • iOS: Added new method 'getCallKitCallUUID'
  • Android: added ability to skip permissions request
  • Added new method 'WriteLog', and integrated it in the iOS/Android flutter plugins
  • Updated 'SiprixVideoRenderer::onResize' callback in Flutter wrapper;
  • Modifed 'unInitialize' implementation in the Flutter plugins //2025.09.14

1.0.25 #

  • Added G729 codec support
  • Fixed handling connection candidates of inactive media lines
  • Added fallback to first available H264 codec when baseline profile missed //2025.08.31

1.0.24 #

  • iOS: Revert mistakenly published changes caused build error //2025.08.26

1.0.23 #

  • Improved detection of the avialability IPv4/IPv6 interfaces
  • Updated previous fix, which reduces delay on collecting candidates
  • Added fix for H264 profile-level-id negotiation //2025.08.24

1.0.22 #

  • Fixed crash on ios/macos when license string is empty
  • Added fix which prevents long delay on collecting candidates when enabled STUN
  • Added handler for case when connection can't be created because of wrong STUN/TURN address
  • iOS: Added ability to toggle front/back camera
  • Added new option 'ini.transpForceIPv4'
  • Example app: modified default codecs, trigger 'notifyListeners' on 'CallsModel::onConnected' //2025.08.16

1.0.21 #

  • Prevent potential crash on hold when call initiated as video/fixed handling Hold events
  • Fixed bug which prevents adding multiple TLS transports
  • Fixed TURN address resolution
  • 'OnMessageIncoming' API update (added messageId arg)
  • Android: Added 16K page size support
  • Android: Added ability to display notification when message received
  • Android: Fixed bug with select audio device on tabled without earpiece
  • Example app: messages handling improvements //2025.08.09

1.0.20 #

  • Added new account properties 'stunServer','turnServer'
  • Added new ini property 'VideoCallEnabled'
  • Added new video data property 'Rotation'
  • iOS: Fixed conflict class names preventing upload to AppStore
  • Fixed handling ACK/SDP response (missed 'onCallConnected' event)
  • Fixed potential crash when received SIP MESSAGE without body
  • Example app: added blind/attended transfer pages //2025.07.31

1.0.19 #

  • Added new method 'stopRingtone'
  • iOS: fixed sound issue when received incoming call in terminated state
  • Android: added new option 'listenVolChange'
  • Android: set BLUETOOTH permissions enabled by default
  • Example app: added 'advanced mode' of the AddAccount page //2025.06.04

1.0.18 #

  • Windows: Fixed plugin build error, caused by last update
  • Android: Modified foreground service type (allows to access microphone Android 15 when app is in background)

1.0.17 #

  • Fixed bug with find local account which matches received SIP request
  • Added new option 'iceEnabled'
  • Android: Added ability to request 'USE_FULL_SCREEN_INTENT' permission, when it's declared in app's manifest
  • Windows: Fixed bug with detecting is IPv4 available

1.0.16 #

  • Improved CallRecording (capture local+remote sound, use mp3 encoder, write mono or stereo)
  • Added new ini properties 'recordStereo', 'useDnsSrv'
  • Flutter example app: Added 'Record' menu, updated 'PlayFile' menu impl
  • Android: Fixed bug which prevents stop foreground service after re-create Activity
  • Android: Fixed crash when library instance has been destroyed and re-initialized in the same process
  • Android: Fixed crash on create service and resolve app name

1.0.15 #

  • Fixed bug with sending statusCode in the 'onTerminated' callback
  • Added ability to switch calls automatically after call un-held, connected
  • iOS: Fixed switching between calls and join calls to conference when enabled CallKit

1.0.14 #

  • Added new ini property 'UnregOnDestroy'
  • Updated 'CdrsModel' with ability to set MaxNumber of items and access items from inherited class
  • Android: Set compileSdk version to 35
  • Android.Notifications:
    • Set notification style 'CallStyle.forIncomingCall' on devices with SDK_INT>=31
    • Added ability to set notification icon in app resources
    • Added ability to customize notification using own native class
  • Android.Permissions:
    • Request permission 'BLUETOOTH_CONNECT' in runtime, prevent crash when it missed
    • Request camera permission only when manifest contains it
  • Android: Fix vibrate in background
  • iOS: Send events from library to the app using UI thread

1.0.13 #

  • Android: Updated SiprixRinger implementation
  • Android: Redesigned plugin with ability to work in background isolate and handle push notif
  • Updated example app with Firebase push notification related functionality

1.0.12 #

  • iOS: Redesigned and improved CallKit+PushKit implementation
  • Updated example app with PushKit related functionality

1.0.11 #

  • Added ability to send and receive text messages (SIP MESSAGE request)
  • Added ability to override DisplayName in outgoing call (method 'Dest_SetDisplayName')
  • Added ability to handle received MediaControlEvent 'picture_fast_update'
  • Fixed bug in 'RewriteContactIp' option implementation when TCP/TLS transport is using
  • Fixed parsing RTCP FB parameters of video in SDP
  • Android: added ability to switch camera by invoke 'setVideoDevice(0)'
  • Android: updated permissions request functionality
  • iOS: Added PushKit support

1.0.10 #

  • iOS: Fixed closing app caused by SIGPIPE signal
  • Android: Send callIncoming/accept events to the app only after sync accounts
  • Android: Restored foreground service permissions in example app manifest (plugin doesn't add them by default)
  • Added more arguments to the method 'CallsModel::sendDtmf'

1.0.9 #

  • iOS: Updated TLS transport implementation (use TLS1.3 by default, ability to use also 1.2 and 1.0)
  • iOS: Improved ability to detect transports lose/switch and automatically restore registration
  • iOS: Added more detailed log output for some cases
  • iOS: Added CallKit icon
  • Android: Removed foreground service permissions

1.0.8 #

  • Android, iOS: Fixed potential crash when app switched between networks and updates registration
  • Generate random port number on plugin level when adding new account

1.0.7 #

  • Android: Added ability to handle AirPlaneMode ON/OFF; Fixes related to handle networks switching;
  • iOS: Fixes related to handle networks switching and restore registration when app becomes active;

1.0.6 #

  • iOS: Fixed crash when app restored from background

1.0.5 #

  • iOS: Added ability to re-create transports when app become active after long time in background
  • Fixed wrong argument of method 'updateAccount' in 'platform_interface'

1.0.4 #

  • Added CallKit support to iOS (library automatically manages it)
  • Fixed logs flooding with UDP transport error

1.0.3 #

  • Updated iOS lib (added MinimumOSVersion in plist)

1.0.2 #

  • Fixed handling case when app adds duplicate subscription.
  • Now library raises error 'ESubscrAlreadyExist' and also returns existing subscrId

1.0.1 #

  • Fixed podspec file for ios/macos
  • Added documentation comments
  • Added new ini property 'brandName'
  • Enabled ability to make attended transfer when call on hold

1.0.0 #

  • Initial release.
  • Includes SiprixSDK in binary form for 5 platforms and ready to use models for easy UI development.