API NowChat : iOS
L’API NowChat est une API globale de haut niveau qui permet aux utilisateurs d’instancier une instance de service NowChat.
NowChat : makeChatService(instanceUrl : URL, delegate : NowChatServiceDelegate ?)
Crée une instance de NowChatService avec la configuration spécifiée.
Remarque :
Vous devez initialiser le SDK avant d’appeler cette fonction ou le bloc de complétion est appelé avec une erreur
sdkNotConfigured . Pour initialiser le SDK, appelez la méthode NowSDK.configure() avec la configuration souhaitée.| Nom | Type | Description |
|---|---|---|
| instanceUrl | URL | URL de l’instance fournissant les ServiceNow services de messagerie instantanée. |
| délégué | NowChatServiceDelegate | Facultatif. Objet Delegate qui implémente le protocole NowChatServiceDelegate. |
| Type | Description |
|---|---|
| AnyPublisher<NowChatService, NowServiceError> | En cas de réussite, renvoie un objet NowChatService initialisé. En cas d’échec, renvoie un objet NowServiceError. |
L’exemple de code suivant montre comment appeler cette fonction.
….
guard
let jwtUrl = URL(string: "http://xx.xx.xx.xxx:8080"),
let instanceUrl = URL(string: "https://instance.service-now.com") else {
return
}
// AuthorizationProvider – struct conforming to NowSDKAuthorizationProviding protocol
let authorizationProvider = AuthorizationProvider(userEmail: "sdk@servicenow.com", jwtProviderUrl: jwtUrl, clientId: "deb8756b452d201039231ca568f26511")
// PermissionProvider – class conforming to DevicePermissionDelegate protocol
let permissionProvider = PermissionProvider()
let config = NowSDKConfiguration(authorizationProvider: authorizationProvider, permissionDelegate: permissionProvider, logLevel: .debug)
do {
try NowSDK.configure(with: config)
let chat = setup(with: instanceUrl)
} catch {
// Return ConfigurationError.sdkError(error)
}
…..
func initializeChatService(with instanceURL: URL) -> AnyPublisher<NowService, ConfigurationError> {
NowChat.makeChatService(instanceUrl: instanceURL, delegate: nil)
.mapError { .sdkError($0) }
.map { $0 as NowService }
.eraseToAnyPublisher()
}
NowChat : makeChatService(instanceUrl : URL, delegate : NowChatServiceDelegate ?, complétion : @escaping ((Result<NowChatService, NowServiceError>) -> Void))
Crée une instance de NowChatService avec la configuration spécifiée et, une fois terminée, appelle le gestionnaire de complétion spécifiée.
Remarque :
Vous devez initialiser le SDK avant d’appeler cette fonction ou le bloc de complétion est appelé avec une erreur
sdkNotConfigured . Pour initialiser le SDK, appelez la méthode NowSDK.configure() avec la configuration souhaitée.| Nom | Type | Description |
|---|---|---|
| instanceUrl | URL | URL de l’instance fournissant les ServiceNow services de messagerie instantanée. |
| délégué | NowChatServiceDelegate | Facultatif. Objet Delegate qui implémente le protocole NowChatServiceDelegate. |
| achèvement | @escaping (Résultat<NowChatService, NowServiceError>) > Annulé) | Gestionnaire de complétion appelé contenant une instance NowChatService initialisée ou une NowServiceError indiquant la raison de l’échec de l’initialisation. |
| Type | Description |
|---|---|
| Aucun |
L’exemple de code suivant montre comment appeler cette fonction.
func initializeChatService() {
NowChat.makeChatService(instanceUrl: instanceUrl, delegate: self) { [weak self] result in
guard let self = self else { return }
switch result {
case .success(let service):
self.chatService = service
case .failure(let error):
debugPrint("Creating the chat service failed with error: \(error)")
}
self.viewState = self.makeViewState()
}
}