チャットをオムニチャネル経由で利用したい
はじめに
本書では各チャットアプリごとの事前準備からCBシリーズ管理画面での設定までの手順を説明します。
この手順を実施することで各チャットアプリからチャットボットへの質問を行うことができます。
現在以下のチャットアプリとの連携が可能です。
本書の画像および参考リンクは2021年8月3日現在の物です。
操作説明
LINE WORKS
事前準備
LINE WORKSと接続を行う際には、以下の作業が必要です。
- 以下のリンクに従いLINE WORKSアカウントを作成します。
https://guide.worksmobile.com/jp/start/registration/
Botの設定
-
以下のリンクから、LINE WORKSの Developer Consoleにアクセスします。
https://developers.worksmobile.com/jp/console/openapi/main -
LINE WORKSアカウントの情報を入力し、ログインします。

- サイドバーのメニューでAPI 2.0をクリックします。
- 中央アプリリストでアプリの新規追加をクリックします。

- ポップアップするアプリ名の登録画面に任意の名称を入力し、追加ボタンをクリックします。

- 登録したアプリのアプリ情報設定画面で、OAuth Scopesの設定をするため管理ボタンをクリックします。

- ポップアップするOAuth Scopeの選択画面で「bot」と「user.read」を選択し保存ボタンをクリックします。
- ポップアップが閉じた後、アプリ情報設定画面でも保存ボタンをクリックします。

- アプリ情報画面で、「Client ID」「Client Secret」を控えます。 ※のちの手順で管理画面にこれらの値を登録します。
- 「Service Account」の発行ボタンをクリックします。

- 「Service Account」を確認し、「Private Key」の発行ボタンをクリックし、ファイルを保存します。
※のちの手順で管理画面でこれらを登録します。 - サイドバーのメニューのBotをクリックしBot管理画面に移動します。

- 表示されたBot管理画面で登録ボタンをクリックします。

- Bot登録画面が表示されるので「Bot名」に「AI業務アシスタント」と入力し、「説明」に任意の文字を入力します。
※Bot名と説明は一般ユーザーがBotとの会話を開始する際に表示されます。 - API InterfaceがAPI 2.0を選択していることを確認します。
- Callback URLのスイッチをOnに変更します。変更すると新たな設定項目が表示されます。

- Callback URLに新たに表示されたURL入力欄に通知されたAPIサーバーURLを入力します。
- Callback URLに新たに表示されたメンバーが送信可能なメッセージタイプの「テキスト」にチェックをします。
- 管理者の主担当に管理者ユーザーを登録します。
- 保存ボタンをクリックします 。

- Bot管理画面に表示された登録したBotのIDを確認します。
※のちの手順で管理画面でこれらを登録します。

LINE WORKS管理者設定
- LINE WORKSのホーム画面へアクセスします。

- 管理者画面を表示します。

- 「サービス」を押下します。

- Botから追加ボタンをクリックします。

- 追加するBotの追加ボタンをクリックします。

- Bot一覧画面で追加したBotのBot名をクリックします。

- 表示されるBot詳細画面で修正ボタンをクリックします。

- 画面を下にスクロールし、任意の使用権限を設定します。
- 公開設定をOnにし、保存ボタンをクリックすると使用権限のあるメンバーがBotとトークできる状態になります。
※チャットボットの利用は管理画面設定を完了した後に可能になります。

管理画面設定
Botの設定・LINE WORKS管理者設定が終わった上で、控えた情報を登録します。
-
登録したBotの各値を入力します。
-
証明書ファイルをアップロードします。
-
テスト接続ボタンをクリックします。


