# Package-level declarations

## Types

AudioController
Link copied to clipboard
interface AudioController

Controls different audio settings. This object is only valid while the connected SinchClient is started. As soon as the SinchClient is stopped, it is invalidated and must not be used.

ClientRegistration
Link copied to clipboard
interface ClientRegistration

Callback object to be used to proceed in user registration flow when registration credentials for the user in question have been obtained.

ErrorType
Link copied to clipboard
enum ErrorType : Enum<ErrorType>
FcmPushConfigurationBuilder
Link copied to clipboard
interface FcmPushConfigurationBuilder

FcmPushConfigurationBuilder class is a builder used to provide configuration for Firebase Push Notifications using Firebase Cloud Messaging.

HmsPushConfigurationBuilder
Link copied to clipboard
interface HmsPushConfigurationBuilder

HmsPushConfigurationBuilder class is a builder used to provide configuration for Huawei Push Notifications using HMS (Huawei Mobile Services). Use PushConfiguration.hmsPushConfigurationBuilder to create a builder instance. This builder should be used to specify:

MissingPermissionException
Link copied to clipboard
class MissingPermissionException(val requiredPermission: String) : RuntimeException

Thrown in case the Sinch SDK is missing a permission required to function properly.

PushConfiguration
Link copied to clipboard
interface PushConfiguration

PushConfiguration specifies configuration needed by the Sinch SDK to initialize managed push functionality allowing clients to receive notifications about incoming calls.

PushTokenRegistrationCallback
Link copied to clipboard
interface PushTokenRegistrationCallback

Callback for push token registration events.

PushTokenUnregistrationCallback
Link copied to clipboard
interface PushTokenUnregistrationCallback

Callback for push token unregistration events.

Sinch
Link copied to clipboard
object Sinch

The entry point for accessing Sinch SDK information.

SinchClient
Link copied to clipboard
interface SinchClient

The SinchClient is the Sinch SDK entry point.

SinchClientBuilder
Link copied to clipboard
interface SinchClientBuilder

The SinchClientBuilder class builds a new SinchClient instance. To construct a SinchClient, the required configuration parameters are:

SinchClientListener
Link copied to clipboard
interface SinchClientListener : UserRegistrationCallback, PushTokenRegistrationCallback, PushTokenUnregistrationCallback, SinchLogCallback

A SinchClientListener handles client state changes and the optional log method allows the listener to log messages from the underlying calling functionality.

SinchError
Link copied to clipboard
interface SinchError
SinchLogCallback
Link copied to clipboard
interface SinchLogCallback
SinchPush
Link copied to clipboard
object SinchPush

SinchPush object provides methods for accessing Push Notifications functionalities.

UserController
Link copied to clipboard
interface UserController

A `UserController` manages registration of user and respective FCM and MHS push data for Sinch Managed Push functionality. Use `UserController` as a lightweight tool that allows to register user for incoming calls via Managed Push functionality without a necessity to start SinchClient. When PushTokenRegistrationCallback.onPushTokenRegistered is called, you can be sure, that incoming calls will be received via FCM or HMS push notifications and you are free to close or terminate application if desired.

UserControllerBuilder
Link copied to clipboard
interface UserControllerBuilder

The UserControllerBuilder class builds a new UserController instance. To construct a UserControllerBuilder, the required configuration parameters are:

UserRegistrationCallback
Link copied to clipboard
interface UserRegistrationCallback

Callback for User Registration flow events.