GiHub Codespaces で今回の LINE BOT の仕組みをはじめてみる

大事なこと

  • Chrome ブラウザのなるべく最新版でアクセスしましょう

GitHub Codespaces とは

GitHub Codespaces は、クラウド上に開発環境を提供することで環境設定の手間を省き、どこからでも安全に開発を行うことができる便利なツールです。

今回は LINE BOT サーバー側の仕組みはなるべく手軽に立ち上げられるように GitHub Codespaces を採用しています。

df3b5938f05d8b487e6c73d496c21dd4

個人アカウントの無料枠や使用量の確認

8d4412849bd88c209424edd608476ffd

今回作る仕組み

image.

まず、シンプルに GiHub Codespaces で LINE BOT のサーバーを立てることで、ユーザーから見た LINE BOT でオウム返しができています。

使う Git リポジトリ

すでに、今回の LINE BOT をはじめる環境は作ってあります。

https://github.com/1ft-seabass/dhw-ppB-m5stack-linebot-codespace-2024

3174df1d4d841e72f42c66b16814cd2a

こちらを使います。

GiHub Codespaces で構築開始

https://github.com/1ft-seabass/dhw-ppB-m5stack-linebot-codespace-2024 に Chrome ブラウザでアクセスします。

Codespaces は、それ以外のブラウザだと、うまく動作しない可能性があるので Chrome で動かしましょう。

7feaa3f1df8505a4fcf74b222d840808

Code ボタンをクリックします。

8f6a286108378103ac8d30df6f811ef4

Codespaces タブをクリックします。Create codespace on main をクリックします。

47b24d3be5b687f60383455a75898788

Setting up your codespace という画面が出て構築されます。

73e7becb0c7e3ab560a214fd4fcac620

ブラウザ上で Visual Studio Code が起動し、今回の仕組みを反映した環境が起動しました。

環境構築時に npm install で自動インストールされている

80f798b89549c383f943e186fd59ffeb

package.json に、すでに今回使う express@line/bot-sdk ライブラリについて登録されていますが、環境構築時に npm install で自動インストールされています。

Visual Studio Code 操作画面の紹介

VS Code には、フォルダーまたはプロジェクトの完全なコンテキストを参照してアクセスするための十分なスペースを確保しながら、エディターに提供されるスペースを最大化する、シンプルで直感的なレイアウトが付属しています。UI は 5 つの主要な領域に分かれています。

15944e01b4a98ec52bc55931cd2cc250

  • アクティビティバー
    • 左側の端にあり、ビューを切り替えることができ、Git が有効になっている場合の発信変更の数など、追加のコンテキスト固有のインジケーターが表示されます。

4bfb8dfed081b246ea705113ae37760a

  • プライマリ サイド バー
    • プロジェクトでの作業を支援するエクスプローラーなどのさまざまなビューが含まれています。

d814cce244bfd173feea1a5a16d3384c

  • エディタ
    • ファイルを編集するためのメイン領域です。エディタは好きなだけ縦横に並べて開くことができます。

2967ec1e72381c1a16b92dfea6d84f7b

  • パネル
    • エディター領域の下にあるビュー用の追加スペース。デフォルトでは、出力、デバッグ情報、エラーと警告、および統合ターミナルが格納されます。パネルを左右に移動して、垂直方向のスペースを増やすこともできます。

6a15e2237c2845012027e49843c613d9

  • ステータス バー
    • 開いているプロジェクトと編集するファイルに関する情報。

✅ポイント

  • 機能を全部覚える必要はありません。気になる人がいたら、英語ですが https://code.visualstudio.com/docs でいろいろ使い方を調べて試してみましょう
  • 今回は、エクスプローラでファイルを選択し→エディタで編集&保存→パネルでターミナルから実行という流れで行います

プログラムは Node.js という仕組みで動いている

エクスプローラを見てみましょう。今回のプログラム群は Node.js で作られています。

8adc98dbfb57d79abbc6a5be5eefbad8

Node.js は、普段はブラウザで活用されていて、ネット上で文献の多い JavaScript 言語で、Unity でデータのやり取りをするサーバー側、つまりサーバーサイドのプログラムが作成することができます。

また、Node.js と一緒にインストールされる npm は、Node.jsのパッケージ管理ツールです。npmを使うことで、パッケージの依存関係や競合関係を管理してくれるので、パッケージを追加、更新する際は基本的に npm 経由で行うことになります。

