こんにちは、熊本事業所のKとTです。私たちはLINEBOTについて説明したいと思います。

BOTとは人間の代わりに作業を行ってくれる自動化プログラムの総称です。
BOTにも様々な種類がありますが、LINEBOTはLINE上でユーザーの発言に対して自動返信を行う、チャットボットに分類されます。

皆さんはLINEBOTと聞いて何を思い浮かべましたか?

企業が定期的にプロモーションを行うBOTや、発言を他の言語に素早く変換してくれる翻訳BOT、AIを用いて自然な会話を行えるBOTなど、一度は利用したことがあるのではないでしょうか?

今回はLINEBOTの自動返信の仕組みについて解説していきたいと思います。

まず、ユーザーがLINEBOTへメッセージを送信します。
送信されたメッセージはLINEサーバを通り、BOTはそれをイベントとして取得します。

イベントにはユーザーの名前やID、リプライトークンが含まれており、
それを取得したBOTは返信プログラムを実行します。
リプライトークンは、特定のユーザーに返信するために使用されます。
取得したユーザーの名前を使うと、BOTが名前で呼びかけるような返信もできますね。

更に、BOTはメッセージだけでなく、
ユーザーが起こした動き(BOTと友達になる、グループに招待する、など)もイベントとして受け取ることができます。
皆さんも公式アカウントを友達登録した際、「登録ありがとうございます」という内容のメッセージを受け取ったことがあると思います。
これは、友達登録イベントを受け取ったBOTが、返信プログラムを実行しているからです。

ここまでBOTがイベントを取得する、と説明してきましたが、そのために必要なのがAPIです。
APIとはApplication Programming Interfaceの略で、プログラムを構築するために必要な機能を呼び出すものです。
また、APIはwebhookを用いてBOTへ中継しており、メッセージのリアルタイム受信を可能にしています。

APIを使うことで、テキスト形式での返信はもちろん、ユーザーに選択してもらうボタンを出現させたり、
画像とテキストを同時に表示したりできます。
また、最近のバージョンアップにより、クイックリプライ機能という、画面下に小さなボタンを出すことが出来るようになりました。
ボタンを押すだけでカメラロールを起動、位置情報の送信、返信、などが可能になり利便性の向上が期待されています。

このように様々な機能を持つLINEBOTは、LINE@アカウントを取得すると個人でも作ることができます。
APIの詳しい説明は「LINE Developers」というサイトに掲載されています。
説明以外にも、各言語ごとのコードの例や、実際に表示したいボタンのシュミレーションなども行うことができます。
興味を持った方は作ってみてはいかがでしょうか。