PhpからSlackへ通知

Slack用アプリ Incoming WebHooks を使って、PHPからcURLでコールしたメッセージをSlackの特定のチャンネルへ新規メッセージとして投稿するMEMOです。

Slackの設定

SlackアプリのサイドメニューのApp欄から「アプリを追加する」か、なければ「その他」のAppで「Incoming Webhock」を検索し、追加。

01

Webブラウザへと移動し、「Slackに追加」

02

追加するチャンネルを選んで「Incoming Webhockインテグレーションの追加」

03

Webhock URLが発行されます。

04

PHPで記述

Slackへ通知したい箇所へ以下の記述。呼び出されるとSlackへメッセージが投稿される様になります。

function callSlack($message){
    $url = "https://hooks.slack.com/services/XXXXXXX";
    $message = array(
        "channel" => "#チャンネル名",
        "text" => $message
    );
    $ch = curl_init();
    $options = array(
        CURLOPT_URL => $url,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_SSL_VERIFYPEER => false,
        CURLOPT_POST => true,
        CURLOPT_POSTFIELDS => http_build_query(array(
            'payload' => json_encode($message)
        ))
    );
    curl_setopt_array($ch, $options);
    curl_exec($ch);
    curl_close($ch);
}
callSlack('アクセスがありました。');
スポンサーリンク