Video Call using Sinch

To use video calls in your Chat SDK app, the first think you need to do is purchase the video call module:

Once that is done, you will receive an archive containing the Sinch Video Call source code.

Unzip this archive and put it in a known location. Then update your Podfile to add it as a development pod:

pod "ChatSDKSinch", :path => "path/to/ChatSDKSinch"

Then run:

pod install

Now you need to activate your module. In the App Delegate, add the following:

For development:

let modules = [
    ...
    SinchModule.shared().setup(key: "sinch key", secret: "sinch secret"),
]

In production:

SinchModule.shared().setup(key: "Sinch key", jwtProvider: { userId in
    return "generate a JWT on your server"
})

To get your Sinch key and secret, you will need to make an account on the Sinch website:

Click: Voice and Video -> Apps -> Create New App

Sinch allows you either to embed your secret inside the app (this is insecure so only appropriate for development). Or to authenticate with a JWT.

To make the JWT, use this guide:

Sinch for iOS uses VoIP push notifications. For that to work, you need to upload and Apple Push key to the Sinch dashboard:

Once this is done, you can start a call from either the chat screen (1-to-1 only) or the user's profile page.

Last updated