Мне непонятно после прочтения документации Slack по поводу Incoming Webhooks. Похоже, что есть какие-то двусмысленности в отношении входящих веб-хитов и постов через их API чата. Похоже, если я позвоню из https://my -application.yxz / api / notify? Key = 123123123123 и оттуда отправлю сообщение Slack, то кнопки действий Slack ответят на тот же URL, но яне могу подтвердить это.
https://api.slack.com/docs/message-attachments
Я успешно отправляю сообщения на указанный канал, но не могу понять, как получить ответ или изменитьURL, на который действия будут отправлять свои полезные данные. Это вообще возможно?
Для контекста кода ниже я использую Laravel. В идеале я хотел сохранить только URL-адрес Slack Webhook в настройках пользователя для местоположения своего магазина, чтобы они могли получать уведомления Slack, вызванные попаданием нашего API.
Это полезная нагрузка, которую я отправляю в webhook ион работает нормально, однако я хотел бы добавить функциональные кнопки и опубликовать полезную нагрузку на моем внешнем сайте. Я не уверен, что Incoming Webhooks - даже правильный подход. Может кто-нибудь пролить свет на это?
# $helpdesk => contains webhook URL and other details
# $prompt => just some text
# $prompt_id => id associated with prompt object passed into the function this is found in
# $device => the source of this prompt
$payload = json_encode([
"text" => "A customer at $device->name requires attention",
"username"=>"Our Alert Thing",
"icon_emoji"=>":wave:",
"attachments"=> [
[
"fallback"=> $prompt,
"author_name"=> "Customer @ $device->name",
"title"=> $prompt,
"text"=> "Let them know if you can help",
"callback_id"=> "csprompt_".$prompt_id,
"color"=> "#24ACE2",
"actions"=> [
[
"name"=> "action",
"type"=> "button",
"text"=> "I call dibs",
"style"=> "primary",
"value"=> "helping",
],
]
]
]
]);
$res = $client->post($helpdesk->slack_webhook, ['body'=>$payload]);