鹿児島らぐ のLingr room を作ってみたので,そこにML のSubject を流すbot を設置してみました.
こちらにページに作り方が載っています.bot用のAPI があるので楽々です.
- “Home · lingr/lingr Wiki” https://github.com/lingr/lingr/wiki
bot 登録
以下のページでbot を登録します.
-
“Lingr” http://lingr.com/bot/create
- Bot id : 任意
- Callback URL : このURL にroom の内容が飛んできます.その内容から反応したりすることが出来ます.とりあえず最低限HTTP で200 を返すものを用意して指定.
メッセージ受信用のcgi を作成
ひとまず受け答えはしないつもりなのでHTTP 200 を返すだけのScript を用意.
投稿テスト
get だけで投稿できるので試しに投稿してみます,
以下のページで情報が入手できます.
“Lingr” http://lingr.com/developer
bot_verifier は載っていませんが,bot ID とSecret から求められます.
KagolugML_bot と xxxxxxxxxxxxxxxxxxxxxxxxxxx を結合した文字列をsha1 にかけます.
$ echo -n 'KagolugML_botxxxxxxxxxxxxxxxxxxxxxxxxxxx'|sha1sum
b3c03556dca8dfffb8c509cb709817044c98ad87 -
この場合 b3c03556dca8dfffb8c509cb709817044c98ad87 が bot_verifier です.
- 投稿先のroom : kagolug
- bot ID : KagolugML_bot
- bot_verifier : b3c03556dca8dfffb8c509cb709817044c98ad87
以下のようにアクセスしてみるとroom にメッセージが投稿されました,
メールからLinger に投稿
鹿児島らぐのML だけを登録したメールアドレスを用意.そのアドレスの .forward に以下のSctipt を呼ぶように "|exec /home/mk/bin/ml2lingr.pl"
のような感じで設定しておきます,後はメールが届くとこのScriptが呼ばれてRoom に投稿されます.
※bot_verifier はダミーです.
てことでirc のbot とか書くよりずっとお手軽に書けました.
今回は単に投稿するだけですが,cgi でroom のメッセージを解析して反応するとかするとbot らしくなりますね.