与机器人的环聊聊天不会 post 发送给 pub/sub 的消息

Hangout chat to a bot doesn't post the message to pub/sub

我遵循了https://developers.google.com/hangouts/chat/how-tos/bots-publish

中的步骤

如果我 post 通过 google 控制台进入主题 它在订阅者 https://console.cloud.google.com/cloudpubsub/topics/

的 java 代码中收到

但是与机器人聊天不会 post 将消息发送到 Pub/Sub

帮帮我

如果您无法让聊天机器人向云发送消息,以下是一些可能出错的常见问题 Pub/Sub:

  1. 确保 serviceAccount:chat-api-push@system.gserviceaccount.com 帐户对该主题具有发布者权限。为此,您可以转到 Cloud Pub/Sub dashboard in the cloud console,单击要发布的主题旁边的复选框,在右侧 "Add members" 下的框中键入 serviceAccount:chat-api-push@system.gserviceaccount.com,选择"Pub/Sub Publisher permission," 并单击 "Add" 按钮。如果您没有在侧面看到此面板,您可能需要单击右上角的 "Show Info Panel"。这是突出显示相关部分的页面屏幕截图:

  1. 在bot配置页面中验证主题名称时,请确保指定完整路径,包括项目名称。主题名称的格式应为 projects/<project name>/topics/<topicname>.

  2. 确保订阅存在,然后再尝试与您的机器人聊天。在创建订阅之前发布的消息将不会传送到该订阅。

如果你已经走到这一步但仍然无法正常工作,请尝试向你的机器人发送消息,然后使用命令

通过 gcloud 命令行工具拉取它们
 gcloud pubsub subscriptions pull <subscription name> --project <project name>

您应该会看到包含收到消息的 table 输出。如果您可以获得此输出,则消息从 bot 正确流向 Cloud Pub/Sub 主题,然后流向该主题的订阅。