Sinch Developer Documentation

We provide building blocks to enable you to build rich customer communication

Get Started

Release Notes for the Sinch Voice iOS SDK

See how the Sinch JavaScript SDK is evolving and find out about new features and bug fixes.

See how our platform is evolving. Keep track of new features, API versions and bug fixes.

2019/08/22 | SINCH SDK IOS 3.12.10

  • Assign non-main GCD queue for PKPushRegistry
  • Ensure SINManagedPush is safe (thread-safe) to invoke from non-main thread (i.e. from any background GCD queue).

2019/03/22 | SINCH SDK IOS 3.12.9

  • Updated Sinch iOS SDK to handle missing audio and video on calls originated by Sinch JS SDK. Issue introduced by the latest Chrome and Firefox browsers update.

2019/02/30 | SINCH SDK IOS 3.12.8

  • Improved audio session management, and push notifications for missed call.
  • Improved sample Apps.

2018/12/03 | SINCH SDK IOS 3.12.7

  • Included custom headers in call cancellation push notifications.

2018/09/05 | SINCH SDK IOS 3.12.6

  • Fixed default orientation of local preview in landscape mode for video chat.
  • Improved CallKit Sample App.

2018/05/23 | SINCH SDK IOS 3.12.5

  • Packaged Sinch Framework as modular framework, made it easier to be integrated into Swift projects.
  • Improved Sample Apps.

2018/03/08 | SINCH SDK IOS 3.12.4

  • Added support for cancellation of a call via VoIP push notifications.
  • Added API to set and retrieve custom headers from Sinch managed push notifications.
  • Added NSNotification for the state change of a call.
  • Added API to set data protection type of Sinch created files.
  • Improved Sample Apps.

2017/12/20 | SINCH SDK IOS 3.12.3

  • Improved sample apps

2017/11/22 | SINCH SDK IOS 3.12.2

  • Improved Wifi/Cellular handover for App calling

2017/10/27 | SINCH SDK IOS 3.12.1

  • Minor bug fixes with regard to CallKit support

2017/10/20 | SINCH SDK IOS 3.12.0

  • Added support for CallKit integration (voice call only).
  • Added support for accessing the raw video frame of local video stream: developers can now for example apply filter on local video stream and send it to remote, or save screenshots of the local video stream.
  • Fixed IPv6 compatibility issue.
  • Minor fixes in Sample Apps.

2017/03/10 | SINCH SDK IOS 3.11.0

  • Video Calling General Availability Release:
    • Added support for pausing and resuming video stream.
    • Added support for accessing the raw video frame of remote video stream.
  • Resolved potential error `duplicate symbol
    • OBJC_CLASS\$_GTMStringEncoding` when using the Sinch SDK together with other third-party libraries that make use of GTMStringEncoding.

2017/01/30 | SINCH SDK IOS 3.10.1

  • Bug fixes

2017/01/24 | SINCH SDK IOS 3.10.0

  • General improvement

2016/11/14 | SINCH SDK IOS 3.9.8

  • IPv6 compatibility.
  • General improvement and minor bug fixes.

2016/09/30 | SINCH SDK IOS 3.9.7

  • Video calling bug fixes.

2016/08/04 | Sinch SDK iOS 3.9.6

  • iOS 10 compatibility.
  • Deprecated -[SINClient setSupportActiveConnectionInBackground:] for iOS 10. See the new section ‘Deprecated features and APIs’ in User Guide for details on this deprecation.

2016/08/04 | Sinch SDK iOS 3.9.5

  • Fix -[SINMessage timestamp] to return server-side timestamp for a id passed to -[SINMessageClientDelegate messageSent:recipientid:]
  • Dropped support for i386 iOS Simulator. Please use x86_64 iOS Simulator.

2016/05/11 | Sinch SDK iOS 3.9.4

2016/03/09 | Sinch SDK iOS 3.9.3

  • Fix linker issues when using the SDK via CocoaPods.

2016/03/04 | Sinch SDK iOS 3.9.2

  • Support for LLVM bitcode.

2016/01/27 | Sinch SDK iOS 3.9.1

  • SIP errors reporting.

2015/09/25 | Sinch SDK iOS 3.7.1

  • Removed armv7s slice in framework/library binary
  • Fixed the macro SINAPSEnvironmentAutomatic to consider both DEBUG and NDEBUG. This should make it work with Xcode projects that are created with the default build setting DEBUG=1 defined for the Debug build configuration.
  • Updated to comply with iOS 9 App Transport Security defaults. See the following link for details: https://developer.apple.com/library/prerelease/ios/technotes/App-Transport-Security-Technote/
  • Sample app updates for Xcode 7 and iOS 9.
  • Introduced Sinch conference calling.

2015/07/08 | Sinch SDK iOS 3.5.2

  • Adaptive bitrate support for OPUS codec in app-to-app calls.

2015/06/01 | Sinch SDK iOS 3.5.1

  • Use UIApplication background task when requesting push device token to increase robustness of aquiring device token when application is launched into background mode (e.g. after device reboot, or after a crash). Note that is only used when using VoIP push notifications (PushKit). (The background task is started upon -[SINManagedPush setDesiredPushTypeAutomatically] or -[SINManagedPush setDesiredPushType:], and it’s ended upon receiving a device token from PKPushRegistry).

