получить значение от одобрения слабину к php - PullRequest
0 голосов
/ 11 июня 2018

Здесь я попытался прикрепить интерактивные кнопки сообщений из веб-приложения к провалу, я уже публиковал сообщение, чтобы провисать с помощью 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);

1 Ответ

0 голосов
/ 12 июня 2018

Чтобы вернуть «значение обратно» после того, как кто-то нажал кнопку, Slack отправит запрос в ваше приложение.Для этого Slack должен знать URL вашего приложения, а ваше приложение должно иметь возможность обрабатывать интерактивные запросы сообщений от Slack.

Поэтому вам необходимо определить приложение Slack.Там вы можете указать URL вашего приложения (называемый «Запросить URL» в разделе «Интерактивные компоненты»), который Slack будет вызывать после нажатия кнопки.

Подробнее см. Ответ на сообщение действияв официальной документации .

...