

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon Lex V2 ボットと Slack の統合
<a name="deploy-slack"></a>

このトピックでは、Amazon Lex V2 ボットと Slack メッセージングアプリケーションを統合する手順を説明します。以下のステップを実行します。

**Topics**
+ [ステップ 1: Slack にサインアップして Slack チームを作成する](slack-step-1.md)
+ [ステップ 2: Slack アプリケーションを作成する](slack-step-2.md)
+ [ステップ 3: Slack アプリケーションと Amazon Lex V2 ボットを統合する](slack-step-3.md)
+ [ステップ 4: Lex V2 ボットと Slack の統合を完了する](slack-step-4.md)
+ [ステップ 5: Lex V2 ボットと Slack の統合をテストする](slack-step-5.md)

# ステップ 1: Slack にサインアップして Slack チームを作成する
<a name="slack-step-1"></a>

Slack アカウントにサインアップして Slack チームを作成します。手順については、「[Slack の使用](https://get.slack.help/hc/en-us/articles/212675257-Creating-a-Slack-account)」を参照してください。次のセクションでは、Slack アプリケーションを作成します。このアプリケーションでは、すべての Slack チームがインストールできます。

## 次のステップ
<a name="slack-step-1-next"></a>

[ステップ 2: Slack アプリケーションを作成する](slack-step-2.md)

# ステップ 2: Slack アプリケーションを作成する
<a name="slack-step-2"></a>

このセクションでは、以下の作業を行います。

1. Slack API コンソールで Slack アプリケーションを作成します。

1. ボットにインタラクティブなメッセージングを追加するようアプリケーションを設定します。

このセクションの最後で、アプリケーションの認証情報 (クライアント ID、クライアントシークレット、および検証トークン) が提供されます。次のステップでは、この情報を使用して Amazon Lex V2 コンソールでボットを統合します。

**Slack アプリケーションを作成するには**

1. [https://api.slack.com ](https://api.slack.com)で Slack API コンソールにサインインします。

1. アプリケーションを作成します。

   アプリケーションの作成が正常に完了すると、Slack にアプリケーションの [**Basic Information**] ページが表示されます。

1. アプリケーションの機能を次のように設定します。

   1. 左のメニューで、**[Interactivity & Shortcuts]** (インタラクティブ性とショートカット) を選択します。
     + トグルを選択して、インタラクティブなコンポーネントをオンにします。
     + [**Request URL**] ボックスで、任意の有効な URL を指定します。たとえば、**https://slack.com** を使用できます。
**注記**  
ここでは、任意の有効な URL を入力し、次のステップで必要な検証トークンを取得します。この URL は、Amazon Lex コンソールでボットチャンネル関連付けを追加した後に更新します。
     + **[Save changes]** (変更の保存) をクリックします。

1. 左のメニューで、[**Settings**] の [**Basic Information**] を選択します。次のアプリケーション認証情報を記録します。
   + クライアント ID 
   + クライアントシークレット
   + 検証トークン 

## 次のステップ
<a name="slack-step-2-next"></a>

[ステップ 3: Slack アプリケーションと Amazon Lex V2 ボットを統合する](slack-step-3.md)

# ステップ 3: Slack アプリケーションと Amazon Lex V2 ボットを統合する
<a name="slack-step-3"></a>

 このセクションでは、作成した Slack アプリケーションを、チャネル統合を使用して作成した Amazon Lex V2 ボットと統合します。

1. AWS マネジメントコンソールにサインインし、[https://console.aws.amazon.com/lex/](https://console.aws.amazon.com/lex/) で Amazon Lex コンソールを開きます。

1. ボットの一覧から、作成した Amazon Lex V2 ボットを選択します。

1. 左側のメニューで、**チャネル統合** を選択し、**チャンネルを追加** を選択します。

1. [**チャネルの作成**] で、以下の操作を行います。

   1. **プラットフォーム** は、**Slack** を選択します。

   1. **ID ポリシー**で、チャネル情報を保護する AWS KMS キーを選択します。デフォルトのキーは Amazon Lex V2 が提供するものです。

   1. **統合の設定** には、チャネル名とオプションの説明を指定します。使用するボットのバージョンを指すエイリアスを選択し、チャネルがサポートする言語を選択します。
**注記**  
 ボットが複数の言語で利用できる場合は、言語ごとに異なるチャネルと異なるアプリケーションを作成する必要があります。

   1. [**追加設定**] では、次のように入力します。
      + **クライアント ID** - Slack からクライアント ID を入力します。
      + **クライアントシークレット** - Slack からクライアントシークレットを入力します。
      + **検証トークン** - Slack から検証トークンを入力します。
      + **成功ページ URL** - ユーザーが認証されたときに Slack が開くべきページの URL。通常、空欄にします。

1. **作成** を選択し、チャネルを作成します。

1. Amazon Lex V2 には、ボットのチャンネルリストが表示されます。リストから、先ほど作成したチャネルを選択します。

1. **コールバック URL** から、エンドポイントと OAuth エンドポイントを記録します。

## 次のステップ
<a name="slack-step-3-next"></a>

[ステップ 4: Lex V2 ボットと Slack の統合を完了する](slack-step-4.md)

# ステップ 4: Lex V2 ボットと Slack の統合を完了する
<a name="slack-step-4"></a>

このセクションでは、Slack API コンソールを使用して Slack アプリケーションとの統合を完了します。

1. [https://api.slack.com](https://api.slack.com) で Slack API コンソールにサインインします。「[ステップ 2: Slack アプリケーションを作成する](slack-step-2.md)」で作成したアプリを選択します。

1. [**OAuth & Permissions**] 機能を次のように更新します。

   1. 左のメニューで、[**OAuth & Permissions**] を選択します。

   1. [**URL のリダイレクト**] セクションで、前のステップで Amazon Lex から提供された OAuth エンドポイントを追加します。[**Add**]、[**Save URLs**] の順に選択します。

   1. **Bot Token Scopes** (ボットトークンスコープ) セクションでは、**Add an OAuth Scope** (OAuth スコープを追加する) ボタンで 2 つのパーミッションを追加します。次のテキストを使用してリストをフィルタリングします。
      + **chat:write**
      + **team:read**

1. [**リクエスト URL**] の値を、前のステップで Amazon Lex から返されたエンドポイントに更新することで、[**インタラクティブ&ショートカット**] 機能を更新します。ステップ 3 で保存したエンドポイントを入力し、**[変更を保存]** を選択します。

1. 次のように [**Event Subscriptions**] 機能にサブスクライブします。
   + [**On**] オプションを選択してイベントを有効化します。
   + [**Request URL**] の値を、前のステップで Amazon Lex から返された エンドポイントに設定します。
   + **[ボットイベントをサブスクライブ]** セクションで、**[ボットユーザーイベントを追加]** を選択し、**message.im** ボットイベントを追加して、エンドユーザーと Slack ボット間の直接メッセージングを有効にします。
   + 変更を保存します。

1. [メッセージ] タブからのメッセージの送信を次のように有効にします。
   + 左のメニューで、**[App Home]** (アプリケーションホーム) をクリックします。
   + **タブの表示** セクションで、**[メッセージ] タブからユーザーが Slash コマンドとメッセージを送信することを許可する** を選択します。

1. [**Settings**] の [**Manage Distribution**] を選択します。[**Add to Slack**] を選択してアプリケーションをインストールします。複数のワークスペースで認証されている場合は、まずドロップダウンリストから右上隅にある正しいワークスペースを選択します。次に、**[許可]** を選択してボットがメッセージに応答すること許可します。
**注記**  
後で Slack アプリケーション設定を変更した場合は、このサブステップをやり直す必要があります。

## 次のステップ
<a name="slack-step-4-next"></a>

[ステップ 5: Lex V2 ボットと Slack の統合をテストする](slack-step-5.md)

# ステップ 5: Lex V2 ボットと Slack の統合をテストする
<a name="slack-step-5"></a>

ここでは、ブラウザウィンドウを使用して、Slack と Amazon Lex V2 ボットとの統合をテストします。

**Slack アプリケーションをテストするには**

1. Slack を起動します。左のメニューの [**Direct Messages**] のセクションで、ボットを選択します。ボットが表示されていない場合は、[**Direct Messages**] の横にあるプラスアイコン (\$1) を選択してボットを探します。

1. Slack アプリケーションでチャットに参加する。ボットはメッセージに応答します。

   [演習 1: テンプレートからチャットボットを作成する](exercise-1.md) を使用してボットを作成した場合、その演習で使用した会話例が使用できます。