网络钩子是合作伙伴创建的 HTTPS 回调,可指定代理应如何响应消息和事件。除非您使用 Dialogflow 等预构建的自动化解决方案,否则需要设置自定义网络钩子来定义代理的行为。
合作伙伴级和代理级网络钩子
您可以在合作伙伴级别或代理级别设置 webhook。 合作伙伴级别的网络钩子适用于您维护的每个代理,而代理级别的网络钩子则适用于单个代理。
如果您运行多个具有不同行为的代理,您可能希望使用代理级设置为每个代理设置不同的 webhook。另一方面,如果您的代理行为类似,或者您只有一个代理,则可以使用合作伙伴级别的网络钩子。
如果您同时配置了合作伙伴级网络钩子和代理级网络钩子,则代理级网络钩子优先级高于其特定的代理,而合作伙伴级网络钩子适用于没有代理级网络钩子的代理。
设置合作伙伴级网络钩子
如需设置合作伙伴级网络钩子,请按以下步骤操作:
- 打开 Business Communications 开发者控制台,然后使用您的 Business Messages Google 帐号登录。
- 打开帐号设置。
- 确保选择了正确的合作伙伴帐号。
- 对于 Business Messages 网络钩子网址,点击配置。
- 在网络钩子端点网址部分,输入应用的网址 +“/callback/”。 例如,可能类似于“https://PROJECT_ID.appspot.com/callback/”。
- 记下您的
clientToken
值。您需要使用这些信息来验证收到的邮件是否来自 Google。 将 webhook 配置为接受具有指定
clientToken
参数的 POST 请求,并发送200 OK
响应,并将 Secret 参数的纯文本值作为响应正文。例如,假设您的 webhook 收到包含以下正文内容的 POST 请求:{ "clientToken":"SJENCPGJESMGUFPY", "secret":"0123456789" }
在这种情况下,webhook 应确认
clientToken
值,如果clientToken
正确无误,则返回响应0123456789
作为响应的200 OK
。在控制台中,点击验证。Business Messages 验证您的 webhook 后,对话框将关闭。
设置代理级 webhook
您会在合作伙伴级网络钩子中收到发送给代理的消息。如果您希望特定代理的消息到达其他 webhook,可以设置代理级 webhook。
- 打开 Business Communications 开发者控制台,然后使用您的 Business Messages Google 帐号登录。
- 点击您的代理。
- 点击集成。
- 对于网络钩子,点击配置。
- 在网络钩子端点网址部分,输入 webhook 的网址,以“https://”开头。
- 记下您的
clientToken
值。您需要使用它来验证您收到的消息是否来自 Google。 将 webhook 配置为接受具有指定
clientToken
参数的 POST 请求,并发送包含 Secret 参数的值的 200 OK 响应。例如,假设您的 webhook 收到包含以下正文内容的 POST 请求:{ "clientToken":"SJENCPGJESMGUFPY", "secret":"0123456789" }
在这种情况下,webhook 应确认
clientToken
值,如果clientToken
正确无误,则返回200 OK
响应,并将 Secret 网址参数设置为0123456789
。在控制台中,点击验证。Business Messages 验证您的 webhook 后,对话框将关闭。