外部システム連携機能を使用することで、他の外部システムサービスとの連携、業務システムとの連携、指定したメールアドレスにメールを送信するなどの処理が可能になります。 ※ 外部システム連携機能は、 Standardプラン以上 でご利用いただけます。
連携タイプはいくつか用意されていますが、ここでは、「HTTP(S)プロトコル」と「Google Spreadsheet」のタイプを使用した連携方法について説明します。
目次
- 機能概要(共通項目)
- 機能概要(HTTP(S))
- 機能概要(Google Spreadsheet)
- 手順(HTTP(S) - GET)
- 手順(HTTP(S) - POST)
- 手順(Google Spreadsheet)
機能概要(共通項目)
外部システム連携先
外部システム連携先の名前を入力してください。
設定した連携先はシナリオ作成時、「外部システム連携」アクションで選択する際に表示される項目名になりますので、わかりやすい名前をつけてください。
説明
作成する外部システム連携の説明を設定してください。
タイプ
外部システム連携に使用する方式を選択してください。
使用するタイプにより、以降の設定項目が変わります。
タイプ | 説明 |
---|---|
HTTP(S) | HTTP(S)通信を使用してデータの入出力を行います |
Google Spreadsheet | Google Spreadsheetへデータ登録を行います |
アカウント設定でメール送信先に登録されたアドレスに電子メールを送信します 詳しい手順については、【シナリオの中でメール送信を行いたい】をご覧ください |
|
Excel(OneDrive) | MicrosoftのOneDriveを利用してExcelデータの参照・登録・更新・削除を行います 詳しい手順については、【OneDriveと連携したシナリオを作成したい】をご覧ください |
Office 365 | Microsoft Graph APIを使用してOffice 365と連携し、データの入出力を行います 詳しい手順については、【チャットボット作成(Office 365連携編)】をご覧ください |
Salesforce | Salesforceと連携し、データの入出力を行います |
OKBIZ. for FAQ | OKBIZ. for FAQと連携しFAQの検索/回答を行います 詳しい手順については、【OKBIZ. for FAQとチャットボットを連携させる】をご覧ください |
保存してテスト/テスト
作成した外部連携が問題なく動作しているかどうか、テストを行うことができます。
機能概要(HTTP(S))
URL
HTTPS(S)で通信する外部システム連携先のURLを入力してください。
Method
外部システム連携先へ送信するリクエストの種類を選択してください。
メソッド名 | 説明 | 例 |
---|---|---|
GET | 送信するデータをURLに追加する | 『URL』に記述 http: //〇〇〇〇.co.jp/?key1=value1&key2=value2 |
POST | 送信するデータをリソースに追加する | 『Request Body』に記述 key1=value1&key2=value2 |
PUT | リソースを新規作成・更新をする | 同上 |
DELETE | 指定したURIのリソースを削除する | 同上 |
OPTIONS | URIに対して利用できるメソッドの一覧を取得する | 同上 |
PATCH | URIの一部を更新する | 同上 |
Headers
外部システム連携先にHTTPリクエストを送信する際にリクエストヘッダとして使用されます。
DialogPlayで取得した情報を、外部システム連携先へ送信する情報(AccessToken等)として利用したい場合などには{{変数}}を設定することも可能です。
名前 | 値 | 説明 |
---|---|---|
Content-Type | - | 送信するデータのファイル形式 |
- | text/plain | テキストファイル |
- | text/csv | CSVファイル |
- | text/html | HTMLファイル |
- | application/json | JSONファイル |
Request Body
外部システム連携先へ送信するリクエスト内容を入力してください。
Response Type
外部システム連携先から受け取るデータの形式を設定してください。
形式 | 説明 |
---|---|
JSON | JSON形式でデータを受け取る |
TEXT | TEXT形式でデータを受け取る |
Response Map
外部システム連携先から受け取ったデータをシナリオで使用するための設定を行います。
項目名 | 説明 |
---|---|
変換元 | 外部システム連携先から取得したデータのキー名を入力します |
変換先 | 変換元で指定したキーの値を保存する変数名を入力します この変数はシナリオの「外部システム連携」アクションで利用可能です |
[Response Map設定例]
以下の設定により、取得データの「key1」 = “value1”が、シナリオ内では、「変数1」 = “value1”として利用されます。
Response値 | { “key1” : “value1”, “key2” : “value2” } |
---|---|
項目入力 |
外部システム連携の実行結果をカスタマイズする
外部システム連携先が返すHTTP Status Codeの値によって、外部システム連携実行の成功/失敗時の動作(成功の時は特定のメッセージを表示後処理を継続、失敗の時は特定のメッセージを表示後シナリオを終了など)をカスタマイズできます。
本機能有効時に「外部システム連携」アクションの『外部システム連携に失敗した場合はシナリオを強制終了する』を有効にすることで、外部システム連携実行結果によりその後の動作を分岐することができます。
成功 | 次のアクションへ進む |
---|---|
失敗 | チャットボットがエラーメッセージを発言してシナリオを強制終了する |
機能概要(Google Spreadsheet)
サービスアカウントキー
Google SpreadsheetのAPI接続で必要となるJSON形式のデータです。
〔 Google API Console 〕のサービスアカウントキー作成時にダウンロードした、JSON形式ファイルのデータを、修正を加えず貼り付けしてください。
シートID
Google SpreadsheetのURLに表示されている「シートID」を入力してください。
https://docs.google.com/spreadsheets/d/【シートID】/edit#gid=0
値
Google Spreadsheetに出力する値を設定してください。
設定した値はシートの末尾行に追記されます。
手順(HTTP(S) - GET)
本手順では、各種気象データの無料APIを提供するオンラインサービス〔 OpenWeatherMap 〕を利用して、地域の3時間後の天気を取得するチャットボットを作成します。
※ ライセンスは、OpenStreetMapのクリエイティブ・コモンズCC-BY-SA2.0に準じます。
※ 他社が提供しているAPIを利用する場合は、必ずサービス提供元の利用規約を確認の上、ご利用下さい。
外部システム(OpenWeatherMap)設定
- 〔 OpenWeatherMap 〕へアクセスし、各項目を入力後、“Create Account“ボタンをクリックしてユーザー登録をしてください。
No. 項目名 説明 1 username ユーザー名を入力 2 Enter email メールアドレスを入力 3 Password パスワードを入力 4 I am 16 years old and over 年齢を確認後チェック 5 I agree with Privacy Policy, Terms and conditions of sale and Websites terms and conditions of use 利用規約とプライバシーポリシーを確認後チェック 6 - ニュース、アップデート、オファーに関するメールを受け取る場合はチェック 7 私はロボットではありません チェック入れた後、表示されるメッセージに従って、ロボットではないことを証明 - ログイン後、”API Keys“タブをクリックし、『Key』をコピーして控えてください。
外部システム連携の設定
- ユーザーが入力した地域を元に、該当地域の気象データを取得する外部システム連携を作成します。
『外部システム連携』タブから”+新規作成“ボタンをクリックしてください。 - 以下の例を参考に各項目を入力後、“保存“ボタンをクリックしてください。
No. 項目名 例 1 外部システム連携先 3時間後の天気 2 説明 3時間後の天気をお知らせします 3 タイプ HTTP(S) 4 URL http://api.openweathermap.org/data/2.5/forecast?q={{エリア}},JP&units=metric&APPID=【API Key】
【API Key】は、【 外部システム連携の設定 】手順2でコピーしたKeyを入力してください5 Method GET 6 Headers GETのため、空白 7 Request Body GETのため、空白 8 Response Type JSON 9 Response Map
※ 今回のシナリオでは、3時間後の気象データを利用するため、リスト番号(list[1])を設定※ パラメーターに関する詳細は、〔 OpenWeatherMap 〕をご覧ください。
city.name エリア list[1].weather[0].main 予報 list[1].main.temp 気温 list[1].main.humidity 湿度 10 外部システム連携の実行結果をカスタマイズする 任意
シナリオ作成
- チャットボット画面に戻り、『シナリオ一覧』タブから”+シナリオを追加“ボタンをクリックしてください。
- 『シナリオ名』『ユーザー発言例』を入力後、「テキスト発言」アクションを追加し、以下の例を参考に『発言内容』を入力してください。
シナリオ名 3時間後の天気 ユーザー発言例 任意 項目名 例 発言内容 3時間後の天気予報をお知らせします。 - 「ヒアリング」アクションを追加し、以下の例を参考に各項目を入力してください。
項目名 例 ヒアリング項目 エリア @text 地域をローマ字で入力してください。 (札幌市の場合はSapporoまたはSapporo-shi) - 「外部システム連携」アクションを追加し、以下の例を参考に各項目を入力してください。
項目名 説明 例 連携先 【 外部システム連携の設定 】で設定した連携先を選択 3時間後の天気 外部システム連携に失敗した場合はシナリオを強制終了する - 任意 - 「テキスト発言」アクションを追加し、以下の例を参考に『発言内容』を入力後、”保存”ボタンをクリックしてください。
項目名 説明 例 発言内容 『変数一覧』に表示されている変数名を、{{}}で囲って記述することで変数として利用可能 3時間後の{{エリア}}の天気は、以下の通りです。
天気:{{予報}}
気温:{{気温}}
湿度:{{湿度}} - 『シミュレーター』機能で動作を確認してください。
手順(HTTP(S) - POST)
外部システム連携の設定
本手順では、〔 DummyAPI 〕を利用して、ユーザーが入力した情報を社員名簿に登録、登録した値を取得するチャットボットを作成します。
※ 他社が提供しているAPIを利用する場合は、必ずサービス提供元の利用規約を確認の上、ご利用下さい。
- 『外部システム連携』タブから”+新規作成“ボタンをクリックしてください。
- 以下の例を参考に各項目を入力後、“保存“ボタンをクリックしてください。
No. 項目名 例 1 外部システム連携先 社員名簿 2 説明 社員名簿に情報を登録します 3 タイプ HTTPS(S) 4 URL http://dummy.restapiexample.com/api/v1/create 5 Method POST 6 Headers Content-Type application/json 7 Request Body {
"name":"{{名前}}",
"salary":"{{給料}}",
"age":"{{年齢}}"
}8 Response Type JSON 9 Response Map data.name 社員名 data.salary 社員給料 data.age 社員年齢 data.id ユーザーID 10 外部システム連携の実行結果をカスタマイズする 任意
シナリオ作成
- チャットボット画面に戻り、『シナリオ一覧』タブから”+シナリオを追加“ボタンをクリックしてください。
- 『シナリオ名』『ユーザー発言例』を入力後、「テキスト発言」アクションを追加し、以下の例を参考に『発言内容』を入力してください。
シナリオ名 社員名簿登録 ユーザー発言例 任意 項目名 例 発言内容 社員情報を名簿に登録します。 - 「ヒアリング」アクションを追加し、以下の例を参考に各項目を入力してください。
項目名 例 ヒアリング項目 名前 @text 社員名を入力してください。(例:ダイアログ 太郎) 給料 @number 給料を入力してください。(例:270000) 年齢 @number 年齢を入力してください。(例:30) - 「外部システム連携」アクションを追加し、以下の例を参考に各項目を入力してください。
項目名 説明 例 連携先 【 外部システム連携の設定 】で設定した連携先を選択 社員名簿 外部システム連携に失敗した場合はシナリオを強制終了する - 任意 - 「テキスト発言」アクションを追加し、以下の例を参考に『発言内容』を入力後、”保存”ボタンをクリックしてください。
項目名 説明 例 発言内容 『変数一覧』に表示されている変数名を、{{}}で囲って記述することで変数として利用可能 以下の内容で情報を登録しました。
ユーザーID:{{ユーザーID}}
社員名:{{社員名}}
給料:{{社員給料}}
年齢:{{社員年齢}} - 『シミュレーター』機能で動作を確認してください。
※ 公開されているAPIの為、他ユーザーが実施した多くの情報が登録されています。
その為、既にデータ内に存在する名前(例:山田 太郎)を登録しようとすると、エラーが返ってくる場合があります。
エラーが返ってきた場合は、被らない名前を使用して再度お試しください。
手順(Google Spreadsheet)
本手順では、Google Spreadsheetに指定した値を登録するチャットボットを作成します。
外部システム(Google Spreadsheet)設定 前準備
- 〔 Google API Console 〕 へアクセスし、”<プロジェクト>(未設定時は「プロジェクトの選択」)“をクリックしてください。
- “新しいプロジェクト“をクリックしてください。
- 『プロジェクト名』を入力し、必要に応じて『組織』『場所』を設定後、”作成“ボタンをクリックしてください。
- “認証情報“をクリックしてください。
- “+認証情報を作成“をクリックし、”サービスアカウント“を選択してください。
- 『サービスアカウント名』に任意のサービス名を入力し、”作成”ボタンをクリックしてください。
- ”続行”ボタンをクリックしてください。
- ”完了”ボタンをクリックしてください。
- 『サービスアカウント』内の作成した”<メールアドレス>”をクリックしてください。
- ”鍵を追加”ボタンをクリックし、”新しい鍵を作成”を選択してください。
- 「JSON」を選択し、”作成”をクリックしてください。
- サービスアカウントキーファイルがダウンロードされます。
※ サービスアカウントキーファイルは、一度しかダウンロードできない為、紛失した場合は再度サービスアカウントキーを作成する必要があります。
外部システム( Google Spreadsheet)設定
- ””をクリック後、”IAMと管理”を選択し、”サービスアカウント“をクリックしてください。
- 手順6で使用するため、メールアドレスをコピーしてください。
- 〔Google Spreadsheet〕へアクセス後、”空白“をクリックしてください。
- “共有“ボタンをクリックしてください。
- ファイルが未保存の場合、保存画面が表示されますので、ファイル名を入力し、”保存“ボタンをクリックしてください。
- 手順2で取得したメールアドレスを入力しエンターキーを押下して情報を確定後、”送信”ボタンをクリックしてください。
- ”このまま共有”をクリックしてください。
- 〔Google API Console〕へアクセスし、『検索窓』に「Google Sheets API」と入力し、表示された候補をクリックしてください。
- “有効にする“ボタンをクリックしてください。
外部システム連携の設定
- 『外部システム連携』タブから”+新規作成“ボタンをクリックしてください。
- 以下の例を参考に各項目を入力後、“保存“ボタンをクリックしてください。
No. 項目名 例 1 外部システム連携先 Googleスプレッドシートへ値挿入 2 説明 Googleスプレッドシートへ入力された値を挿入します。 3 タイプ Google Spredsheet 4 サービスアカウントキー 【 外部システム( Google Spreadsheet)設定 前準備 】取得したサービスアカウントキーファイルの内容を修正を加えず貼付け 5 シートID 【 手順(Google Spreadsheet) 】で作成したGoogle SpreadsheetのURLに含まれるシートIDを入力
https://docs.google.com/spreadsheets/d/【シートID】/edit#gid=06 値
※ 変数の定義は、【 シナリオ作成 】で実施A {{項目1}} B {{項目2}} C {{項目3}}
シナリオ作成
- チャットボット画面に戻り、『シナリオ一覧』タブから”+シナリオを追加“ボタンをクリックしてください。
- 『シナリオ名』『ユーザー発言例』を入力後、「テキスト発言」アクションを追加し、以下の例を参考に『発言内容』を入力してください。
シナリオ名 Googleスプレッドシート値挿入 ユーザー発言例 任意 項目名 例 発言内容 Googleスプレッドシートへ値を挿入します。 - 「ヒアリング」アクションを追加し、以下の例を参考に各項目を入力してください。
項目名 例 ヒアリング項目 項目1 @text 項目1に挿入する値を入力してください 項目2 @text 項目2に挿入する値を入力してください 項目3 @text 項目3に挿入する値を入力してください - 「外部システム連携」アクションを追加し、以下の例を参考に各項目を入力してください。
項目名 説明 例 連携先 【 外部システム連携の設定 】で設定した連携先を選択 Googleスプレッドシートへ値挿入 - 「テキスト発言」アクションを追加し、以下の例を参考に『発言内容』を入力後、”保存”ボタンをクリックしてください。
項目名 説明 例 発言内容 『変数一覧』に表示されている変数名を、{{}}で囲って記述することで変数として利用可能 Googleスプレッドシートに以下の内容を登録しました。
A:{{項目1}}
B:{{項目2}}
C:{{項目3}} - 『シミュレーター』機能で各項目の値をチャット欄に入力後、〔 Google Spreadsheet 〕へアクセスし、入力したデータが登録されていることを確認してください。