RCS for Business エージェントは、メッセージ、イベント、リクエストを通じてユーザーとコミュニケーションを取り、ビジネス目標を達成します。目標が単純なもの(配達通知の送信など)でも複雑なもの(フライトの予約など)でも、エージェントはリッチカード、メディア、提案を使用して、ユーザーとエージェントのニーズを満たすスムーズな会話でユーザーをガイドします。
仕組み
エージェントとユーザー間の会話の流れは、2 人の会話と似ています。それぞれが順番に話し、聞き、相手に応答します。
RCS for Business エージェントがユーザーとの会話を開始します。ユーザーはエージェントとの会話を開始できませんが、エージェントが会話を開始すると、ユーザーはいつでも返信できます。
エージェントは、構成した外部トリガーを受信すると、最初のメッセージを送信します。トリガーは任意で、エージェントのユースケースによって異なります。
- 荷物が発送される
- 毎日のお昼のサンドイッチのお得な情報を送信する時間です
- お客様がチャットでカスタマー サポートに問い合わせた場合
エージェントがトリガーを受け取ると、RCS Business Messaging API を使用してユーザーのデバイスにメッセージを送信します。エージェントは、すべてのメッセージ、イベント、その他のリクエストを JSON ペイロードを含む HTTP リクエストとして RBM API を介してユーザーに送信します。ユーザーのデバイスのメッセージ アプリにメッセージが届きます。
デバイスが RCS をサポートしていない場合、RCS for Business プラットフォームは 404
エラーを返します。エージェントは SMS などの別のテクノロジーにフォールバックする必要があります。
ユーザーがメッセージに返信するか、イベントをトリガーすると、Google の RCS for Business サービスは、構成済みのウェブフックにレスポンスを送信します。ウェブフックは、その情報をエージェントに返します。Webhook は、すべてのユーザー メッセージ、イベント、その他のリクエストを JSON としてエージェントに送信します。
エージェントがメッセージを受信すると、JSON をデコードしてレスポンスを解析します。内部ロジックを使用するか、Dialogflow などの自然言語理解(NLU)モジュールに依存して、エージェントはユーザーのメッセージに対するレスポンスを決定し、RBM API を介してユーザーのデバイスにレスポンスを送信します。
会話は、意図した結論に達するか、ユーザーが応答を停止するまで、エージェントとユーザーの間で続きます。
例
次の例は、ユーザーが天気予報の更新をリクエストする簡単なシナリオを示しています。
- エージェントは、ユーザーが天気予報の更新をリクエストしたことを示すトリガーを外部サービスから受け取ります。
- エージェントは、ユーザーのリクエストを確認し、ユーザーの位置情報を尋ねるメッセージをユーザーに送信します。
- メッセージ アプリで、ユーザーがメッセージを読み、住所を返信します。
- エージェントはレスポンスを処理し、天気情報を取得して、会話メッセージを作成し、その情報をユーザーに送信します。また、エージェントは別の場所の天気情報も必要かどうかをユーザーに尋ねます。
- ユーザーがメッセージを読み、エージェントに感謝します。
- エージェントは、ユーザーが追加情報をリクエストしていないことを確認し、会話を終了します。
暗号化
ユーザーとエージェントの間で送信される RCS for Business メッセージは、RCS for Business エージェントと Google サーバーの間、および Google サーバーとユーザーのデバイスの間で暗号化されます。すべてのユーザーとビジネスを保護するために、Google は悪意のあるコンテンツがないかメッセージをスキャンする必要があるため、パートナーは独自の暗号鍵を使用できません。
RCS for Business のデータ セキュリティについて詳しくは、RCS for Business のデータ セキュリティをご覧ください。
次のステップ
これらのコンセプトを理解したら、エージェントに何をしてほしいかを検討し、最初のエージェントを構築します。