Protocole NowChatServiceDelegate : iOS
Le protocole NowChatServiceDelegate fournit des rappels pour la notification d’actions au sein de NowChatService , telles qu’une demande d’ouverture d’une URL ou le rejet du contrôleur de vue de messagerie instantanée.
NowChatServiceDelegate : chatService(_chatService : NowChatService, didRequestOpenUrlurl : URL)
Rappel qui notifie l’application hôte que le service de messagerie instantanée spécifié a reçu une demande d’ouverture d’URL. Ce rappel est généralement déclenché par un utilisateur qui appuie sur un lien dans l’interface utilisateur de la messagerie instantanée. Il est de la responsabilité de l’application hôte de gérer l’ouverture de l’URL ou d’ignorer la demande.
| Nom | Type | Description |
|---|---|---|
| service instantané | NowChatService | Objet NowChatService à l’origine de la demande. |
| didRequestOpenUrl url | URL | URL que le service a demandé à ouvrir. |
| Type | Description |
|---|---|
| Aucun |
L’exemple de code suivant montre comment appeler cette fonction.
func chatService(_ chatService: NowChatService, didRequestOpenUrl url: URL) {
var updatedViewState = makeViewState()
updatedViewState.urlToOpen = url
viewState = updatedViewState
}
NowChatServiceDelegate : chatService(_ chatService : NowChatService, systemThemeDidChange, traitCollection : UITraitCollection)
Rappel qui notifie l’application hôte que le thème de la messagerie instantanée système a changé.
| Nom | Type | Description |
|---|---|---|
| service instantané | NowChatService | Objet NowChatService à l’origine de la demande. |
| traitCollection | UITraitCollection | UITraitCollection qui contient le nouveau thème. |
| Type | Description |
|---|---|
| Aucun |
L’exemple de code suivant montre comment remplacer la fonction de délégué systemThemeDidChange() pour appeler la fonction updateTheme() afin d’appliquer les changements de thème lorsque le thème système change.
func chatService(_ chatService: any SnowChat.ChatServiceProvider, systemThemeDidChange traitCollection: UITraitCollection) {
/// The corresponding updateTheme() method can be called here to change the UI theme based on System Theme
chatService.updateTheme(theme: traitCollection.userInterfaceStyle == .dark ? DarkNowChatTheme() : LightNowChatTheme())
print(“System Theme Did Change)
}
NowChatServiceDelegate : chatServiceViewControllerWasDismissed(_chatService : NowChatService)
Rappel qui notifie l’application hôte que le contrôleur de vue de messagerie instantanée a été rejeté.
| Nom | Type | Description |
|---|---|---|
| service instantané | NowChatService | Objet NowChatService dont le contrôleur de vue a été rejeté. |
| Type | Description |
|---|---|
| Aucun |
L’exemple de code suivant montre comment appeler cette fonction.
func chatServiceViewControllerWasDismissed(_ chatService: NowChatService) {
resetChat()
}
NowChatServiceDelegate : didEndSessionWithId(sessionId : chaîne)
Appelé lorsque l’écran de messagerie instantanée est fermé et que la session de messagerie instantanée se termine.
| Nom | Type | Description |
|---|---|---|
| sessionId | Chaîne | Sys_id de la session qui s’est terminée. Table : Session de conversation [sys_cs_session] |
| Type | Description |
|---|---|
| Aucun |
L’exemple de code suivant montre où placer votre code pour remplacer la fonctionnalité par défaut.
func chatService(_ chatService: NowChatService, didEndSessionWithId sessionId: String) {
print("Chat Session ended with ID: \(sessionId)")
}