Protocols

The following protocols are available globally.

  • The delegate for the UnbluCallModule

    See more

    Declaration

    Swift

    public protocol UnbluCallModuleDelegate : AnyObject
  • Describes the functionality available within the UnbluCallModule

    See more

    Declaration

    Swift

    public protocol UnbluCallModuleApi : UnbluModule
  • A protocol describing functionality of the UnbluClient.

    See more

    Declaration

    Swift

    public protocol UnbluClient : AnyObject

Convenience methods

  • A protocol describing functionality of the UnbluVisitorClient. This inherits functionality from UnbluClient.

    See more

    Declaration

    Swift

    public protocol UnbluVisitorClient : UnbluClient
  • A protocol describing functionality of the UnbluAgentClient. This inherits functionality from UnbluClient.

    See more

    Declaration

    Swift

    public protocol UnbluAgentClient : UnbluClient
  • The delegate for the UnbluAgentClient

    Declaration

    Swift

    public protocol UnbluAgentClientDelegate : UnbluClientDelegate
  • The delegate for Unblu. Callbacks are always called on the Main thread.

    See more

    Declaration

    Swift

    public protocol UnbluClientDelegate : AnyObject
  • The delegate for the UnbluVisitorClient

    See more

    Declaration

    Swift

    public protocol UnbluVisitorClientDelegate : UnbluClientDelegate
  • Delegate which handles authentication challanges of the Unblu webView.

    See more

    Declaration

    Swift

    public protocol AuthenticationChallengeDelegate
  • An object representing an Unblu conversation

    See more

    Declaration

    Swift

    public protocol UnbluConversation : AnyObject
  • A protocol that defines an object that can intercept certain conversation related events.

    See more

    Declaration

    Swift

    public protocol UnbluConversationInterceptor
  • A protocol used when evaluating external links within Unblu

    See more

    Declaration

    Swift

    public protocol UnbluExternalLinkHandler : AnyObject
  • A module which can be used in Unblu. This can be added via the UnbluClientConfiguration.register(module) function.

    See more

    Declaration

    Swift

    public protocol UnbluModule : AnyObject
  • Interface to use notifications with unblu. As Firebase Cloud Messaging (FCM) SDK is build as a static library, we can not include it here. Most functions of this api should be called for specific notification callbacks typically fired in the AppDelegate.

    Unblu will display/handle notifications as shown in the following table. Api helper to check mainly if notifications are from unblu or not

    Unblu will display/handle notifications as shown in the following table.

    | App state | New Message | Incoming Call |


    | background | show notification | show notification |


    | foreground unblu UI closed | show notification | Trigger UnbluUiEventApi.UiVisibilityRequest |


    | foreground unblu UI open | Does nothing | Does nothing |


    Whenever a notification is clicked, the event UnbluUiEventApi.UiVisibilityRequest is triggered.

    See more

    Declaration

    Swift

    public protocol UnbluNotificationApiProtocol : AnyObject
  • Defines an object that can intercept and interact with Unblu related notifications

    See more

    Declaration

    Swift

    public protocol UnbluNotificationInterceptor
  • This protocol is used to notify when a request has been made to download a file.

    See more

    Declaration

    Swift

    public protocol UnbluFileDownloadHandler
  • protocol which can be implemented to store the preferences of Unblu at a custom location.

    This is useful if encryption should used. Otherwise a default implementation can be used by creating a UserDefaultsPreferencesStorage.

    IMPORTANT: if you change the custom storage, please be aware that you are somehow capable of migrating the old data to the new storage.

    See more

    Declaration

    Swift

    public protocol UnbluPreferencesStorage
  • Defines a creator to create a custom loading UI when the unblu UI is displayed. Using it at UnbluCoreApi#customLoadingViewCreator.

    See more

    Declaration

    Swift

    public protocol UnbluCustomLoadingViewCreator
  • A protocol that defines additional behaviour available on the UnbluView, which itself will always be a UIView.

    See more

    Declaration

    Swift

    public protocol UnbluView : UIView
  • The delegate for notification events received from Firebase.

    See more

    Declaration

    Swift

    @objc
    public protocol UnbluFirebaseNotificationCoordinatorDelegate
  • This is the api for the mobile co-browsing module. This is only usable if the corresponding module got registered in the used configuration.

    See more

    Declaration

    Swift

    public protocol UnbluMobileCoBrowsingModuleApi : UnbluModule
  • The delegate for the UnbluMobileCoBrowsingModule

    See more

    Declaration

    Swift

    public protocol UnbluMobileCoBrowsingModuleDelegate : AnyObject