2015/04/10 | Sinch SDK iOS 3.5.0


New fully integrated support for remote push notifications:

  • Push notifications sent by the Sinch cloud platform (provided that you upload Apple Push Certificates to the Sinch Dashboard).
  • Support for both regular remote push notifications and VoIP-push notifications (available since iOS 8).
  • New protocol SINManagedPush used as entry point for managing push notifications.
  • New push notification methods on SINClient: -[SINClient enableManagedPushNotifications:] -[SINClient relayRemotePushNotification:] -[SINClient registerPushNotificationDeviceToken:type:apsEnvironment:]
  • New sample apps that shows how to use the new push notification functionality.
  • New NSNotifications available (as a complement to SINClientDelegate): SINClientDidStartNotification SINClientDidFailNotification SINClientWillTerminateNotification
  • relayRemotePushNotification and relayRemotePushNotificationPayload will now correctly start the client when the payload is for an IM.

2015/02/23 | Sinch SDK iOS 3.4.2

  • Fix so that SINClient does not throw exception if -[UIApplication setKeepAliveTimeout:handler] returns NO. SINClient will now instead emit a log message with severity SINLogSeverityCritical.

2015/02/09 | Sinch SDK iOS 3.4.1

  • Support for x86_64 architecture (iOS 64-bit Simulator)

2015/01/29 | Sinch SDK iOS 3.4.0

  • Support for arm64 architecture
  • Support for OPUS codec for app-to-app calls

2014/12/05 | Sinch SDK iOS 3.3.2

  • Added support for -[UILocalNotification category] (iOS 8)

2014/12/03 | Sinch SDK iOS 3.3.1

  • Improved internal call reporting.

2014/11/21 | Sinch SDK iOS 3.3.0

  • Added support for call headers for app-to-app calls. See -[SINCall headers] and -[SINCallClient callUserWithId:headers:]

2014/11/13 | Sinch SDK iOS 3.2.9

  • Fixed a regression in reporting SINCallEndCauseNoAnswer even if the call has been cancelled by the caller. It will now report the expected SINCallEndCauseCanceled in this case.

2014/10/27 | Sinch SDK iOS 3.2.8

  • Improvements to scenario where caller hangs up a call before certain internal REST API requests has completed, but the requests completes later during the graceful termination period.

2014/10/24 | Sinch SDK iOS 3.2.7

  • Fixed issue with user notification permission on iOS 8.
  • Added new method -[SINClient terminateGracefully]

2014/10/17 | Sinch SDK iOS 3.2.6

  • Fixed issue causing long call setup time when using certain codecs.

2014/10/10 | Sinch SDK iOS 3.2.5

  • Additional improvements for scenarios in which the caller cancels a call before the call is answered.

2014/10/09 | Sinch SDK iOS 3.2.4

  • Improvements of disposal of Sinch SDK internals if a consumer of the Sinch SDK would accidently keep reference counts on a SINMessageClient even after a -[SINClient terminate] has been called. IMPORTANT: Do note that is not in any way recommended to keep references to e.g. a SINMessageClient or a SINCallClient after the parent SINClient has been terminated.
  • Fixed issue if caller hung up call quickly and before the callee answer, the callee would not receive the event that the call actually ended.

2014/10/03 | Sinch SDK iOS 3.2.3

  • Improvements in handling unstable network connection when initiating a call.
  • Fixed order of instant messages received as history.

2014/09/19 | Sinch SDK iOS 3.2.1

  • Improvements in handling unstable network connection when initiating a call.

2014/09/04 | Sinch SDK iOS 3.2.0

  • Added persistence mechanism. Instant messages are now persisted internally in the SDK and retried automatically for 12 hours before failing.

2014/08/05 | Sinch SDK iOS 3.1.5

  • Bugfix: Incoming calls will from now on never have state SINCallStateProgressing. Previously, incoming calls could either be in SINCallStateInitiating or SINCallStateProgressing just after -[SINCallClientDelgate client:didreceiveincomingcall:]. Now, the call will initially be in SINCallStateInitiating, until transitioning to SINCallStateEstablished or SINCallStateEnded.
  • Fixed crash when attempting to send DTMF during call setup.
  • Internal improvements for Call headers.

2014/07/11 | Sinch SDK iOS 3.1.3

  • Fixed crash that could occur under bad network conditions
  • Internal improvements: Reducing number of signaling messages sent when initiating a voice call.
  • Improvements for Swift compatibility: use NS_ENUM when declaring enums, e.g. SINCallState, SINCallEndCause etc.

2014/06/12 | Sinch SDK iOS 3.1

  • [SINClient stop] has been deprecated and replaced by -[SINClient terminate]. As part of this change, the SINClient is invalidated after -[SINClient terminate] has been called and cannot be restarted.
  • Minor bug fixes and improvements

2014/05/14 | Sinch SDK iOS 3.0


Public release of the iOS SDK with:

  • Improved sample applications and documentation
  • Refactored calling and messaging API

2014/05/02 | Sinch SDK iOS 3.0 BETA


First public beta version of the Sinch SDK for iOS with support for:

  • App to app calling
  • App to phone calling
  • Instant messaging to single and multiple recipient

Edit on GitHub

Release Notes for the Sinch Voice iOS SDK


See how the Sinch JavaScript SDK is evolving and find out about new features and bug fixes.

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.