また、npm には、Node.js と一緒に入ってすぐ使える便利なライブラリがたくさん登録されています。今回は Express https://expressjs.com/ という便利なサーバー構築ライブラリがインストールされています。公式のドキュメントもわかりやすいですが、とほほのExpress入門 https://www.tohoho-web.com/ex/express.html も日本語でとっつきやすいので、もしカスタマイズしくなった方は参考にするとよいでしょう。

image

すぐに新しいブラウザがもうひとつ開いて、今回起動したサーバーのルートアドレスが表示されます。

作成したBOTのチャンネルシークレットとチャンネルアクセストークンを反映

// 作成したBOTのチャンネルシークレットとチャンネルアクセストークン
const config = {
  channelSecret: '作成したBOTのチャンネルシークレット',
  channelAccessToken: '作成したBOTのチャンネルアクセストークン'
};

LINE BOT 作成手順 で、作成したBOTのチャンネルシークレットとチャンネルアクセストークンを、それぞれ反映します。

わりと編集中にシングルクォーテーション消してしまったり、channelSecretとchannelAccessTokenを、逆に書いたりしてハマるので気をつけましょう。

M5Stack から来るプッシュ通知の送り先のユーザーIDを反映

まず、プッシュ通知の送り先であるこの BOT のユーザーIDを LINE Developers から取得します。

https://developers.line.biz/ja/

こちらからログインしましょう。

image

今回使っている BOT のチャネル設定に移動します。

image

下にスクロールしていくと あなたのユーザーID という項目があるので、これをメモしておきます。

// プッシュメッセージで受け取る宛先となる作成したBOTのユーザーID'
const userId = '作成したBOTのユーザーID';

作成したBOTのユーザーID の部分を先ほどメモしたユーザーIDで書き換えます。

ここまで設定出来たらファイルを保存します。

app.js を起動してみる

これで準備完了です。

node app.js

ターミナルに移動して、こちらのコマンドで app.js を起動してみます。

動作確認

99998b8e11f94fd643339c3b4650bec1

このように起動します。

f866a5573ffa68b97065dae98a93cc20

ポートタブをクリックします。

5960b59498cc8ab1975a8121337df714

いま app.js で開いている LINE BOT サーバーの状態が表示されます。

298a8da84abc747ea38af7f21e572f31

ローカルアドレス項目の、こちらのアイコンをクリックすると別のタブが開いて、サーバーから応答されて動作確認ができます。

556038e4b801e67095f65836edce0133

このように表示されます。

サーバー URL の公開

表示範囲が Private のままだと、自分の GitHub アカウントでログインした状態でないと見ることができるないので LIBE BOT サーバーが外部から動かせないので、公開します。

7753a846d95838ae21eebee5c87dc983

表示範囲のところで右クリックして ポートの表示範囲 > Public とクリックします。

934703d80b3fe5e2c363377e64b0b7b5

表示範囲が Public になっていることを確認します。

今回のサーバー URL をメモ

ポートのローカルアドレス項目のこちらのボタンをクリックすると URL がコピーできます。

50009c3e8e4fb57f588553989108b347

ブラウザのアドレスを見て今回のサーバー URL をコピーしておきましょう。

Webhook URL の更新

LINE Developer コンソールの自分の LINE BOT 設定に戻ります。

image

今回使っている BOT の Messaging API 設定に移動します。

image

Webhook URL の項目に移動して以下の手順を行います。(大事な設定なので、一息タイミングを置いています)

さきほどの URL に /webhook をつけて反映

image

さきほどの URL https://**********.github.dev/webhook をつけて Webhook URL の項目に入力して更新ボタンをクリックします。

image

同時に Webhook の利用がオンになっていることも確認しましょう。

BOT にオウム返しが来るか確認しましょう

一旦ここでちゃんと動いているかオウム返しを確認してみましょう。

image

こちらで設定は出来ました。

LINE BOT のプレゼンテーション時に便利なPC版アプリ

LINE BOT のプレゼンテーション時に便利なPC版アプリを紹介します。画面共有時にも状況が見せやすくなるのでおススメです。

image

こちらをみつつ、インストールしていきましょう。

image

QR コードログインがおススメです。

次にすすみましょう

左のナビゲーションから「M5Stack + LINE BOT 連携」にすすみましょう。

results matching ""

    No results matching ""