Interface SinchClientBuilder


  • public interface SinchClientBuilder
    The SinchClientBuilder class builds a new SinchClient instance. To construct a SinchClient, the required configuration parameters are: - Context - Application Key - Environment host - User ID It is optional to specify - Push configuration - Push notification display name
    • Method Detail

      • context

        SinchClientBuilder context​(@NonNull
                                   android.content.Context context)
        Sets the context associated with the SinchClient.
        Parameters:
        context - Must not be null.
        Returns:
        The SinchClientBuilder instance
      • userId

        SinchClientBuilder userId​(@NonNull
                                  java.lang.String userId)
        Sets the user id associated with the SinchClient.
        Parameters:
        userId - Must not be null.
        Returns:
        The SinchClientBuilder instance.
      • applicationKey

        SinchClientBuilder applicationKey​(@NonNull
                                          java.lang.String applicationKey)
        Sets the application key associated with the SinchClient.
        Parameters:
        applicationKey - Must not be null.
        Returns:
        The SinchClientBuilder instance.
      • environmentHost

        SinchClientBuilder environmentHost​(@NonNull
                                           java.lang.String environmentHost)
        Sets the environment host associated with the SinchClient.
        Parameters:
        environmentHost - Must not be null.
        Returns:
        The SinchClientBuilder instance.
      • enableVideoCalls

        SinchClientBuilder enableVideoCalls​(boolean enableVideoCalls)
        Disables initialization of video calls if they are not needed.
        Parameters:
        enableVideoCalls - Optional. Default value is 'true'
        Returns:
        The SinchClientBuilder instance.
      • pushConfiguration

        SinchClientBuilder pushConfiguration​(PushConfiguration pushConfiguration)
        Sets the PushConfiguration to be used to deliver incoming call notifications. Currently Sinch SDK supports FCM and HMS notification providers. To create specific push configuration see FcmPushConfigurationBuilder or HmsPushConfigurationBuilder
        Parameters:
        pushConfiguration - to be used to deliver incoming notifications
        Returns:
        The SinchClientBuilder instance.
      • pushNotificationDisplayName

        SinchClientBuilder pushNotificationDisplayName​(java.lang.String pushNotificationDisplayName)
        Specify a display name to be used when the Sinch creates a push notification on behalf of the local user (e.g. for an outgoing call). For managed push display name is included in a push notification on a best-effort basis. For example, if the target device has very limited push payload size constraints (e.g iOS 7 can only handle 255 byte push notification payload), then the display name may not be included.
        Parameters:
        pushNotificationDisplayName - display name may at most be 255 bytes (UTF-8 encoded) long.
      • build

        SinchClient build()
                   throws java.io.IOException
        Creates the resulting SinchClient.
        Returns:
        A new SinchClient instance.
        Throws:
        java.io.IOException - if SinchClient fails to initialise local database
        java.lang.IllegalArgumentException - if context, userId, applicationKey or environmentHost were not provided or if any of the arguments was invalid.