---
sourceDocument: Xanadu-API-Referenz
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/de-DE/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - de-DE

ft:publication_title :

    - Xanadu-API-Referenz

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# NowChat-API -- iOS

# NowChat-API -- iOS {#ariaid-title1}

* Freigeben Version: Xanadu
* 
* Aktualisiert 1. August 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 1 Minute Lesedauer

Die NowChat -API ist eine globale API der obersten Ebene, mit der Anwender eine NowChat-Serviceinstanz instanziieren können.

## NowChat - makeChatService(instanceUrl: URL, delegierter: NowChatServiceDelegate?) {#ariaid-title2}

Erstellt eine Instanz von NowChatService mit der angegebenen Konfiguration.
Hinweis:  
Sie müssen das SDK initialisieren, bevor Sie diese Funktion aufrufen. Andernfalls wird der Abschlussblock mit dem Fehler „ `sdkNotConfigured` " aufgerufen. Um das SDK zu initialisieren, rufen Sie die Methode `NowSDK.configure()` mit der gewünschten Konfiguration auf.
{#NChat-makeChatService-pub_S_O_O__table_pft_qzv_kqb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| instanceUrl | URL | URL der Instanz ServiceNow, die Chatservices bereitstellt. |
| Delegierter | NowChatServiceDelegierter | Optional. Delegiertes Objekt, das das NowChatServiceDelegate-Protokoll implementiert. |
[Tabelle : 1. Parameter]

{#NChat-makeChatService-pub_S_O_O__table_pft_qzv_kqb} {#NChat-makeChatService-pub_S_O_O__table_qft_qzv_kqb__entry__2}

| Typ | Beschreibung |
|-|-|
| Beliebiger Herausgeber\<[NowChatService](https://servicenow-prod.fluidtopics.net/~D6fMJwXgMUVo11kFExEvQ#NowChatServiceiOSAPI "Die NowChatService -Klasse stellt Virtual- und Service Desk-Mitarbeiter -Chat-Fähigkeiten bereit."), NowServiceError\> | Bei Erfolg wird ein initialisiertes NowChatService-Objekt zurückgegeben. Bei einem Fehler wird ein NowServiceError-Objekt zurückgegeben. |
[Tabelle : 2. Ergebnisse]

{#NChat-makeChatService-pub_S_O_O__table_qft_qzv_kqb}  
Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.

    ....
    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, Delegierter: NowChatServiceDelegate?, Abschluss: @escaping ((Ergebnis\<NowChatService, NowServiceError\> ) -\> ungültig)) {#ariaid-title3}

Erstellt eine Instanz von `NowChatService` mit der angegebenen Konfiguration und ruft nach Abschluss den angegebenen Abschluss-Handler auf.
Hinweis:  
Sie müssen das SDK initialisieren, bevor Sie diese Funktion aufrufen. Andernfalls wird der Abschlussblock mit dem Fehler „ `sdkNotConfigured` " aufgerufen. Um das SDK zu initialisieren, rufen Sie die Methode `NowSDK.configure()` mit der gewünschten Konfiguration auf.
{#NChat-makeChatService_S_O_O__table_nv2_5xv_kqb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| instanceUrl | URL | URL der Instanz ServiceNow, die Chatservices bereitstellt. |
| Delegierter | NowChatServiceDelegierter | Optional. Delegiertes Objekt, das das NowChatServiceDelegate-Protokoll implementiert. |
| Abschluss | @escaping ((Ergebnis\<[Now​Chat​Service](https://servicenow-prod.fluidtopics.net/~D6fMJwXgMUVo11kFExEvQ#NowChatServiceiOSAPI "Die NowChatService -Klasse stellt Virtual- und Service Desk-Mitarbeiter -Chat-Fähigkeiten bereit."), Now​Service​Error\>) -\> Ungültig) | Abschluss-Handler, der aufgerufen wird, der entweder eine initialisierte `NowChatService-` Instanz oder einen `NowServiceError enthält`, der angibt, warum die Initialisierung fehlgeschlagen ist. |
[Tabelle : 3. Parameter]

{#NChat-makeChatService_S_O_O__table_nv2_5xv_kqb} {#NChat-makeChatService_S_O_O__table_ov2_5xv_kqb__entry__2}

| Typ | Beschreibung |
|-|-|
| Keine |   |
[Tabelle : 4. Ergebnisse]

{#NChat-makeChatService_S_O_O__table_ov2_5xv_kqb}  
Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.

    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()
      }
    }


