NowChat API - iOS

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 2 min. de leitura
  • . NowChat A API é uma API global de nível superior que permite que os usuários instanciem 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 é chamado com um SdkNotConfigured erro. Para inicializar o SDK, chame o. NowSDK.configure() método com a configuração desejada.
    Tabela 1. Parâmetros
    Nome Tipo Descrição
    instanceUrl URL URL do ServiceNow instância que fornece serviços de bate-papo.
    delegado NowChatServiceDelegate Opcional. Objeto delegado que implementa o protocolo NowChatServiceDelegate.
    Tabela 2. Retornos
    Tipo Descrição
    AnyPublisher NowChatService NowServiceError> Se 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: Escapando ((<NowChatService, NowServiceError>) -> Void))

    Cria uma instância de NowChatService com a configuração especificada e, depois de concluído, 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 é chamado com um SdkNotConfigured erro. Para inicializar o SDK, chame o. NowSDK.configure() método com a configuração desejada.
    Tabela 3. Parâmetros
    Nome Tipo Descrição
    instanceUrl URL URL do ServiceNow instância que fornece serviços de bate-papo.
    delegado NowChatServiceDelegate Opcional. Objeto delegado que implementa o protocolo NowChatServiceDelegate.
    conclusão ((Resultado > Now​Chat ​Now​Service​Error>) -> Anular) Manipulador de conclusão que é chamado contendo um inicializado NowChatService instância ou um NowServiceError indicando o motivo da falha na inicialização.
    Tabela 4. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar esta 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()
      }
    }