---
sourceDocument: Yokohama データと自動化
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/yokohama/integrate-applications

 Release :

    - yokohama

ft:locale :

    - ja-JP

ft:publication_title :

    - Yokohama データと自動化

ft:clusterId :

    - crint

bundleId :

    - crint

workflow :

    - Creator


---

# ServiceNowインスタンスでSlackモーダルを設定

# ServiceNowインスタンスでSlackモーダルを設定 {#ariaid-title1}

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

モーダルを作成し、Slackモーダルに表示するフィールドを指定します。モーダル UI は、ServiceNow テーブルを使用した自動生成と、カスタムの \[ペイロードを表示\] を使用した手動生成の 2 つの方法で生成できます。

## 始める前に

必要なロール：admin

## このタスクについて

たとえば、Slackでモーダルを使用してインシデントを作成する場合、「インシデントを作成」モーダルには \[優先度\]、\[カテゴリ\]、および \[簡単な説明\] フィールドが必要です。  
注:  
モーダルは、次のインタラクティブSlackコンポーネントからトリガーできます。

* コマンド
* ブロックアクション
* グローバルショートカット
* メッセージショートカット
{#conf-slack-modals__ul_vmk_gn2_fpb}

## 手順

1. ServiceNowテーブルを使用して自動生成される UI でモーダルを作成するには：
   1. 移動先 SlackSlack モーダル構成.
   2. \[新規\] をクリックします。
   3. Slack モーダル構成フォームで、次の値を入力します。  
      {#conf-slack-modals__table_fng_zsd_fpb__entry__2}

      | フィールド | 説明 |
      |-|-|
      | 名前 | レコードを識別する名前です。たとえば、<kbd class="ph userinput">インシデントを作成するためのモーダル</kbd>です。 |
      | モーダルタイトル | Slackに表示されるモーダルタイトルです。たとえば、<kbd class="ph userinput">インシデントを作成</kbd>です。 |
      | テーブル | モーダルフィールドに対応するServiceNowテーブルです。たとえば、インシデント \[incident\] です。 |
      | カスタムモーダル | カスタムモーダルを構成するオプションです。 |
      | 入力フィールド | Slackに表示するフィールドを入力します。たとえば、\[優先度\]、\[カテゴリ\]、および \[簡単な説明\] を選択します。これらのモーダルフィールドが選択したServiceNowテーブルに対応していることを確認してください。たとえば、インシデントを作成するモーダルにタスク関連フィールドを表示することはできません。 注: 文字列、日付、および選択肢フィールドタイプのみがサポートされています。 |
      | アクティブ | レコードを積極的に使用するオプションです。 |
      | スクリプトの検証 | モーダルでユーザーが入力した内容を検証するスクリプトです。ユーザー指定の入力を検証するには、モーダルから値を取得するフォーマットを把握し、Slackからの応答を解析していることを確認します。 ユーザーが \[インシデントを作成\] モーダルの \[優先度\]、\[カテゴリ\]、および \[簡単な説明\] フィールドに値を入力したときのサンプルペイロードは次のとおりです。 {"priority":{"4gk":{"type":"static_select","selected_option":{"text":{"type":"plain_text","text":"1 - Critical","emoji":true},"value":"1"}}},"category":{"iV7":{"type":"static_select","selected_option":{"text":{"type":"plain_text","text":"Software","emoji":true},"value":"software"}}},"short_description":{"XS/Q=":{"type":"plain_text_input","value":"hemanth"}}} 検証エラーをモーダルに表示するには、オブジェクトキー、ステータス、および errorObject を返すようにスクリプトを設定します。errorObject には、Slack に表示されるオブジェクトの値が必要です。オブジェクトには response_action と error が必要です。 また、検証エラーがない場合に status および statusMessage のキーを持つオブジェクトを返すようにスクリプトを設定します。 statusMessage はオプションであり、要件に応じて設定できます。 |
      [表 : 1. Slack モーダル構成フォーム]

      {#conf-slack-modals__table_fng_zsd_fpb}
   4. フォームヘッダーを右クリックし、 \[保存\] をクリックします。  
      \[インシデントを作成\] モーダルはSlackで作成されます。
   {#conf-slack-modals__substeps_cc4_5x4_fpb}
2. カスタムの \[ペイロードを表示\] を使用して手動生成される UI でモーダルを作成するには：
   1. 移動先 SlackSlack モーダル構成.
   2. \[新規\] をクリックします。
   3. Slack モーダル構成フォームで、次の値を入力します。  
      {#conf-slack-modals__table_nwf_ng5_fpb__entry__2}

      | フィールド | 説明 |
      |-|-|
      | 名前 | レコードを識別する名前です。たとえば、<kbd class="ph userinput">インシデントを作成するためのモーダル</kbd>です。 |
      | カスタムモーダル | カスタムモーダルを構成するオプションです。このチェックボックスをオンにします。 |
      | ペイロードを表示 | モーダル UI を定義するSlackブロックキットビルダーによって生成されるペイロードです。詳細については、「[ブロックキット](https://api.slack.com/block-kit)」および「[ブロックキットを使用したビルド](https://api.slack.com/block-kit/building)」を参照してください。 |
      | アクティブ | レコードを積極的に使用するオプションです。 |
      | スクリプトの検証 | モーダルでユーザーが入力した内容を検証するスクリプトです。ユーザー指定の入力を検証するには、モーダルから値を取得するフォーマットを把握し、Slackからの応答を解析していることを確認します。 ユーザーが \[インシデントを作成\] モーダルの \[優先度\]、\[カテゴリ\]、および \[簡単な説明\] フィールドに値を入力したときのサンプルペイロードは次のとおりです。 {"priority":{"4gk":{"type":"static_select","selected_option":{"text":{"type":"plain_text","text":"1 - Critical","emoji":true},"value":"1"}}},"category":{"iV7":{"type":"static_select","selected_option":{"text":{"type":"plain_text","text":"Software","emoji":true},"value":"software"}}},"short_description":{"XS/Q=":{"type":"plain_text_input","value":"hemanth"}}} 検証エラーをモーダルに表示するには、オブジェクトキー、ステータス、および errorObject を返すようにスクリプトを設定します。errorObject には、Slack に表示されるオブジェクトの値が必要です。オブジェクトには response_action と error が必要です。 また、検証エラーがない場合に status および statusMessage のキーを持つオブジェクトを返すようにスクリプトを設定します。 statusMessage はオプションであり、要件に応じて設定できます。 |
      [表 : 2. Slack モーダル構成フォーム]

      {#conf-slack-modals__table_nwf_ng5_fpb}
   4. フォームヘッダーを右クリックし、 \[保存\] をクリックします。  
      \[インシデントを作成\] モーダルはSlackで作成されます。
   {#conf-slack-modals__substeps_mwf_ng5_fpb}
3. モーダルを表示するタイミングを定義する条件を指定します。
   1. 移動先 Slackモーダルの受信決定 。
   2. 意思決定フォームで、次の値を入力します。  
      {#conf-slack-modals__table_xk3_sk2_fpb__entry__2}

      | フィールド | 説明 |
      |-|-|
      | ラベル | 受信モーダル決定を識別する名前です。 |
      | 回答 | 指定された条件が満たされたときに表示される必要があるモーダルです。Slack モーダル構成 \[sn_slack_ah_v2_slack_modal_configuration\] テーブルから必要なレコードが選択されていることを確認します。 |
      | デフォルトの回答 | デフォルトのモーダルであるかどうかを指定するオプションです。デフォルトのモーダルは、条件が満たされない場合に適用されます。 |
      | 条件 | モーダルを表示するために Slack アプリケーションで満たす必要のある条件です。 |
      [表 : 3. 意思決定フォーム]

      {#conf-slack-modals__table_xk3_sk2_fpb}  
      注:  
      * sys_id の値をコピーして記録します。Slack アプリでショートカットまたはメッセージショートカットを設定するときに、この sys_id を \[コールバック ID\] の一意の値として使用できます。  
        注:  
        受信通信を処理するために、次の 2 つのシステムプロパティが追加されています。{#conf-slack-modals__table_nz4_4fr_qwb__entry__4}

        | カテゴリ | プロパティ名 | 説明 | 例 |
        |-|-|-|-|
        | スラッシュコマンド | sn_slack_ah_v2.command.special_characters | encodeURIComponent メソッドを使用してエンコードされた文字は、内部で処理されます。Slack アプリケーションの Slash コマンドで使用されている追加の特殊文字をエンコードされた URI 文字に置き換えるには、JSON 形式で文字を追加します。 | { "\~" : "%7E", "\\(" : "%28", } |
        | インタラクティブ機能とショートカット： | sn_slack_ah_v2.interactivity.special_characters | encodeURIComponent メソッドを使用してエンコードされた文字と以下の文字は、内部で処理されます。<kbd class="ph userinput">!、'、(、)、*、~</kbd> プロパティに入力して、Slack アプリケーションにおける Slack のインタラクティブ機能とショートカットで使用されている追加の特殊文字を JSON 形式でエンコードされた URI 文字に置き換えます。 | { "\~" : "%7E", "\\(" : "%28", } |
        [表 : 4. システムプロパティ]

        {#conf-slack-modals__table_nz4_4fr_qwb} 必要なショートカットのモーダルを表示するには、\[条件\] でモーダルのインバウンドポリシーレコードの sys_id を指定します。
      * 必要なSlackコマンドのモーダルを表示するには、\[条件\] でモーダルを表示する必要のあるコマンドを指定します。
      * 必要なSlackブロックアクションのモーダルを表示するには、\[条件\] でモーダルを表示する必要のあるブロックアクションの必須アクション ID を指定します。
      {#conf-slack-modals__ul_mmt_dr4_fpb}
   3. \[送信\] をクリックします。  
      Slackのイベントがポリシーで指定された条件を満たすと、関連するモーダルが表示されます。  
      注:  
      これらの受信決定は意思決定テーブルに保存されます。ユーザーは、これらのテーブルのデータを直接更新または変更しないように注意してください。
   {#conf-slack-modals__substeps_rdn_zj2_fpb}
4. ユーザーがインバウンドポリシーを作成してモーダルに値を入力したときに実行するタスクを指定します。
   1. 移動先 Slack受信決定.
   2. \[新規\] をクリックします。
   3. 意思決定フォームで、次の値を入力します。  
      {#conf-slack-modals__table_khv_ww4_3mb__entry__2}

      | フィールド | 説明 |
      |-|-|
      | ラベル | 受信決定を識別する名前です。 |
      | 回答 | 指定された条件が満たされるとトリガーされるサブフローです。 |
      | デフォルトの回答 | この回答がデフォルトの回答かどうかを指定するオプションです。デフォルトの回答は、条件が満たされない場合に適用されます。 1. \[ルックアップ\] アイコン (![ルックアップアイコン]()) をクリックします。 2. ドキュメントリストから必要なサブフローを選択します。 注: \[テーブル名\] が<kbd class="ph userinput">フロー [sys_hub_flow]</kbd> であることを確認します。 {#conf-slack-modals__ol_sdf_ftb_1jb}タスクを自動化するためにSlackからの応答ペイロードを処理するようにサブフローが構成されていることを確認してください。 |
      | 条件 | ServiceNowインスタンスでタスクを実行するために満たす必要のある条件です。 条件でモーダルレコードを指定します。 注: \[条件\] には、モーダルレコードにのみ固有の条件が必要です。 |
      [表 : 5. 意思決定フォーム]

      {#conf-slack-modals__table_khv_ww4_3mb}
   4. \[送信\] をクリックします。  
      Slack ユーザーがモーダルに入力すると、入力を検証した後に関連するサブフローがトリガーされます。サブフローで構成された自動化に応じて、タスクが実行されます。
   {#conf-slack-modals__substeps_akn_xz4_fpb}

