为我的应用程序编写botuser,并在向用户提供响应的同时遗漏了最后一步。
因此,一旦用户进行了操作,我就存储了信息响应。这是
{"ok":true,"access_token":"xoxp-SENSITIVEDATA_MAIN_ACCESSTOKEN-","scope":"identify,bot","user_id":"U2YT_SENSITIVE","team_name":"gsuresh","team_id":"T2Y_SENSITIVE","bot":{"bot_user_id":"U2Z_SENSITIVE","bot_access_token":"xoxb-SENSITIVE_BOT_ACCESSTOKEN"}}
从我的其他客户端使用该信息我试图从我的机器人中击中用户,但没有成功。这是我到目前为止所尝试的内容
尝试1:
url:https://slack.com/api/chat.postMessage
有效载荷:
{
"token": "xoxb-SENSITIVE_BOT_ACCESSTOKEN", // used bot accees token
"channel": "U2YT_SENSITIVE", // user id
"text": "Whats up dude? I am bot",
"as_user" :true
}
回复:
{
"ok": false
"error": "not_authed"
"warning": "missing_charset"
}
尝试2:
url:https://slack.com/api/chat.postMessage
有效载荷:
{
"token": "xoxp-SENSITIVEDATA_MAIN_ACCESSTOKEN", // used main accees token
"channel": "U2YT_SENSITIVE",
"text": "Whats up dude? I am bot",
"as_user" :true
}
回复:
{
"ok": false
"error": "not_authed"
"warning": "missing_charset"
}
可能是什么原因?我没有留下任何线索。有帮助吗?
答案 0 :(得分:1)
这不起作用,因为你错过了正确的范围。
要发布消息,您的令牌需要具有范围chat:write:bot
或chat:write:user
,具体取决于您希望如何发送消息。如果你想让它来自机器人,请使用" chat:write:bot"显然和" as_user" API调用为false。
它与使用GET或POST调用API无关。两者都有效。
请参阅chat.postMessage方法docu中的作者身份部分。
答案 1 :(得分:-1)
您无法向该API发布请求。不幸的是,这是一个获取请求,这种敏感数据非常奇怪。这是完整的获取请求卷曲
var url ="https://slack.com/api/chat.postMessage?token="+botaccesstoken+"&channel="+user+"&text="+message+"&as_user=true&pretty=1";
这将有效。