LINE Bot API で匿名グループチャット作った
現在無料で試せる LINE Bot API はトライアルということもあり、企業が利用している LINE Bot (Business Connect) と比べると機能が制限されています。これは公開されている API リファレンスを見比べると分かります。
- Trial Bot LINE Developers - BOT API - API reference
- 通常 Bot LINE Developers - Business Connect reference - API reference
細かな制限はいろいろありますが、大きなところとしてグループチャットに参加できません。
しかし、グループチャットの中に Bot が 1 つ居るだけで便利というのは、 IRC や Slack の Bot を開発・利用したことがある人なら容易に想像できると思います。そう、 Chat Bot と言うからには、どうしても LINE のグループで自由な Bot を動かしたいのです。
友だち追加は複数人行なえるのだから LINE Bot API 利用アカウントを仲介してグループチャットを作ってみました。単なるグループチャットでは面白くないので、とりあえず入室した人の名前は Gimei を使って適当な名前を割り当ててみました。
LINE Bot API では受信できるメッセージと送信できるメッセージに違いがあります。メッセージを転送するに当たっては以下の部分に留意する必要があります。
- スタンプは受信できるが、送信は決められたものだけ
- Sticker の項目 のリストにある初期スタンプしか送れない
- Contact (連絡先) は受信できるが、送信はできない
通常スマートフォンなどから利用する LINE と違って Bot API なら以下のメッセージが送信できます。
- Rich Message
- 企業アカウントなどを利用すると良く送られてくる Link が付いている画像
- 送るのは難しい (位置指定などのパラメータが複雑)
つまり、 LINE Bot API を利用すればグループチャットとして以下の機能を実装することができます。
- テキストメッセージの送受信
- 画像、音声、動画の送受信
- 位置情報の送受信
- ショボいスタンプ
これだけあれば LINE として成り立ちます。そして、 LINE Bot API の便利なところは mid
を複数指定してメッセージを送る API がある点です。つまり、 1 http request だけで全ユーザにメッセージの配送が出来ます (本当は 150 個までしか指定できませんが、 TrialBot では 50 人までしか指定することは無いと思うので) 。
と言うわけで、 LINE Bot API を使えば LINE のようなものを再実装するのも数時間で出来るという話でした。
今後はこのグループチャット上で動く、便利な Bot を実装したいと思います。
追記
その後