Protocols
The following protocols are available globally.
-
A protocol describing functionality of the
See moreUnbluClient
.Declaration
Swift
protocol UnbluClient : AnyObject
-
A protocol describing functionality of the
See moreUnbluVisitorClient
. This inherits functionality fromUnbluClient
.Declaration
Swift
protocol UnbluVisitorClient : UnbluClient
-
A protocol describing functionality of the
See moreUnbluAgentClient
. This inherits functionality fromUnbluClient
.Declaration
Swift
protocol UnbluAgentClient : UnbluClient
-
UnbluAgentClientDelegate
From UnbluCoreSDKThe delegate for the
UnbluAgentClient
Declaration
Swift
protocol UnbluAgentClientDelegate : UnbluClientDelegate
-
The delegate for Unblu. Callbacks are always called on the Main thread.
See moreDeclaration
Swift
protocol UnbluClientDelegate : AnyObject
-
A protocol that defines the interface for an Unblu two-factor authentication (2FA) web view.
See moreDeclaration
Swift
protocol UnbluTwoFactorAuthWebViewProtocol
-
The delegate for the
See moreUnbluVisitorClient
Declaration
Swift
protocol UnbluVisitorClientDelegate : UnbluClientDelegate
-
Delegate which handles authentication challanges of the Unblu webView.
See moreDeclaration
Swift
protocol AuthenticationChallengeDelegate
-
The delegate for the UnbluCallModule
See moreDeclaration
Swift
protocol UnbluCallModuleDelegate : AnyObject
-
Describes the functionality available within the
See moreUnbluCallModule
Declaration
Swift
protocol UnbluCallModuleApi : UnbluModule
-
CustomActionInvocationData
From UnbluCoreSDKBase class for custom action invocations, defines required fields
Declaration
Swift
protocol CustomActionInvocationData : Decodable, Encodable
-
An object representing an Unblu conversation
See moreDeclaration
Swift
protocol UnbluConversation : AnyObject
-
A protocol that defines an object that can intercept certain conversation related events.
See moreDeclaration
Swift
protocol UnbluConversationInterceptor
-
A protocol that defines an object that can intercept certain conversation related events. This protocol should be used when it is necessary to obtain additional information about the recipient.
See moreDeclaration
Swift
protocol UnbluConversationInterceptorWithRecipient : UnbluConversationInterceptor
-
This interface is used by the WebRtc provider to update the call module.
See moreDeclaration
Swift
protocol CallModuleDelegate
-
CallModuleLocalDelegate
From UnbluCoreSDKThis interface is used by the CoreSDK classes to update the call module.
Declaration
Swift
protocol CallModuleLocalDelegate : CallModuleDelegate
-
This is a base interface to a native call provider that allows you to use them dynamically.
See moreDeclaration
Swift
protocol BaseWebRtcProvider
-
OpenTokWebRtcProvider
From UnbluCoreSDKSpecific functions of the OpenTok implementation
Declaration
Swift
protocol OpenTokWebRtcProvider : BaseWebRtcProvider
-
TestWebRtcProvider
From UnbluCoreSDKSpecific functions of the OpenTok implementation
Declaration
Swift
protocol TestWebRtcProvider : BaseWebRtcProvider
-
Specific functions of the LiveKit implementation
See moreDeclaration
Swift
protocol LiveKitWebRtcProvider : BaseWebRtcProvider
-
InternalUnbluModule
From UnbluCoreSDKBase module for all modules to get some easier function calls
Declaration
Swift
protocol InternalUnbluModule : AnyObject
-
InternalUnbluConversationInteractableModule
From UnbluCoreSDKA protocol that gives Unblu modules access to Conversation specific actions
Declaration
Swift
protocol InternalUnbluConversationInteractableModule : AnyObject
-
Interface to iOS CallKit bridge This interface separates UnbluCallKitModule from UnbluCoreSDK, providing late binding
See moreDeclaration
Swift
protocol UnbluCallKitApi
-
A protocol used when evaluating external links within Unblu
See moreDeclaration
Swift
protocol UnbluExternalLinkHandler : AnyObject
-
UnbluModule
From UnbluCoreSDKA module which can be used in Unblu. This can be added via the
UnbluClientConfiguration.register(module)
function.Declaration
Swift
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
See moreUnbluUiEventApi.UiVisibilityRequest
is triggered.Declaration
Swift
protocol UnbluNotificationApiProtocol : AnyObject
-
Defines an object that can intercept and interact with Unblu related notifications
See moreDeclaration
Swift
protocol UnbluNotificationInterceptor
-
This protocol is used to notify when a request has been made to download a file.
See moreDeclaration
Swift
protocol UnbluFileDownloadHandler
-
This protocol is used to notify when a request has been made to download a file with the authorization header in the http request
See moreDeclaration
Swift
protocol UnbluFileDownloadHandlerWithAuthorizationToken : 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 moreDeclaration
Swift
protocol UnbluPreferencesStorage
-
Defines a creator to create a custom loading UI when the unblu UI is displayed. Using it at UnbluCoreApi#customLoadingViewCreator.
See moreDeclaration
Swift
protocol UnbluCustomLoadingViewCreator
-
A protocol that defines additional behaviour available on the
See moreUnbluView
, which itself will always be aUIView
.Declaration
Swift
protocol UnbluView : UIView
-
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 moreDeclaration
Swift
protocol UnbluMobileCoBrowsingModuleApi : UnbluModule
-
The delegate for the UnbluMobileCoBrowsingModule
See moreDeclaration
Swift
protocol UnbluMobileCoBrowsingModuleDelegate : AnyObject
-
The delegate for notification events received from Firebase.
See moreDeclaration
Swift
@objc protocol UnbluFirebaseNotificationCoordinatorDelegate
-
The API for the document co-browsing module. Only usable if the corresponding module was registered in the configuration used.
See moreDeclaration
Swift
protocol UnbluDocumentCoBrowsingModuleApi : UnbluModule
-
The delegate for the Unblu document co-browsing module
See moreDeclaration
Swift
protocol UnbluDocumentCoBrowsingModuleDelegate : AnyObject