---
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


---

# NowChatService-Klasse -- Android

# NowChatService-Klasse -- Android {#ariaid-title1}

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

Die NowChatService -Klasse stellt Funktionen bereit, mit denen Sie die NowChat-Aktivität starten und Fehlerkonfigurationen festlegen können.

## NowChatService -- launchIntent(Kontext:Kontext, ThemaFarben:NowChatTheme):Absicht {#ariaid-title2}

Startet die Absicht, die zum Öffnen der NowChat-Aktivität verwendet wird. Wird normalerweise zum Erstellen eines `[android.app.PendingIntent]`verwendet.
{#NChatServA-launchIntent_O_O__table_yv2_43l_nrb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| context | Kontext | Kontext, der zum Erstellen der Absicht verwendet wird. |
| Themafarben | [NowChat-Design](https://servicenow-prod.fluidtopics.net/IOf2xP081iVurOdtLsLnqw "Die NowChatTheme- Schnittstelle definiert Standardfarben für die Elemente in der Chat-UI Service Desk-Mitarbeiter und Virtual Agent.") | Optional. In der NowChat-UI zu verwendende Designfarben. Standard: Standardfarben |
[Tabelle : 1. Parameter]

{#NChatServA-launchIntent_O_O__table_yv2_43l_nrb} {#NChatServA-launchIntent_O_O__table_zv2_43l_nrb__entry__2}

| Typ | Beschreibung |
|-|-|
| Zweck | Absichts- und Designfarben, die zum Starten der zugehörigen NowChat-Aktivität verwendet werden. |
[Tabelle : 2. Ergebnisse]

{#NChatServA-launchIntent_O_O__table_zv2_43l_nrb}  
In diesem Beispiel wird gezeigt, wie die Methode launchIntent() aufgerufen und die zurückgegebene Aktivität verarbeitet wird.

    val intent = nowChatService.launchIntent(this) 
    val pendingIntent = PendingIntent.getActivity( 
        this, 
        REQUEST_CODE,
        intent,
        PendingIntent.FLAG_IMMUTABLE 
    ) 

    val notification = createNotification(title, message, pendingIntent)
    notificationManager.notify(push.notificationId, notification) 

## NowChatService -- start(activity: Activity, topicColors: NowChatTheme = object: NowChatTheme{}, contextData: Map\<String, Any\> = mapOf(), chatOptions: NowChatOptions? = null) {#ariaid-title3}

Startet die angegebene NowChat-Aktivität.
{#NChatServA-start_O_O__table_lbg_cyg_tpb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| Aktivität | [Aktivität](https://developer.android.com/reference/kotlin/android/app/Activity.html) | Aktivitätskontext, der zum Starten der NowChat-Aktivität und zum Empfangen des `NowChatExitCode` als resultCode über onActivityResult verwendetwerden soll |
| Themafarben | [NowChat-Design](https://servicenow-prod.fluidtopics.net/IOf2xP081iVurOdtLsLnqw "Die NowChatTheme- Schnittstelle definiert Standardfarben für die Elemente in der Chat-UI Service Desk-Mitarbeiter und Virtual Agent.") | Optional. In der NowChat-UI zu verwendende Designfarben. Standard: Standardfarben |
| contextData | Zuordnung\<String, Any\> | Optional. Zusätzliche Chat-Kontextvariablen, die an die Chatsitzung übergeben werden. Weitere Informationen zu Chat-Kontextvariablen finden Sie unter [Live agent chat context variables](https://www.servicenow.com/docs/access?context=live-agent-chat-context-vars&version=xanadu&pubname=xanadu-conversational-interfaces&ft:locale=en-US). |
| chatOptionen | [NowChatOptionen](https://servicenow-prod.fluidtopics.net/0ILz8Yy9upFfrJkEQU5vrQ#NowChatOptionsAndroid "Mit der Klasse NowChatOptions können Sie Optionen in einer Chatsitzung konfigurieren, z. B. das Anzeigen einer Eingabeaufforderung vor dem Schließen eines Chatfensters, das Deaktivieren von Funktionen während der Verwendung des Chats und das Erzwingen einer neuen Chatunterhaltung, wenn der Chatservice gestartet wird.") | Optional. Auf die Chatsitzung anzuwendende Optionen. |
[Tabelle : 3. Parameter]

{#NChatServA-start_O_O__table_lbg_cyg_tpb} {#NChatServA-start_O_O__table_mbg_cyg_tpb__entry__2}

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

{#NChatServA-start_O_O__table_mbg_cyg_tpb}  
Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.

    suspend fun launchChat() { 
      val chatService = getNowChatService() 
      val chatTheme = object : NowChatTheme { 
        override val brand: NowUIAdaptiveColor 
        get() = NowUIAdaptiveColor(Color.BLUE) 
     
        override val textPrimary: NowUIAdaptiveColor 
        get() = NowUIAdaptiveColor(Color.BLACK) 
     
        // Override remaining theme colors 
     
      } 
      val contextData = mapOf("sys_id" to "123456789", "table" to "wm_task") 
     
      val chatOptions = NowChatOptions( 
        NowChatOptions.ClosePrompt( 
          header = null, 
          message = "Are you sure you want to leave?", 
          acceptButtonTitle = "Yes", 
          declineButtonTitle = "No" 
        ), 
        disabledFeatures = listOf(NowChatOptions.Feature.START_NEW_CONVERSATION), 
        forceNewConversation= true 
      )
     
       chatService?.start(activity, chatTheme, contextData, chatOptions) 
    } 

## NowChatService --subscribeToUnreadMessageCount(pollingInterval: Lang, Listener: NowChatUnreadMessagesCountListener) {#ariaid-title4}

Abonniert den Listener für die Anzahl der ungelesenen Chatnachrichten.
{#NChatServA-subToUnreadMsgCnt_I_O__table_zrg_k1m_cqb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| Abfrageintervall | Lang | Häufigkeit, mit der der Webservice nach der Anzahl ungelesener Chatnachrichten abgefragt wird. Einheit: Millisekunden |
| listener | NowChatUnreadMessagesCountListener | Listener, den Sie implementieren, um die Anzahl der ungelesenen Chatnachrichten abzurufen. Sie müssen diesen Listener auch abbestellen, wenn Sie die Anzahl der ungelesenen Nachrichten nicht mehr mit der Methode [NowChatService -- unsubscribeFromUnreadMessageCount(listener: NowChatUnreadMessagesCountListener)](https://servicenow-prod.fluidtopics.net/R5uYSmYu6OfwQpSIrSajpw#NChatServA-unsubFromUnreadMsgCnt_O "Hebt das Abonnement für den Empfang der Anzahl der ungelesenen Nachrichten auf.") abrufen möchten. |
[Tabelle : 5. Parameter]

{#NChatServA-subToUnreadMsgCnt_I_O__table_zrg_k1m_cqb} {#NChatServA-subToUnreadMsgCnt_I_O__table_asg_k1m_cqb__entry__2}

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

{#NChatServA-subToUnreadMsgCnt_I_O__table_asg_k1m_cqb}  
Das folgende Beispiel zeigt, wie Sie einen Listener für die Anzahl ungelesener Chatnachrichten abonnieren und abbestellen.

    private val unreadMessageCountListener = object: NowChatUnreadMessagesCountListener {
      override fun unreadMessagesCountDidChange(unreadMessageCount: Int) {
      }
    }

    fun setup() {
      nowChatService.subscribeToUnreadMessageCount(pollingInterval:1000, unreadMessageCountListener)
    }

    fun teardown() {
      nowChatService.unsubscribeFromUnreadMessageCount(unreadMessageCountListener)
    }

## NowChatService -- unsubscribeFromUnreadMessageCount(listener: NowChatUnreadMessagesCountListener) {#ariaid-title5}

Hebt das Abonnement für den Empfang der Anzahl der ungelesenen Nachrichten auf.
{#NChatServA-unsubFromUnreadMsgCnt_O__table_inp_hbm_cqb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| listener | NowChatUnreadMessagesCountListener | Listener, den Sie implementieren, um den Listener für die Anzahl ungelesener Chatnachrichten abzubestellen. |
[Tabelle : 7. Parameter]

{#NChatServA-unsubFromUnreadMsgCnt_O__table_inp_hbm_cqb} {#NChatServA-unsubFromUnreadMsgCnt_O__table_jnp_hbm_cqb__entry__2}

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

{#NChatServA-unsubFromUnreadMsgCnt_O__table_jnp_hbm_cqb}  
Das folgende Beispiel zeigt, wie Sie einen Listener für die Anzahl ungelesener Chatnachrichten abonnieren und abbestellen.

    private val unreadMessageCountListener = object: NowChatUnreadMessagesCountListener {
      override fun unreadMessagesCountDidChange(unreadMessageCount: Int) {
      }
    }

    fun setup() {
      nowChatService.subscribeToUnreadMessageCount(pollingInterval:1000, unreadMessageCountListener)
    }

    fun teardown() {
      nowChatService.unsubscribeFromUnreadMessageCount(unreadMessageCountListener)
    }


