Slack用アプリ Incoming WebHooks を使って、PHPからcURLでコールしたメッセージをSlackの特定のチャンネルへ新規メッセージとして投稿するMEMOです。
Slackの設定
SlackアプリのサイドメニューのApp欄から「アプリを追加する」か、なければ「その他」のAppで「Incoming Webhock」を検索し、追加。
Webブラウザへと移動し、「Slackに追加」
追加するチャンネルを選んで「Incoming Webhockインテグレーションの追加」
Webhock URLが発行されます。
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('アクセスがありました。');
東京造形大学卒業後、マクロメディア(現アドビ)に入社。QAやテクニカルサポートマネージャーとしてFlash、DreamweaverなどのWeb製品を担当。独立後、2007年に虫カゴデザインスタジオ株式会社を設立。2021年東京三鷹を拠点に。最近は、CakePHP、Laravel、Unity、ZBrush、Modo、Adobe Substance 3D、Adobe Firefly、Xcode、Firebaseにフォーカスしています。モバイルアプリ開発情報を主としたブログ「MUSHIKAGO APPS MEMO」の中の人。