---
sourceDocument: Référence de l’API Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/fr-FR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - fr-FR

ft:publication_title :

    - Référence de l’API Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Classe NowChatService : Android

# Classe NowChatService : Android {#ariaid-title1}

* Rversion finale: Xanadu
* 
* Mis à jour 1 août 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 minutes de lecture

La classe NowChatService fournit des fonctions qui vous permettent de lancer l'activité NowChat et de définir des configurations d'erreurs.

## NowChatService : launchIntent(context :Context, themeColors :NowChatTheme) :Intent {#ariaid-title2}

Lance l'intention utilisée pour ouvrir l'activité Now Chat. Généralement utilisé pour créer un `[android.app.PendingIntent].`
{#NChatServA-launchIntent_O_O__table_yv2_43l_nrb__entry__3}

| Nom | Type | Description |
|-|-|-|
| contexte | Contexte | Contexte utilisé pour générer l'intention. |
| Couleurs du thème | [Thème NowChatTheme](https://servicenow-prod.fluidtopics.net/R8egj6fzgC1RHrLnckWgKw "L’interface NowChatTheme définit les couleurs par défaut des éléments de l’interface utilisateur de messagerie Agent actif instantanée and Agent virtuel .") | Facultatif. Couleurs de thème à utiliser dans l'interface utilisateur NowChat. Par défaut : couleurs par défaut |
[Tableau 1. Paramètres]

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

| Type | Description |
|-|-|
| Intention | Couleurs d'intention et de thème utilisées pour lancer l'activité NowChat associée. |
[Tableau 2. Renvoie]

{#NChatServA-launchIntent_O_O__table_zv2_43l_nrb}  
Cet exemple montre comment appeler la méthode launchIntent() et traiter l'activité de retour.

    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, themeColors : NowChatTheme = object : NowChatTheme{}, contextData : Map\<String, Any\> = mapOf(), chatOptions : NowChatOptions ? = null) {#ariaid-title3}

Lance l'activité Now Chat spécifiée.
{#NChatServA-start_O_O__table_lbg_cyg_tpb__entry__3}

| Nom | Type | Description |
|-|-|-|
| activité | [Activité](https://developer.android.com/reference/kotlin/android/app/Activity.html) | Contexte de l'activité à utiliser pour lancer l'activité NowChat et recevoir le `NowChatExitCode` en tant que resultCode via onActivityResult. |
| Couleurs du thème | [Thème NowChatTheme](https://servicenow-prod.fluidtopics.net/R8egj6fzgC1RHrLnckWgKw "L’interface NowChatTheme définit les couleurs par défaut des éléments de l’interface utilisateur de messagerie Agent actif instantanée and Agent virtuel .") | Facultatif. Couleurs de thème à utiliser dans l'interface utilisateur NowChat. Par défaut : couleurs par défaut |
| contextData | Map\<String, N'importe lequel\> | Facultatif. Variables de contexte de messagerie instantanée supplémentaires transmises dans la session de messagerie instantanée. Pour en savoir plus sur les variables de contexte de la messagerie instantanée, reportez-vous à la section [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). |
| options de messagerie instantanée | [Options de messagerie instantanée Now](https://servicenow-prod.fluidtopics.net/beM92hNb7alxEN1pOyMWDg#NowChatOptionsAndroid "La classe NowChatOptions vous permet de configurer des options sur une session de messagerie instantanée, telles que l’affichage d’une invite avant la fermeture d’une fenêtre de messagerie instantanée, la désactivation de fonctionnalités lors de l’utilisation de la messagerie instantanée et le démarrage d’une nouvelle conversation de messagerie instantanée au démarrage du service de messagerie instantanée.") | Facultatif. Options à appliquer à la session de messagerie instantanée. |
[Tableau 3. Paramètres]

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

| Type | Description |
|-|-|
| Aucun |   |
[Tableau 4. Renvoie]

{#NChatServA-start_O_O__table_mbg_cyg_tpb}  
L'exemple de code suivant montre comment appeler cette fonction.

    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 : Long, listener : NowChatUnreadMessagesCountListener) {#ariaid-title4}

S'abonne à l'écouteur de nombre de messages de messagerie instantanée non lus.
{#NChatServA-subToUnreadMsgCnt_I_O__table_zrg_k1m_cqb__entry__3}

| Nom | Type | Description |
|-|-|-|
| intervalle d'interrogation | Long | Fréquence à laquelle interroger le service Web pour le nombre de messages de messagerie instantanée non lus. Unité : Millisecondes |
| auditeur | NowChatUnreadMessagesCountListener | Écouteur que vous implémentez pour obtenir le nombre de messages de messagerie instantanée non lus. Vous devez également vous désabonner de cet écouteur lorsque vous ne souhaitez plus obtenir le nombre de messages non lus à l'aide de la [NowChatService : unsubscribeFromUnreadMessageCount(listener : NowChatUnreadMessagesCountListener)](https://servicenow-prod.fluidtopics.net/_rtk68vzAt2xotyUTMIzUQ#NChatServA-unsubFromUnreadMsgCnt_O "Se désabonne de la réception du nombre de messages non lus.") méthode. |
[Tableau 5. Paramètres]

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

| Type | Description |
|-|-|
| Aucun |   |
[Tableau 6. Renvoie]

{#NChatServA-subToUnreadMsgCnt_I_O__table_asg_k1m_cqb}  
L'exemple suivant montre comment s'abonner et se désabonner d'un écouteur de nombre de messages non lus de messagerie instantanée.

    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}

Se désabonne de la réception du nombre de messages non lus.
{#NChatServA-unsubFromUnreadMsgCnt_O__table_inp_hbm_cqb__entry__3}

| Nom | Type | Description |
|-|-|-|
| auditeur | NowChatUnreadMessagesCountListener | Écouteur que vous implémentez pour vous désabonner de la messagerie instantanée Écouteur du nombre de messages non lus. |
[Tableau 7. Paramètres]

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

| Type | Description |
|-|-|
| Aucun |   |
[Tableau 8. Renvoie]

{#NChatServA-unsubFromUnreadMsgCnt_O__table_jnp_hbm_cqb}  
L'exemple suivant montre comment s'abonner et se désabonner d'un écouteur de nombre de messages non lus de messagerie instantanée.

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

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

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


