Gitpod で LINE BOT と M5Stack 連携を学ぶ
Gitpod とは
新しい開発環境を数秒で自動で構築しブラウザ上で起動するサービスです。開発環境のベースは既存の Git リポジトリをベースにすることができ、たとえば GitHub のようなサービスから開発環境をすぐに構築することできます。
手元の PC で環境構築する大半のことを準備してくれる
たとえば、前回学んだ M5Stack から LINE BOT にメッセージを送ろう ですが、手元のPCで以下の準備をします。
- Node.js の開発環境を構築する
- OS ごとに設定が違い、既存のインストールしたもの影響を受ける可能性がある
- Visual Studio Code をインストールしてエディタを準備する
- ダウンロードなどそれなりの時間
- フォルダを作成して Visual Studio Code ではじめる
- フォルダを作るだけだが開発しやすい場所にする必要がある
- LINE BOT を動かすために
express
や@line/bot-sdk
ライブラリをインストールnpm install
すればよいが、場合によっては、インストール時にエラーが出たり、ライブラリの不足による追加インストールなどがある
- app.js のソースコードをコピーアンドペーストあるいは自分でソースコードを準備
- 各プロジェクトに応じたプログラムが動く
といったことを済ませてから、ようやく開発をすることができます。
開発したものの URL の公開も準備してくれる
また、LINE BOT が出来上がった時に ngrok を使って公開した URL を発行できるようにしますが、そういった部分も Gitpod も替わりに準備してくれます。
LINE BOT とは
LINE BOT は、LINE 上で動作する BOT です。後述する Messaging API を使ってあなたのサービスとLINEユーザーの双方向コミュニケーションを可能にします。
LINE BOT と LINE Notify の違い
ポイントは双方向コミュニケーションができるかできないかの違いです。
LINE BOT は双方向コミュニケーションが可能で、IoT やデバイスを組み合わせると、現実世界と色々なかかわりができます。
なにかの特定のメッセージをユーザーが送ると LINE BOT が反応しセンサーから現実世界のデータを受け取って LINE に返答するようなことができます。動力のあるもの(アクチュエータ)と絡めると遠隔操作ができて自分の制作物でできることがひろがります。
もちろん、LINE Notify と同じように通知の役割もできます。デバイスが現実世界のデータをセンサーで取得して、データが何らかの値を越えた場合に通知するような仕組みもできます。
LINE BOT の仕組み
- Messaging APIの概要
Messaging APIを使って、ユーザー個人に合わせた体験をLINE上で提供するボットを作成できます。
作成したボットは、LINEプラットフォームのチャネルに紐づけます。チャネルを作成すると生成されるLINE公式アカウントをボットモードで運用すると、LINE公式アカウントがボットとして動作します。
Messaging APIの仕組み https://developers.line.biz/ja/docs/messaging-api/overview/#how-messaging-api-works
https://developers.line.biz/ja/docs/messaging-api/overview/#how-messaging-api-works より
Messaging APIを使って、ボットサーバーとLINEプラットフォームの間でデータを交換できます。リクエストは、JSON形式でHTTPSを使って送信されます。
- ユーザーが、LINE公式アカウントにメッセージを送信します。
- LINEプラットフォームからボットサーバーのWebhook URLに、Webhookイベントが送信されます。
- Webhookイベントに応じて、ボットサーバーからユーザーにLINEプラットフォームを介して応答します。
今回は YOUR SYSTEM と表現されている、Webhookイベントに応じて、ボットサーバーからユーザーにLINEプラットフォームを介して応答するサーバー部分をつくります。
- Messaging APIでできること・料金について
次にすすみましょう
左のナビゲーションから「Gitpod で LINE BOT」にすすみましょう。