設定が正しい場合は、テスト接続ボタンクリック後に上記の様なメッセージが表示されます。
- 反映ボタンをクリックします。
テスト接続ボタンクリック後にエラーメッセージが表示された場合
- 入力した内容がLINEWORKS developer consoleで確認できる値と一致しているか確認してください。
LINE
事前準備
LINEと接続を行う際には、以下の作業が必要です。
-
以下のリンクに従いLINEをインストールします。
https://guide.line.me/ja/services/pc-line.html -
以下のリンクに従いLINEアカウントを作成します。
https://guide.line.me/ja/signup-and-migration/line-signup.html
Botの設定
-
以下のリンクから、LINEの Developer Consoleにアクセスします。
https://developers.line.biz/console/ -
LINEアカウントの情報を入力し、ログインします。

- [チャネル設定] にある新規チャネル作成 を押下します。

- 下図のように選択します。



- [チャネル基本設定] → [基本情報] にあるチャネルID を控えます。
※のちの手順で管理画面のCHANNEL_IDにチャネルIDを登録します。

- [チャネル基本設定] → [基本情報] にあるチャネルシークレット を控えます。
※のちの手順で管理画面のCHANNEL_SECRETにチャネルシークレットを登録します。

- [Messaging API設定] → [チャネルアクセストークン] にあるチャネルアクセストークン(長期)の発行ボタンをクリックします。


- チャネルアクセストークン(長期) を控えます。
※のちの手順で管理画面のCHANNEL_ACCESS_TOKENにチャネルアクセストークンを登録します。

- ウェブブラウザの開発者コンソールに以下のコードを入力し、実行します。
(async () => {
const pair = await crypto.subtle.generateKey(
{
name: 'RSASSA-PKCS1-v1_5',
modulusLength: 2048,
publicExponent: new Uint8Array([1, 0, 1]),
hash: 'SHA-256'
},
true,
['sign', 'verify']
);
console.log('=== private key ===');
console.log(JSON.stringify(await crypto.subtle.exportKey('jwk', pair.privateKey), null, ' '));
console.log('=== public key ===');
console.log(JSON.stringify(await crypto.subtle.exportKey('jwk', pair.publicKey), null, ' '));
})();
※Google Chromeで実行したところ

成功すると以下のような秘密鍵(private.key)と公開鍵(public.key)が生成されます。
private.keyの例:
{
"alg": "RS256",
"d": "GaDzOmc4......",
"dp": "WAByrYmh......",
"dq": "WLwjYun0......",
"e": "AQ......",
"ext": true,
"key_ops": [
"sign"
],
"kty": "RSA",
"n": "vsbOUoFA......",
"p": "5QJitCu9......",
"q": "1ULfGui5......",
"qi": "2cK4apee......"
}
public.keyの例:
{
"alg": "RS256",
"e": "AQ......",
"ext": true,
"key_ops": [
"verify"
],
"kty": "RSA",
"n": "vsbOUoFA......"
}
- 秘密鍵(private.key)と公開鍵(public.key)をコピーしメモ帳などのテキストエディタでそれぞれファイルとして保存します。ファイル名は任意です。
例)秘密鍵→private.key 公開鍵→public.key - [チャネル基本設定] → [基本情報] にあるアサーション署名キーの公開鍵を登録するボタンをクリックします。

- 作成した公開鍵を入力します。[登録]ボタンをクリックします。

公開鍵の登録に成功すると、kidが表示されます。

- 秘密鍵(private.key)ファイルに項目「kid」を追加します。

-
秘密鍵ファイルを保存し、証明書としてアップロードします。
詳しくはLINE公式ドキュメントを参照してください。
https://developers.line.biz/ja/docs/messaging-api/generate-json-web-token/ -
[Messaging API設定] → [LINE公式アカウント機能] にある応答メッセージの編集リンクを押下します。

-
LINE Official Account Managerにアクセスします。
-
[応答設定] → [基本設定] にある あいさつメッセージをオフにします。
-
[応答設定] → [詳細設定] にある応答メッセージをオフにします。

-
Developer Consoleにアクセスします。
-
[Messaging API設定] → [Webhook設定] にあるWebhook URLの編集ボタンをクリックします。

- Webhook URLを入力します。

- Webhookの利用をオンにします。


