SlackのWebHookが色々捗る
2016年2月15日
Slackへの一方的な通知だと、Webhook URLに向かってPOSTするだけなので、実装自体はめちゃくちゃ簡単。
ただ、そのWebhook URLをどうやって取得するのか?っていうのがむしろこのエントリーのキモですかねw
ブラウザからSlackにログインして、以下から取得。
https://my.slack.com/services/new/incoming-webhook/
以上、このエントリーのキモな部分は終了しましたw
これだけだと、ちょっとあれなんで、送信するサンプルでも。
use strict;
use warnings;
use utf8;
use Furl;
use JSON qw/encode_json/;
my $url = 'https://hooks.slack.com/services/xxxx/xxxx/xxxxxxxxx';
my $data = {
'channel' => "#test-bot",
'username' => 'bot',
'text' => 'これはテスト。これはテスト。',
};
my $f = Furl->new();
my $res = $f->post( $url, ['content-type' => 'application/json'], encode_json($data) );
上記は、Perlのサンプルですが、別にURLにjsonをpostするだけなので、どの言語でもあんま変わらないかと。
エラー通知や、cronの実行結果とか、メールで送られるレポートみたいなのは、お手軽にSlackに飛ばせそうですね。