---
sourceDocument: Xanadu API リファレンス
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu API リファレンス

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# NowChatService クラス: Android

# NowChatService クラス: Android {#ariaid-title1}

* リリースバージョン: Xanadu
* 
* 更新日 2024年08月01日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：6分

NowChatService クラスは、NowChat アクティビティを起動し、エラー構成を設定できる関数を提供します。

## NowChatService - launchIntent(context:Context, themeColors:NowChatTheme):インテント {#ariaid-title2}

NowChat アクティビティを開くために使用するインテントを起動します。通常、\[ `android.app.PendingIntent]` の作成に使用されます。
{#NChatServA-launchIntent_O_O__table_yv2_43l_nrb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| context | コンテキスト | インテントをビルドするために使用されるコンテキスト。 |
| themeColors | [NowChatTheme](https://servicenow-prod.fluidtopics.net/vCk04GaZOttTD~NNNd0AAQ "NowChatTheme インターフェイスは、ライブエージェント および 仮想エージェント チャット UI の要素の既定の色を定義します。") | オプション。NowChat UI で使用するテーマの色。 デフォルト:デフォルトの色 |
[表 : 1. パラメーター]

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

| タイプ | Description (説明) |
|-|-|
| インテント | 関連する NowChat アクティビティを起動するために使用されるインテントとテーマの色。 |
[表 : 2. 返される内容]

{#NChatServA-launchIntent_O_O__table_zv2_43l_nrb}  
この例では、 launchIntent() メソッドを呼び出し、戻りアクティビティを処理する方法を示します。

    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}

指定された NowChat アクティビティを起動します。
{#NChatServA-start_O_O__table_lbg_cyg_tpb__entry__3}

| 名前 | タイプ | Description (説明) |
|-|-|-|
| アクティビティ | [アクティビティ](https://developer.android.com/reference/kotlin/android/app/Activity.html) | NowChat アクティビティを起動し、onActivityResult を介して `NowChatExitCode` を resultCode として受け取るために使用するアクティビティコンテキスト。 |
| themeColors | [NowChatTheme](https://servicenow-prod.fluidtopics.net/vCk04GaZOttTD~NNNd0AAQ "NowChatTheme インターフェイスは、ライブエージェント および 仮想エージェント チャット UI の要素の既定の色を定義します。") | オプション。NowChat UI で使用するテーマの色。 デフォルト:デフォルトの色 |
| コンテキストデータ | Map\<String、Any\> | オプション。チャットセッションに渡される追加のチャットコンテキスト変数。 チャットコンテキスト変数の詳細については、「 [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)」を参照してください。 |
| チャットオプション | [NowChatOptions](https://servicenow-prod.fluidtopics.net/Zkq5xM9EiTAV3hk55uvpWg#NowChatOptionsAndroid "NowChatOptions クラスを使用すると、チャット ウィンドウを閉じる前にプロンプトを表示したり、チャットの使用中に機能を無効にしたり、チャット サービスの開始時に新しいチャット会話を強制したりするなど、チャット セッションのオプションを構成できます。") | オプション。チャットセッションに適用するオプション。 |
[表 : 3. パラメーター]

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

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 4. 返される内容]

{#NChatServA-start_O_O__table_mbg_cyg_tpb}  
次のコード例は、この関数を呼び出す方法を示しています。

    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}

未読チャットメッセージ数リスナーに登録します。
{#NChatServA-subToUnreadMsgCnt_I_O__table_zrg_k1m_cqb__entry__3}

| 名前 | タイプ | Description (説明) |
|-|-|-|
| pollingInterval | 長 | 未読チャットメッセージ数について Web サービスをポーリングする頻度。 単位：ミリ秒 |
| リスナー | NowChatUnreadMessagesCountListener | 未読のチャットメッセージの数を取得するために実装するリスナー。また、 [NowChatService - unsubscribeFromUnreadMessageCount(リスナー: NowChatUnreadMessagesCountListener)](https://servicenow-prod.fluidtopics.net/UKeTEHz5YQSvZWaZ5LuDkg#NChatServA-unsubFromUnreadMsgCnt_O "未読メッセージ数の受信を登録解除します。") メソッドを使用して未読メッセージ数を取得する必要がなくなった場合は、このリスナーを登録解除する必要があります。 |
[表 : 5. パラメーター]

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

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 6. 返される内容]

{#NChatServA-subToUnreadMsgCnt_I_O__table_asg_k1m_cqb}  
次の例は、チャットの未読メッセージ数リスナーを登録および登録解除する方法を示しています。

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

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

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

## NowChatService - unsubscribeFromUnreadMessageCount(リスナー: NowChatUnreadMessagesCountListener) {#ariaid-title5}

未読メッセージ数の受信を登録解除します。
{#NChatServA-unsubFromUnreadMsgCnt_O__table_inp_hbm_cqb__entry__3}

| 名前 | タイプ | Description (説明) |
|-|-|-|
| リスナー | NowChatUnreadMessagesCountListener | チャットの未読メッセージ数リスナーから登録解除するために実装するリスナー。 |
[表 : 7. パラメーター]

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

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 8. 返される内容]

{#NChatServA-unsubFromUnreadMsgCnt_O__table_jnp_hbm_cqb}  
次の例は、チャットの未読メッセージ数リスナーを登録および登録解除する方法を示しています。

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

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

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