管理画面設定
Botの設定が終わった上で、控えた情報を登録します。
-
登録したBotの各値を入力します。
-
証明書ファイルをアップロードします。
-
テスト接続ボタンをクリックします。


設定が正しい場合は、テスト接続ボタン押下後に上記の様なメッセージが表示されます。
-
ボットのベーシックIDがLINE developer consoleで表示されるボットのベーシックIDと一致しているか確認します。
-
反映ボタンをクリックします。
Slack
事前準備
Slackと接続を行う際には、以下の作業が必要です。
- 以下のリンクに従いSlackをインストールします。
- https://slack.com/intl/ja-jp/ にアクセスし、[サインイン]をクリックします。

- [アカウントを作成する]をクリックします。

- 表示される画面に従って必要事項を入力します。
Botの設定
- 以下のリンクから、SlackのApp管理画面にアクセスします。
https://api.slack.com/apps


-
サインイン完了後、再度https://api.slack.com/appsにアクセスします。
-
[Create an App]をクリックします。

- [From scratch]をクリックします。

-
必要事項を入力します。
-
入力後[Create App]をクリックします。

- 作成したBotの管理画面に移動します。

- [OAuth&Permissions]→[Scopes]にある[Bot Token Scopes]に、「chat:write / im:history / user:read」を追加します。


-
[Event Subscriptions]にある[Enable Events]のスイッチをOnにします。
-
Request URLにSlack中間サーバのURLを設定します。問題なく設定できていれば、Verifiedという緑色の文字とチェックマークが現れます。
※Slack中間サーバのURLは、CBの管理画面からコピーすることができます。


-
画面を下にスクロールし、[Subscribe to bot events]というタブを開きます。
-
「message:im」のイベントを追加します。

設定後、[Save Changes]というボタンが緑色に変化しクリックできるようになります。
-
このボタンをクリックし、設定を保存します。
-
[Interactivity&Shortcuts]にある[Interactivity]のスイッチをOnにします。
-
Request URLにSlack中間サーバのURLを設定します。

設定後、[Save Changes]というボタンが緑色に変化しクリックできるようになります。
- このボタンをクリックし、設定を保存します。
※Slack中間サーバのURLは、CBの管理画面からコピーすることができます。

- [App Home]にある[Edit]をクリックします。

-
必要事項を入力します。
-
入力後[Add]をクリックします。

- 画面を下にスクロールし、[Show Tabs]という項目にある [Allow users to send Slash commands and messages from the messages tab]にチェックを入れます。

- [Install App]にある[Install to Workspace]をクリックします。

- [Allow]をクリックします。

作成したBotのチャンネルがワークスペースにAppとして追加されます。

- [Install App]にあるBot User OAuth Tokenを控えます。
※のちの手順で管理画面のBot User OAuth TokenにBot User OAuth Tokenを登録します。

- Slack画面の右上にある自身のアイコンをクリックし、表示されたタブの中から[プロフィールを表示する]をクリックします。

- 表示されたプロフィールの中にある[その他]をクリックし、[メンバーIDをコピー]という領域をクリックして、メンバーIDをクリップボードにコピーし控えます。
※のちの手順で管理画面のメンバーIDにメンバーIDを登録します。
※メンバーIDは管理画面のSLACK設定タブから接続確認を行うときにのみ使用します。通常運用時はこのテキストボックス内が空白でも問題ありません。

管理画面設定
Botの設定が終わった上で、控えた情報を登録します。
-
管理画面の設定(SLACK設定)より登録したBotのBot User OAuth Tokenを入力します。
-
メンバーIDに自身のSlackのメンバーIDを入力します。
-
テスト接続ボタンをクリックします。


設定が正しい場合は、テスト接続ボタン押下後に上記の様なメッセージが表示されます。
また、Slackに下記のような接続確認メッセージが送信されます。
- 反映ボタンをクリックします。

