このハウツーでは、たとえば旅行ボットで、ユーザーが希望する場所の気象情報を毎日提供してもらわなければならないというシナリオを探究しましょう。今回は、アラートタスクを使用して、上記のことを実現します。また、このアラートタスクで自動サブスクリプションを有効にして、スマートに行う方法もご紹介します。アラートタスクとは何か、そして、Kore.aiボットプラットフォームにどのように実装されているのかなどの詳細については、こちらをご参照ください。
この文書では、そのような状況に対応し、適切なアクションを取るためにアラートタスクを利用する方法についてご紹介します。
必要条件
- ボット構築のナレッジ
- 作業するボット、私たちは バンキングボットを使用しています。
- 気象情報を提供するWebサービスにアクセスできます。以下でホストされているRESTサービスを使用しています。http://api.openweathermap.org.このサービスを利用しようとする場合は、無料のアラートサービスに登録し、APIキーを使用してAPIにアクセスする必要があります。
導入
アラートタスクを設定
アラートタスクは、リアルタイムまたはユーザー定義のスケジュールに従って関連サービスにポーリングすることにより、企業システムから顧客や従業員にタイムリーで適切な情報を提供するために使用されます。手順:
- 構築->会話スキルからアラートタスクを追加します。
- タスクの詳細ページで:
- 「アラート設定」ページが示されます。
- 必要に応じて 一般設定を確認し、変更します。今回のユースケースでは、ここで設定を変更する必要はありません。
- APIリクエストタブを選択
- コンテンツタイプがJSONに設定されていることを確認します。
- 今回のユースケースでは、認証プロバイダを設定する必要はありません。使用しているAPIに認証が必要な場合も、同様に設定します。
- パラメータを設定して、ユーザーから希望する都市を収集します。必須項目として設定されていることを確認します。これがAPI要件です。
- 今回のユースケースでは、イニシャライザの要件は必要ありません。これは、リクエストを送信する前にJavaScriptを実行する必要がある場合に使用します。
- リクエストにおいて、APIを追加 をクリックして、呼び出す必要のあるサービスAPIを追加します。以下のAPIから取得メソッドを使用しています。
http://api.openweathermap.org/data/2.5/weather?q={cityname}&APPID=<your-app-id>
- 上記URLのAPPIDは、サインアップ時にOpenWeatherから割り当てられたものです。自分のアカウントにログインした後、APIキーセクションから見つけることができます。
- パラメータリストには、先に入力したパラメータが自動的に入力されていることに注意してください。
- APIを保存 。
- APIテストして、構成が適切であることを確認します。プロンプトが表示されたら、サンプルの都市名を入力し、成功メッセージと適切なレスポンスが表示されることを確認します。
- レスポンスを保存 。
- 次に、ボットレスポンスをフォーマットする必要があります。今回のユースケースでは、APIコールから返された気象状況、気温、湿度の詳細を解析して、ユーザーに提示します。以下のリッチテキストを使用して、上記のことを実行します。
今日の天気の詳細:<%=weather[0].description%>温度:<%=main.temp%>湿度:<%=main.humidity%>
APIコールで返された値は、可変キーオプションからアクセスできます。可変キーをクリックすると、「リクエスト/レスポンスキー」ウィンドウが開きます。利用可能なさまざまな変数が分類されています。APIコールからのレスポンスにアクセスするために、レスポンスキーセクションを展開し、表示したい値のキーを選択してOKをクリックすると、キーが適切な形式でエディタにインサートされます。例:以下のような選択 –
<%=weather[0].description%>
- メッセージ定義を保存 。
- 設定タブを選択し、スケジュールセクションを展開。初期スケジュールを設定するためにこのセクションを使用すると、初期設定用に選択先ユーザーに提供されるオプションが用意されています。例として、毎日午前10時30分に更新され、その後4時間ごとに更新されるというスケジュールが設定されています。ユーザーは午前10時30分を1回だけを選択して、それ以降の更新は受け取らないようにできます。
- 最終セットアップ
実行
ボットを公開してユーザーと共有する前に、ボットと会話 機能を使用して、テストすることができます。
- ボットと会話を起動。
- スケジュールタスク、毎日の天気を取得 (設定したアラートタスクの名前)を開始。
- 都市名を入力するように指示されます。
- 次に、特定の時間を入力するように指示されますので、時間を入力するか、または「x分ごと」を入力してください。
- ご存じのように、入力した時間が設定されたスケジュール時間と一致しない場合は、最も近い時間が表示されます。周波数の設定も同様です。
- これは1回限りの設定です。これ以降、このボットのために「ボットと会話」を起動すると、指定した時間に天気予報が表示されるようになります。
- ユーザーは、他のダイアログタスクと同様に、アラートタスク名を使用してタスクを起動し、手動でアラートを設定することができます。ユーザーがボットを使い始めたときの体験は、上記のフローに近いものになるでしょう。
スマートアラート
ウェルカムダイアログタスクなどでアラートサブスクリプションサービスタイプのサービスノードを追加することで、ユーザーは自動的にアラートを設定することができます。メモ:公開されたアラートタスクのみが、アラートサブスクリプションに利用できます。
- アラートタスクの起動として動作するサービスノードをダイアログに追加します。
- サービスタイプ を アラートサブスクリプションサービスに設定します。
- リクエストを定義をクリックし、すでに設定されているアラートタスク(ここでは毎日の天気を取得)を選択します。メモ:公開されたアラートタスクのみが、アラートサブスクリプションに利用できます。
- スマート/自動アラートウィンドウが表示されます。
- 必要に応じて、アラートパラメータをセットアップします。
- アラート頻度を設定
- アラートの有効期限は、サブスクリプションの期間または通知の回数に基づいて設定できます。これらは、サービスのサブスクリプションが制限されている場合に便利です。ここでは、通知回数を最大値に設定しています。
- また、アラートタスクが更新されて公開された場合、アラートアップグレード の動作も定義できます。
- 保存
- このタスクは、ウェルカムイベントやonConnectイベントから起動することができ、ユーザーは希望の都市や時間を入力することができます。
- セットアップ時に、このサービスノードが初めてヒットすると、ユーザーが介入しなくてもサブスクリプションが有効になります。