API do NowChat - iOS
A API do NowChat é uma API global de nível superior que permite aos usuários instanciar uma instância de serviço do NowChat.
NowChat - makeChatService(instanceUrl: URL, delegado: NowChatServiceDelegate?)
Cria uma instância do NowChatService com a configuração especificada.
Nota:
Você deve inicializar o SDK antes de chamar esta função ou o bloco de conclusão será chamado com um erro
sdkNotConfigured. Para inicializar o SDK, chame o método NowSDK.configure() com a configuração desejada.| Nome | Tipo | Descrição |
|---|---|---|
| instanceUrl | URL | URL da instância ServiceNow que fornece serviços de bate-papo. |
| delegado | NowChatServiceDelegate | Opcional. Objeto delegado que implementa o protocolo NowChatServiceDelegate. |
| Tipo | Descrição |
|---|---|
| AnyPublisher<NowChatService, NowServiceError> | Se for bem-sucedido, retornará um objeto NowChatService inicializado. Se falhar, retornará um objeto NowServiceError. |
O exemplo de código a seguir mostra como chamar esta função.
….
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, delegado: NowChatServiceDelegate?, conclusão: @escaping ((Resultado<NowChatService, NowServiceError> ) -> Vazio))
Cria uma instância de NowChatService com a configuração especificada e, uma vez concluída, chama o manipulador de conclusão especificado.
Nota:
Você deve inicializar o SDK antes de chamar esta função ou o bloco de conclusão será chamado com um erro
sdkNotConfigured. Para inicializar o SDK, chame o método NowSDK.configure() com a configuração desejada.| Nome | Tipo | Descrição |
|---|---|---|
| instanceUrl | URL | URL da instância ServiceNow que fornece serviços de bate-papo. |
| delegado | NowChatServiceDelegate | Opcional. Objeto delegado que implementa o protocolo NowChatServiceDelegate. |
| conclusão | @escaping ((Resultado<NowChatService, NowServiceError>) -> Void) | Manipulador de conclusão que é chamado contendo uma instância NowChatService inicializada ou um NowServiceError indicando o motivo da falha na inicialização. |
| Tipo | Descrição |
|---|---|
| Nenhum(a) |
O exemplo de código a seguir mostra como chamar essa função.
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()
}
}