google-apps-script - 是否可以删除由松弛 channel 中的谷歌脚本制作的机器人发出的消息?

标签 google-apps-script google-sheets slack slack-api

我有一个谷歌脚本,可以将消息从谷歌脚本直接发送到 slack。我有一个问题,我无法删除我制作的机器人发送到松弛 channel 的消息。我们是否可以删除此类操作发出的消息?我联系了 slack 支持但没有真正帮助告诉我看看 https://api.slack.com/webhttps://api.slack.com/methods/chat.delete

作为 slack 服务器的非所有者或管理员,有没有什么方法能够通过我们从 google 脚本编码的机器人创建删除操作,以允许机器人发送特定消息的删除按钮?

我正在使用一个 webhook 发送到我的任务的特定 channel ,我的代码以如下所示的结尾:

var options = {
    "method": "post",
    "contentType": "application/json",
    "payload": JSON.stringify(payload)
  };
  
  return UrlFetchApp.fetch(url,options);
} 

最佳答案

使用 chat.delete 方法,您通常可以删除自己的消息。但是,您的机器人将无法删除您的消息,因为它们是通过 webhook 创建的。这些消息不再属于 bot 用户,而是属于 webhook 应用程序。 (它可能仍然适用于应用程序的用户 token ,并假设您使用的是来自您自己的应用程序的 webhook,而不是通过 Slack 的 webhook 应用程序)。

因此解决方案是通过 chat.postMessage 发送您的消息,而不是使用 bot token 的 webhook。然后这些消息属于您的机器人用户,您的机器人将能够删除它们。

不过有一个警告。 Workspace 管理员可以禁止用户删除自己的消息(请参阅 here)。在这种情况下,删除消息的唯一方法是成为管理员或所有者。

关于google-apps-script - 是否可以删除由松弛 channel 中的谷歌脚本制作的机器人发出的消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62609814/

相关文章:

javascript - 获取Google电子表格中二维矩阵的单元格

python - Google API(gmail 和电子表格): what more should I set up, 或者知道我缺少什么设置?

arrays - 谷歌表 : How to find the length of array?

javascript - 在运行时使用 GAS 调整 HTML 模态的大小

slack - Slack 是否提供对 IP 白名单的支持?

slack - 只读 Slack channel (线程除外)

google-apps-script - 具有大量行的响应时间谷歌电子表格

google-apps-script - 如何在 Google 表格中使用复选框和脚本隐藏和取消隐藏列?

slack-api - 在 Slack 中,我可以在传出的 webhook 中使用机器人的消息文本吗?

google-apps-script - Google 表格的活跃用户与有效用户