У меня есть скрипт Google, работающий как webapp для обработки серверной части Slack-приложения.
Приложение было аутентифицировано, и у меня есть токен OAUTH.
В настоящее время я могу публиковать сообщения на канале с помощью кнопок, используя chat.postMessage, используя вышеупомянутый токен.
URL-адрес действий указывает на мое веб-приложение и подключается через doGet, из этого ответа я создаю объект JSON.
var response_payload = {
"token" : access_token,
"ts" : message_ts,
"channel" : channel_id,
"text" : "Approved! you are a winner!"
})
response_url = "https://slack.com/api/chat.update";
sendToSlack_(response_url, response_payload)
отправлено через следующую функцию:
function sendToSlack_(url,payload) {
var options = {
"method" : "post",
"contentType" : "application/json;charset=iso-8859-1",
"payload" : JSON.stringify(payload)
};
return UrlFetchApp.fetch(url, options)
}
однако возвращается следующее:
{"ok":false,"error":"not_authed"}
Я не могу найти никакой документации об этой ошибке, кроме следующей
Отправка JSON в Slack в запросе HTTP POST
Однако это относится к запросу chat.postMessage, который в моей реализации работает правильно.
chat:write:bot
областью действия, и хотя она имеет крючком я не пользуюсь, а вместо этого направляю вашиchat.postMessage
иchat.update
. Как ни странно, сейчас все вроде работает .. Я собираюсь опубликовать обновление об этом .. - person Jamie   schedule 08.12.2016application/x-www-form-urlencoded
. - person Ivan Didur   schedule 30.06.2018