LINE さんから Bot が作れる API がリリースされたということなのでikachanと昔なつかしYappocallの LINE 版を作ってみました。
実物はこちらhttp://yappocall.yappo.jp/
初代 Yappocall は APNs で実装してましたが、今度は LINE を使ってるので僕からのお知らせが表示されてて双方向インタラクションな未来が来てる!
LINE の開発者画面で Bot の作成を行い必要な設定を済ませた後、 Bot 連携するために必要な情報をソースコードに書いて実行するだけで簡単に ikachan のような単純な Web API が設置出来ます。
ソースコードの設定以外にも必要な作業があって、作成した LINE Bot を友だちに追加してから API で利用する appname の登録を行い api_token を生成する必要があります。
ln.yappo を利用した bot は以下の様なコマンドを受け付けているので、 add コマンドで appname の登録と api_token の取得が出来ます。 $SECRET は lnyappo.pl の中で設定した、連携時に使うパスワードのようなものです。知らない人には API の利用をさせないという安全弁です。
ln.yappo Help 1. add > $SECRET add $yourAppName 2. delete > $SECRET del $yourAppName 3. send message to callback url > $SECRET send $yourAppName $message 4. list > $SECRET list 5. help > $SECRET help
appname と api_token を lnyappo.pl に設定すると本格的に利用可能になるので API を呼ぶでも良いですし、立ち上げた http server にアクセスすると簡単にメッセージを送るフォームが出てくるので、それを利用すると以下の様な感じで LINE にリアルでメッセージが届きます。
これだけでもいいんですが ln.yappo には、LINE で発言したテキストを ln.yappo の Web UI で設定した callback url に送信する事が可能になってるので、より LINE らしいかたちの ikachan になりました。
たとえば
特に現状の制限だと、一人あたり1個の Bot しか作れないとのことなので、この ikachan を Hub にして各種システムと連携すると、効率的に LINE Bot で遊べる事でしょう。
という理由もあって appname を登録して一人あたり複数の api_token を払い出し、複数の callback url を設定できる仕組みにしておきました。
ln.yappo を活用したサンプルとして Yappocall という、 Web 上で POST したメッセージを紐付けた人の LINE に送信する。 LINE から送信したお知らせを Web 上に表示するという簡単なアプリも書いてみたので参考にしてください。
ikachan は IRC ベースなので LINE 向けの Bot とは意識する場所が大きく違っていますが、差異に気をつければ古き好き IRC Bot 職人の皆様も簡単に LINE Bot がかけると思います。
烏賊ソース
https://github.com/yappo/ln.yappo
どうぞご利用下さい。