※注意
Botの設定変更を行った場合、必ずワークスペースに再インストールし、設定を反映させてください。
また、この際にBot User OAuth Tokenが変わる可能性があるため、再度確認してください。
Teams
事前準備
Teams経由でCBシリーズをご利用になる場合にはAzure上にアプリの登録とbotサービスの登録をおこなう必要があります。 アプリの登録とBotサービスの登録は無償のプランでご利用が可能です。
設定作業は次の順番で行います。
1.Microsoft Azure上で必要な設定を行います。
・ リソースグループの作成(必要な場合のみ作業を行います。)
・ Microsoft App IDの作成
・ Bot Serviceの作成
・ 情報をサービス提供会社へ提供し、Teamsへのインストールに必要なzipファイルを受け取ります。
2.Teams Botの設定を行います。
3.CBシリーズの管理画面で設定を行います。
Microsoft Azure上で必要な設定を行います。
リソースグループの作成
(Bot Serviceを登録するリソースグループです。すでに存在する場合、作成する必要はありません。)
-
Azureポータル https://portal.azure.com//にログインし、ホーム画面からリソースグループパネルを開きます。
-
リソースグループの画面で[作成]をクリックします。

-
サブスクリプション、リソース グループ、リージョンを設定し、[確認および生成]をクリックします。

-
[作成]をクリックします。

-
リソースグループが作成されていることを確認します。

Microsoft App IDの作成
- ホーム画面からAzure Active Directoryのパネルをオープンし、左のメニューからアプリの登録、新規登録を選択します。

-
アプリケーションの登録画面で、「名前」(任意、チャットボットを識別する名前を付けてください。)、および「サポートされるアカウントの種類」に(任意の組織ディレクトリ内のアカウント(任意のAzure AD ディレクトリ - マルチテナント))を設定し登録ボタンをクリックします。

-
登録が終わるとアプリケーションの概要画面が表示されます。 アプリケーション (クライアント) …に表示されている「アプリケーション (クライアント) ID」、「ディレクトリ (テナント) ID」を控えてください。

-
同画面の左メニューから「証明書とシークレット」をオープンし、クライアントシークレットタブの新しいクライアントシークレットをクリックします。

-
クライアントシークレットの追加画面で、説明(任意)、有効期限を24か月に設定し、追加ボタンをクリックします。

-
表示されたクライアントシークレットの「値」を控えます。

Bot Serviceの作成
Azureポータル、ホーム画面からリソースの作成を選びます。
検索ボックスにAzure Botと入力しEnterを押下します。

-
Azure Botが表示されるので、[作成]をクリックします。

-
各項目を入力し、[確認と作成]をクリックします。

| 項目 | 入力内容 |
|---|---|
| ボット ハンドル | 任意、識別する名前を入力してください。 |
| サブスクリプション | Azure サブスクリプションを選択します。 |
| リソース・グループ | サービスを登録するリソースグループを入力します。 |
| 価格設定/価格レベル | Free |
| アプリの種類 | マルチテナント |
| 作成の種類 | 「既存のアプリの登録を使用する」にチェック |
| アプリID | Microsoft App ID 作成で控えたアプリケーション(クライアント)ID」を入力します。 |
-
確認と作成タブでエラーが出ていなければ、[作成]をクリックします。

-
リソースが作成されるまで待ちます。 [リソースに移動]をクリックすると作成されたBotの[概要]へ遷移します。

-
Botの[概要]ページで、左のメニューから[ボット プロファイル] を開きます。
※2回目以降この画面を開く時、Botは[Bot Service]の一覧に格納されています。

-
[ボット プロファイル] ページが表示されます。必要に応じアイコンと表示名を変更します。
※表示名に設定した値を控えてください。ここで設定した値がTeams上のチャットボットの表示になります。

-
左のメニューから[構成]を開きます。
CBシリーズの管理画面を開き、設定>TEAMS設定のメッセージングエンドポイントをコピーし、azure側の画面に登録します。

Bot Serviceのチャンネル作成
-
左のメニューから[チャンネル]を開きます。使用可能なチャネルから「Microsoft Teams」を選択します。

