传入的Slack Webhook URL组件

时间:2020-07-21 12:09:39

标签: webhooks slack slack-api

传入的Slack Webhook URL看起来像https://hooks.slack.com/services/aaaaa/bbbbb/ccccc-什么是aaaaa,bbbbb,ccccc。请让我们知道是否可以基于此Webhook查找Slack频道名称和工作空间名称是什么< / p>

1 个答案:

答案 0 :(得分:0)

仅基于传入的Webhook(作为字符串),除了以上注释中提到的team_id之外,都是不可能的。

根据我的经验,只有启用了入网的钩子和公开发行的应用程序,信息仅在用户使用标准OAuth流程安装应用程序后才提供响应。请记住,响应会根据应用程序的范围而变化,但是如果您要求incoming-webhook,您将获得channelurl,这是传入的Webhook URL。您还将获得team_nameteam_id,这是工作区信息。您可以在https://api.slack.com/messaging/webhooks#incoming_webhooks_programmatichttps://api.slack.com/authentication/oauth-v2上找到详细的说明。

这是OAuth响应json的示例。

{
"ok": true,
"access_token": "xoxp-XXXXXXXX-XXXXXXXX-XXXXX",
"scope": "identify,bot,commands,incoming-webhook,chat:write:bot",
"user_id": "XXXXXXXX",
"team_name": "Your Workspace Name",
"team_id": "XXXXXXXX",
"incoming_webhook": {
    "channel": "#channel-it-will-post-to",
    "channel_id": "C05002EAE",
    "configuration_url": "https://workspacename.slack.com/services/BXXXXX",
    "url": "https://hooks.slack.com/TXXXXX/BXXXXX/XXXXXXXXXX"
}

因此,据我所知,简而言之,无法单独从webhook获取信息,但是还有另一种选择,这不是问题的直接答案是扩展应用程序并包括Web api权限和那么没有什么可以阻止您直接从工作区中独立于入网挂钩请求信息。