NowCoreService-Klasse: IOS

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 6 Minuten Lesedauer
  • Die NowCoreService Klasse stellt grundlegende Services für die verschiedenen SDK-Funktionsservices bereit. Diese Klasse darf nur von NowSDK instanziiert werden.

    Funktionsservices wie Now Analytics und NowChat können über die Eigenschaft NowSDK.Core auf eine freigegebene Core-Instanz zugreifen.

    NowCoreService – AccessTokenDidFail (für Service: NowService)

    Benachrichtigt den SDK-Kern, dass das Zugriffstoken verwendet wird, um die API-Anforderungen an den zu autorisieren ServiceNow Instanz für den angegebenen Service ist nicht mehr gültig.

    Der SDK-Kern gibt ein gültiges Zugriffstoken zurück, wenn er eines generieren kann, oder gibt einen Fehler zurück.

    Hinweis:
    Diese Methode ist veraltet. Sie sollten stattdessen die asynchrone/wartet-Implementierung der Methode verwenden.
    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Für Service Now-Service Funktionsservice, der das Zugriffstoken anfordert.
    Tabelle : 2. Rückgaben
    Typ Beschreibung
    AnyPublisher<NowSDK.AccessToken, AccessTokenProviderError> Erfolg: Gültiges Zugriffstoken.

    Fehler: AccessTokenProviderError

    Mögliche Werte:
    • UserSessionError
    • AccessTokenRetrievalFehlgeschlagen
    • HostReturnedNoTokens: Gibt einen Gastanwender an

    NowSDK.core()?.accessTokenDidFail(for: someService)
      .mapError { YourCustomError.accessTokenFailed($0) }
    
    .flatMap(self.handleFailedAccessToken())
      .eraseToAnyPublisher()

    NowCoreService: Asynchrone Auslöse für AccessTokenDidFail (für Service: NowService)

    Benachrichtigt den SDK-Kern, dass das Zugriffstoken verwendet wird, um die API-Anforderungen an den zu autorisieren ServiceNow Instanz für den angegebenen Service ist nicht mehr gültig.

    Der SDK-Kern gibt ein gültiges Zugriffstoken zurück, wenn er eines generieren kann, oder gibt einen Fehler zurück.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    Für Service Now-Service Funktionsservice, der das Zugriffstoken anfordert.
    Tabelle : 4. Rückgaben
    Typ Beschreibung
    NowSDK.AccessToken Wird zurückgegeben, wenn die Methode erfolgreich ist. Gültiges Zugriffstoken.
    AccessTokenProviderError Wird ausgelöst, wenn die Methode fehlschlägt. Gibt einen Fehler beim Abrufen eines Zugriffstoken an.
    Mögliche Werte:
    • UserSessionError
    • AccessTokenRetrievalFehlgeschlagen
    • HostReturnedNoTokens: Gibt einen Gastanwender an

    Die folgenden Codebeispiele zeigen, wie diese Methode aufgerufen wird.

    do {
        let accessToken = try await NowSDK.core()?.accessTokenDidFail(for: someService)
    } catch {
        self.handleFailedAccessToken(error)
    }

    NowCoreService – canRequestPermission(_-Berechtigung: DevicePermission)

    Fragt die Hostanwendung ab, ob der Service die Geräteberechtigung anfordern darf.

    Diese Funktion fordert die Berechtigung nicht an, nur, ob die Geräteberechtigung abgefragt werden darf. Funktionsservices sollten diese Funktion aufrufen, um zu bestimmen, ob sie eine gewünschte Geräteberechtigung anfordern dürfen.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    Berechtigung Geräteberechtigung Gerät, für das die Anforderung gestellt wird.
    Mögliche Werte (Groß-/Kleinschreibung beachten):
    • Kamera
    • location
    • Mikrofon
    • PhotoLibrary
    • Spracherkennung
    Tabelle : 6. Rückgaben
    Typ Beschreibung
    Boolean Kennzeichnung, die angibt, ob die Hostanwendung dem SDK erlaubt, die angegebene Geräteberechtigung anzufordern.
    Mögliche Werte:
    • Wahr: Geräteberechtigung kann angefordert werden.
    • Falsch: Geräteberechtigung kann nicht angefordert werden.

    extension AppDelegate: DevicePermissionDelegate {
      func canRequestPermission(_ permission: DevicePermission) -> Bool {
        return true
      }
    }

    NowCoreService: IsGuestUser (für Service: NowService) asynchron

    Überprüft, ob der aktuelle Anwender ein Gastanwender ist.

    Tabelle : 7. Parameter
    Name Typ Beschreibung
    Für Service Now-Service Funktionsservice, für den die Gastanwenderprüfung durchgeführt werden soll.
    Tabelle : 8. Rückgaben
    Typ Beschreibung
    Boolean Kennzeichnung, die angibt, ob der aktuelle Anwender ein Gastanwender ist.
    Mögliche Werte:
    • Wahr: Der aktuelle Anwender des angegebenen Service ist ein Gastanwender.
    • Falsch: Der aktuelle Anwender des angegebenen Service ist kein Gastanwender.

    Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird.

    let isGuestUser = await NowSDK.core()?.isGuestUser(for: someService)

    NowCoreService – refresh AllSettings()

    Aktualisiert alle SDK-Einstellungen für alle Services, indem sie von den aktiven Servern erneut abgerufen werden.

    Um aktualisierte SDK-Einstellungswerte zu erhalten, wenn sie aktualisiert werden, abonnieren Sie den von bereitgestellten Herausgeber NowCoreService – settingsPublisher(für Service: NowService) Funktion.

    Tabelle : 9. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 10. Ergebnisse
    Typ Beschreibung
    Keine

    NowSDK.core()?.refreshAllSettings()

    NowCoreService – Aktualisierungseinstellungen (für Service: NowService)

    Aktualisiert die SDK-Einstellungen für den angegebenen Service, indem sie erneut vom Server abgerufen werden.

    Hinweis:
    Diese Methode ist veraltet. Sie sollten stattdessen die asynchrone/wartet-Implementierung der Methode verwenden.
    Tabelle : 11. Parameter
    Name Typ Beschreibung
    Für Service Now-Service Funktionsservice, z. B. NowChat oder NowAnalytics, der die Aktualisierung der Einstellungen anfordert.
    Tabelle : 12. Rückgaben
    Typ Beschreibung
    AnyPublisher<Settings, SettingsError> Erfolg: Wörterbuch der aktualisierten SDK-Einstellungen. Funktionsservices müssen die zurückgegebenen Daten auf die Einstellungen überprüfen, die für ihre spezifischen Funktionen relevant sind.

    Fehler: Einstellungsfehler: Typ und Beschreibung des aufgetretenen Fehlers.

    Mögliche Werte:
    • FetchError
    • Abrufen fehlgeschlagen
    • Ungültige JSON
    • Ungültiger Anbieter
    • Nicht autorisiert
    • SdkNichtlizenziert
    • SettingUngefunden
    • unbekannt

    var subscriptions = Set<AnyCancellable>()
    NowSDK.core?.refreshSettings(for: someService)
      .sink(receiveCompletion: { completion in
        if case .failure(let error) = completion {
          print("Refresh failed with error:\ (error)")
        }
      }, receiveValue: { settings in
        print("Received refreshed settings:\ (settings)")
      })
      .store(in: &subscriptions)

    NowCoreService: Asynchrone Auslöse für Aktualisierungseinstellungen (für Service: NowService)

    Aktualisiert die SDK-Einstellungen für den angegebenen Service, indem sie erneut vom Server abgerufen werden.

    Tabelle : 13. Parameter
    Name Typ Beschreibung
    Für Service Now-Service Funktionsservice, z. B. NowChat oder NowAnalytics, der die Aktualisierung der Einstellungen anfordert.
    Tabelle : 14. Rückgaben
    Typ Beschreibung
    Einstellungen Wird zurückgegeben, wenn die Methode erfolgreich ist. Wörterbuch der aktualisierten SDK-Einstellungen. Funktionsservices müssen die zurückgegebenen Daten auf die Einstellungen überprüfen, die für ihre spezifischen Funktionen relevant sind.
    Einstellungsfehler Wird ausgelöst, wenn die Methode fehlschlägt.
    Mögliche Werte:
    • FetchError
    • Abrufen fehlgeschlagen
    • Ungültige JSON
    • Ungültiger Anbieter
    • Nicht autorisiert
    • SdkNichtlizenziert
    • SettingUngefunden
    • unbekannt

    Die folgenden Codebeispiele zeigen, wie diese Methode aufgerufen wird.

    do {
        let settings = try await NowSDK.core()?.refreshSettings(for: someService)
        print("Received refreshed settings: \(settings)")
    } catch {
        print("Refresh failed with Settings error: \(error)")
    }

    NowCoreService – requestAccessToken (für Service: NowService)

    Ruft ein Zugriffstoken für den angegebenen Service ab.

    Hinweis:
    Diese Methode ist veraltet. Sie sollten stattdessen die asynchrone/wartet-Implementierung der Methode verwenden.
    Tabelle : 15. Parameter
    Name Typ Beschreibung
    Für Service Now-Service Funktionsservice, der das Zugriffstoken anfordert.
    Tabelle : 16. Rückgaben
    Typ Beschreibung
    AnyPublisher<NowSDK.AccessToken, AccessTokenProviderError> Erfolg: NowSDK.AccessToken: Zugriffstoken, das zum Autorisieren von API-Anforderungen an einen verwendet werden soll ServiceNow Instanz.

    Fehler: AccessTokenProviderError: Typ und Beschreibung des aufgetretenen Fehlers.

    Mögliche Werte:
    • AccessTokenRetrievalFehlgeschlagen
    • HostReturnedNoTokens – Gibt einen Gastanwender an
    • UserSessionError

    NowSDK.core()?.requestAccessToken(for: someService)

    NowCoreService: Asynchrone Auslöse von requestAccessToken (für Service: NowService)

    Ruft ein Zugriffstoken für den angegebenen Service ab.

    Tabelle : 17. Parameter
    Name Typ Beschreibung
    Für Service Now-Service Funktionsservice, der das Zugriffstoken anfordert.
    Tabelle : 18. Rückgaben
    Typ Beschreibung
    NowSDK.AccessToken Wird zurückgegeben, wenn die Methode erfolgreich ist. Zugriffstoken, das zum Autorisieren von API-Anforderungen an einen verwendet werden soll ServiceNow Instanz.
    AccessTokenProviderError Wird ausgelöst, wenn die Methode fehlschlägt. Gibt einen Fehler beim Abrufen eines Zugriffstoken an.
    Mögliche Werte:
    • AccessTokenRetrievalFehlgeschlagen
    • HostReturnedNoTokens – Gibt einen Gastanwender an
    • UserSessionError

    Die folgenden Codebeispiele zeigen, wie diese Methode aufgerufen wird.

    do {
        let accessToken = try await NowSDK.core()?.requestAccessToken(for: someService)
    } catch {
        self.handleFailedAccessToken(error)
    }

    NowCoreService – requestNetworkService (für Service: NowService)

    Gibt einen Verweis auf einen gemeinsam genutzten Netzwerkservice zurück, mit dem Sie API-Anforderungen stellen können.

    Hinweis:
    Dies ist ein gemeinsam genutzter Service. Das Ändern von Einstellungen oder das Beenden der Sitzung kann Probleme für andere Funktionsservices verursachen, die diese Sitzung teilen.
    Tabelle : 19. Parameter
    Name Typ Beschreibung
    Für Service Now-Service Funktionsservice, der den Netzwerkservice anfordert.
    Tabelle : 20. Rückgaben
    Typ Beschreibung
    Netzwerkservice Gemeinsam genutzter Netzwerkservice, mit dem Sie API-Aufrufe tätigen können.

    Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.

    NowSDK.core()?.settingsPublisher(for: chatService)
    .sink(receiveCompletion: { completion in
      if case .failure(let error) = completion {
        // Setting publisher failed with error
      }
    }, receiveValue: { updatedSettings in
      // Receive array of SDK settings for chatService
    })
    .store(in: &subscriptions)

    NowCoreService – requestSettings(forservice: NowService)

    Gibt die SDK-Einstellungen für den angegebenen Funktionsservice zurück.

    Hinweis:
    Diese Methode ist veraltet. Sie sollten stattdessen die asynchrone/wartet-Implementierung der Methode verwenden.
    Tabelle : 21. Parameter
    Name Typ Beschreibung
    Für Service Now-Service Funktionsservice, der die Einstellungen anfordert.
    Tabelle : 22. Rückgaben
    Typ Beschreibung
    AnyPublisher<Settings, SettingsError> Erfolg: Einstellungen: Array von SDK-Einstellungen für den angegebenen Funktionsservice.

    Fehler: Einstellungsfehler: Typ und Beschreibung des zugehörigen Fehlers.

    Mögliche Werte:
    • FetchError
    • Abrufen fehlgeschlagen
    • Ungültige JSON
    • Ungültiger Anbieter
    • Nicht autorisiert
    • SdkNichtlizenziert
    • SettingUngefunden
    • unbekannt

    NowSDK.core()?.requestSettings(for: someService)

    NowCoreService: Asynchrone Auslöse für „requestSettings“ (für Service: NowService)

    Gibt die SDK-Einstellungen für den angegebenen Funktionsservice zurück.

    Tabelle : 23. Parameter
    Name Typ Beschreibung
    Für Service Now-Service Funktionsservice, der die Einstellungen anfordert.
    Tabelle : 24. Rückgaben
    Typ Beschreibung
    Einstellungen Wird zurückgegeben, wenn die Methode erfolgreich ist. Array von SDK-Einstellungen für den angegebenen Funktionsservice.
    Einstellungsfehler Wird ausgelöst, wenn die Methode fehlschlägt. Typ und Beschreibung des zugehörigen Fehlers.
    Mögliche Werte:
    • FetchError
    • Abrufen fehlgeschlagen
    • Ungültige JSON
    • Ungültiger Anbieter
    • Nicht autorisiert
    • SdkNichtlizenziert
    • SettingUngefunden
    • unbekannt

    Die folgenden Codebeispiele zeigen, wie diese Methode aufgerufen wird.

    do {
        let settings = try await NowSDK.core()?.requestSettings(for: someService)
        print("Received settings: \(settings)")
    } catch {
        print("Refresh saved with Settings error: \(error)")
    }

    NowCoreService – settingsPublisher(für Service: NowService)

    Ruft die Einstellungen für den Herausgeber des angegebenen Service ab.

    Tabelle : 25. Parameter
    Name Typ Beschreibung
    Für Service NowService-Protokoll: IOS Funktionsservice, der das Herausgeberabonnement anfordert.
    Tabelle : 26. Rückgaben
    Typ Beschreibung
    AnyPublisher<Settings, Never> Erfolg: Einstellungen: Array von SDK-Einstellungen für den angegebenen Funktionsservice.

    Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.

    NowSDK.core()?.settingsPublisher(for: chatService)
    .sink(receiveCompletion: { completion in
      if case .failure(let error) = completion {
        // Setting publisher failed with error
      }
    }, receiveValue: { updatedSettings in
      // Receive array of SDK settings for chatService
    })
    .store(in: &subscriptions)