-
サービス条件に同意します。

-
Microsoft Teams Commercialを選択し、「適用」をクリックします。

-
閉じるをクリックします。

-
チャンネル「Microsoft Teams」が作成されたことを確認します。

-
チャンネル「Web Chat」をクリックします。

-
Default Site を選択し、「サイトの削除」ボタンをクリックします。

-
「はい」ボタンをクリックします。

-
「閉じる」ボタンをクリックします。

情報をサービス提供会社へ提供する
以下の値をサービス提供会社に共有してください。
・Microsoft app IDの作成で控えた「アプリケーション(クライアント)ID」
・Bot Serviceの作成で控えたボットプロファイルの「表示名」(メンション先の名前になります。)
サービス提供会社で共有された値をもとに、アプリ登録用ファイル(zipファイル)を作成致します。
ファイルが届くまでお待ちください。
Teams Botの設定
サービス提供会社から、アプリ登録用ファイル(zipファイル)を受け取り後後に作業を行ってください。
-
Teamsアプリを開きます。
-
サイドバーの[アプリ]>[アプリを管理]>[アプリをアップロード]から、サービス提供会社から提供されたアプリ登録用ファイル(zipファイル)をアップロードします。

- [カスタムアプリをアップロード]をクリックします。

- [チームに追加]をクリックします。

- [追加したいチーム]を選択し、[ボット設定]をクリックします。

CB 管理画面での設定

CBの管理画面上に設定値を入力し、連携を行います。
-
Microsoft App ID:Microsoft App IDの作成で控えた「アプリケーション (クライアント) ID」
-
Microsoft App Password:Microsoft App IDの作成で控えたクライアントシークレットの「値」
テナントIDによる認証を行う場合、テナントIDを入力し、「テナントIDによる認証を使用する」に設定します。
- テナントID:Microsoft App IDの作成で控えた「ディレクトリ (テナント) ID」
入力後に、テスト接続ボタンをクリックし、接続を確認します。うまく接続できない場合は保守会社に連絡をお願いします。

接続確認後に反映ボタンをクリックすることで設定内容を保存します。
認証を行う場合の設定
CB3ユーザー登録
CB3を利用認証するユーザーを登録します。
この情報はマジックワードを発行し、認証を行うためにも利用します。
登録の際、Teamsのアカウントに設定してあるユーザーのメールアドレスが必要になります。
CB3管理画面>アカウント>ユーザーを選択し、登録ボタンをクリックします。

必要な項目を入力し、登録ボタンをクリックして登録します。
・ユーザーID:登録するユーザーIDを入力します。
・ユーザー名:登録するユーザー名を入力します。
・パスワード:任意に入力してください。Teams連携では利用しませんが、入力は必要です。
- 最小8文字、最大24文字
- 半角英数と一部の記号 \!\#$%&()\*+,.:;=?@\[\]^\_{}-
・メールアドレス:利用を許可するTeamsユーザーのメールアドレスを入力します。
・ユーザーグループ:管理者を選択してください。

登録ボタンをクリックするとユーザー情報が登録されます。
※登録後にメールアドレスの変更を行う場合や、Teamsからの認証済みかどうかを確認する場合にはユーザー一覧の該当するユーザー名をクリックすることで確認および変更を行えます。

ユーザー選択後の画面でメールアドレスの変更や、「オムニチャネル認証の有無」の値によりTeams認証済であるかどうかの確認が可能です。

有識者へのメンション設定
ワークスペースの登録時に、チャットボットが回答できなかった場合に、有識者へ回答を促すメンションを行う機能を設定することができます。
メンション先のメールアドレスにTeamsユーザーのメールアドレスを追加します。最大5人まで設定することができます。
なお、ワークスペースの登録方法については、別紙マニュアルをご参照ください。

また、ワークスペースがすでに登録済である場合、ワークスペースの設定タブからメンション先の追加・変更を行う事も可能です。
