---
sourceDocument: オーストラリア API リファレンス
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/api-reference

 Release :

    - australia

ft:locale :

    - ja-JP

ft:publication_title :

    - オーストラリア API リファレンス

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# NowChatServiceDelegate プロトコル : iOS

# NowChatServiceDelegate プロトコル : iOS {#ariaid-title1}

* リリースバージョン: Australia
* 
* 更新日 2026年03月12日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：4分

NowChatServiceDelegate プロトコルは、URL を開く要求やチャットビューコントローラーを閉じる要求など、NowChatService 内のアクションを通知するためのコールバックを提供します。

## NowChatServiceDelegate - chatService (_chatService: NowChatService, didRequestOpenUrlurl: URL) {#ariaid-title2}

指定されたチャットサービスが URL を開く要求を受信したことをホストアプリケーションに通知するコールバック。このコールバックは通常、ユーザーがチャット UI のリンクをタップすることでトリガーされます。URL を開くか要求を無視するのは、ホストアプリケーションの責任です。
{#NCSD-chatService_O_S__table_alb_31w_wqb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| チャットサービス | [NowChatサービス](https://servicenow-prod.fluidtopics.net/3BIGTN_cKzccpzZLGLOcjQ#NowChatServiceiOSAPI "NowChatService クラスは、仮想チャット機能とライブエージェントチャット機能を提供します。") | 要求を行う NowChatService オブジェクト。 |
| didRequestOpenUrl URL | URL | サービスが開くことを要求した URL。 |
[表 : 1. パラメーター]

{#NCSD-chatService_O_S__table_alb_31w_wqb} {#NCSD-chatService_O_S__table_blb_31w_wqb__entry__2}

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

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

    func chatService(_ chatService: NowChatService, didRequestOpenUrl url: URL) {
      var updatedViewState = makeViewState()
      updatedViewState.urlToOpen = url
      viewState = updatedViewState
    }

## NowChatServiceDelegate - chatService(_ chatService: NowChatService, systemThemeDidChange traitCollection: UITraitCollection) {#ariaid-title3}

システムチャットテーマが変更されたことをホストアプリケーションに通知するコールバック。
{#NCSD-chatService_O_B_O__table_uhw_s1w_x2c__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| チャットサービス | [NowChatサービス](https://servicenow-prod.fluidtopics.net/3BIGTN_cKzccpzZLGLOcjQ#NowChatServiceiOSAPI "NowChatService クラスは、仮想チャット機能とライブエージェントチャット機能を提供します。") | 要求を行う NowChatService オブジェクト。 |
| traitCollection | [UITraitCollection](https://developer.apple.com/documentation/uikit/uitraitcollection) | 新しいテーマを含む UITraitCollection。 |
[表 : 3. パラメーター]

{#NCSD-chatService_O_B_O__table_uhw_s1w_x2c} {#NCSD-chatService_O_B_O__table_vhw_s1w_x2c__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 4. 戻り値]

{#NCSD-chatService_O_B_O__table_vhw_s1w_x2c}  
次のコード例は、 systemThemeDidChange() デリゲート関数をオーバーライドして、 updateTheme() 関数を呼び出して、システム テーマが変更されたときにテーマの変更を適用する方法を示しています。

    func chatService(_ chatService: any SnowChat.ChatServiceProvider, systemThemeDidChange traitCollection: UITraitCollection) {

      /// The corresponding updateTheme() method can be called here to change the UI theme based on System Theme
      chatService.updateTheme(theme: traitCollection.userInterfaceStyle == .dark ? DarkNowChatTheme() : LightNowChatTheme())
      print("System Theme Did Change)
    }

## NowChatServiceDelegate - chatServiceViewControllerWasDismissed(_chatService: NowChatService) {#ariaid-title4}

チャットビューコントローラーが却下されたことをホストアプリケーションに通知するコールバック。
{#NCSD-chatServiceViewContDismiss_O__table_vs4_qbw_wqb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| チャットサービス | [NowChatサービス](https://servicenow-prod.fluidtopics.net/3BIGTN_cKzccpzZLGLOcjQ#NowChatServiceiOSAPI "NowChatService クラスは、仮想チャット機能とライブエージェントチャット機能を提供します。") | ビューコントローラーが却下された NowChatService オブジェクト。 |
[表 : 5. パラメーター]

{#NCSD-chatServiceViewContDismiss_O__table_vs4_qbw_wqb} {#NCSD-chatServiceViewContDismiss_O__table_ws4_qbw_wqb__entry__2}

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

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

    func chatServiceViewControllerWasDismissed(_ chatService: NowChatService) {
      resetChat()
    }

## NowChatServiceDelegate:didEndSessionWithId(sessionId:文字列) {#ariaid-title5}

チャット画面が閉じられ、チャットセッションが終了すると呼び出されます。
注:  
関数を上書きすることで、このコールバックに必要な機能を定義できます。
{#NCSD-didEndSessionWId_S__table_j1t_hv2_52c__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| sessionId | 文字列 | 終了したセッションのSys_id。 テーブル:会話セッション \[sys_cs_session\] |
[表 : 7. パラメーター]

{#NCSD-didEndSessionWId_S__table_j1t_hv2_52c} {#NCSD-didEndSessionWId_S__table_k1t_hv2_52c__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 8. 戻り値]

{#NCSD-didEndSessionWId_S__table_k1t_hv2_52c}  
次のコード例は、既定の機能をオーバーライドするコードを配置する場所を示しています。

    func chatService(_ chatService: NowChatService, didEndSessionWithId sessionId: String) {
      print("Chat Session ended with ID: \(sessionId)")
    }


