Здесь я попытался прикрепить интерактивные кнопки сообщений из веб-приложения к провалу, я уже публиковал сообщение, чтобы провисать с помощью JSON.Теперь, как я могу получить значение кнопки Approve, когда утверждаю в Slack для php / веб-приложения?
Функция
function slacktest($message, $room = "channel-name")
{
$room = ($room) ? $room : "channel-name";
$data = "payload=" . json_encode(array(
"channel" => "#{$room}",
"text" => $message,
"username" => "Beny",
"attachments" => array([
'fallback' => 'Hey! See this message',
'pretext' => 'New Approval Request ! ',
'color' => '#ff6600',
'actions' => array
(
[
'name' => "one",
'text' => "Approve",
'value' => '1',
'url' => 'insertapprove.php',
'type' => 'button',
'confirm' => [
'title' => 'Confirm',
'text' => 'Your Leave Requested has been Approved',
'ok_text' => 'Yes',
'dismiss_text' => 'No',
]
],
[
'name' => "two",
'text' => "Reject",
'value' => '2',
'type' => 'button',
'confirm' => [
'title' => 'Confirm',
'text' => 'Your Leave Requested is Cancelled',
'ok_text' => 'No',
'dismiss_text' => 'No',
]
]
)
]),
"icon_url" => 'http://localhost/images/nestor-icon.png'
));
$ch = curl_init("https://hooks.slack.com/services/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");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$result = curl_exec($ch);
curl_close($ch);
echo "Slack response : ". $result ;
return $result;
}
вызов функции
$message2 = "Tes Channel 2";
$channel2 = "random";
slacktest($message2,$channel2);