RCS Business Messaging (RBM) 代理通过消息、事件和请求与用户沟通,以实现您的业务目标。无论这些目标是简单的(例如发送交付通知)还是复杂(例如预订航班),代理都使用丰富的卡片、媒体和建议来引导用户完成流畅的对话,以满足用户和代理的需求。
工作原理
代理与用户之间的对话流程与两个人之间的对话类似,双方都轮流发言、倾听和响应。
您的 RBM 代理与用户发起对话。用户无法发起与代理的对话,但当代理发起对话后,用户可以随时回复。
代理收到您配置的外部触发器时,会发送第一条消息。触发器可以是任何内容,具体取决于代理的用例:
- 包裹发货
- 该发送午餐时间三明治特惠了
- 用户通过聊天与客户支持团队联系
您的代理收到触发器后,会通过 RCS Business Messaging API 向用户的设备发送消息。您的代理通过 RBM API 以 HTTP 请求(带有 JSON 载荷)的形式向用户发送所有消息、事件和其他请求。用户在设备上的“信息”应用中收到消息。
如果设备不支持 RCS,RBM 平台会返回 404
错误,并且代理应回退到其他技术(如短信)。
当用户响应消息或触发事件时,“信息”应用会将响应发送到 Cloud Pub/Sub,后者将信息传回给代理。Cloud Pub/Sub 会将所有用户消息、事件和其他请求作为 JSON 发送到您的代理。
代理收到消息后,会对 JSON 进行解码并解析响应。使用内部逻辑或依赖于 Dialogflow 等自然语言理解 (NLU) 模块,您的代理会决定对用户消息的响应,并通过 RBM API 将响应发送到用户的设备。
您的代理与用户之间的对话将继续进行,直到得出预期结束或用户停止响应为止。
示例
以下示例展示了用户请求天气更新的简单场景。
- 您的代理收到来自外部服务的触发器,指示用户请求了天气更新。
- 您的代理向用户发送一条消息,确认用户的请求并请求用户的位置。
- 在“信息”应用中,用户阅读信息后,使用其地址进行回复。
- 您的代理会处理响应、提取天气信息、创建对话消息并将信息发送给用户,此外,您的代理会询问用户是否也想要获取其他地点的天气信息。
- 用户阅读消息并感谢代理。
- 您的代理确认用户没有请求更多信息并结束对话。
加密
在用户和代理之间发送的消息会在 RBM 代理和 Google 服务器之间、运营商与用户的设备之间加密。代理无法使用自己的加密密钥,因为 Google 需要扫描邮件以检测垃圾邮件,以保护所有用户和企业。
用户设备上收到的消息会通过用户为其设备配置的任何设备级加密进行加密,并且 Google 会部署设备端安全模型来保护消息数据。
后续操作
熟悉这些概念后,请考虑您希望代理执行的操作,并构建您的第一个代理。