読者です 読者をやめる 読者になる 読者になる

LINE Bot API で匿名グループチャット作った

現在無料で試せる LINE Bot API はトライアルということもあり、企業が利用している LINE Bot (Business Connect) と比べると機能が制限されています。これは公開されている API リファレンスを見比べると分かります。

細かな制限はいろいろありますが、大きなところとしてグループチャットに参加できません。

しかし、グループチャットの中に Bot が 1 つ居るだけで便利というのは、 IRC や Slack の Bot を開発・利用したことがある人なら容易に想像できると思います。そう、 Chat Bot と言うからには、どうしても LINE のグループで自由な Bot を動かしたいのです。

友だち追加は複数人行なえるのだから LINE Bot API 利用アカウントを仲介してグループチャットを作ってみました。単なるグループチャットでは面白くないので、とりあえず入室した人の名前は Gimei を使って適当な名前を割り当ててみました。

LINE Bot API では受信できるメッセージと送信できるメッセージに違いがあります。メッセージを転送するに当たっては以下の部分に留意する必要があります。

  • スタンプは受信できるが、送信は決められたものだけ
  • 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 を実装したいと思います。

追記

その後