LINE Botって?
LINE Botは自治体含め,様々なところで自動応答サービスとして普及しています.
中でもお店の予約にLINE Botを組み込みたい!という要求は多いようで...
こんなサービスが有るくらい,一般的に普及しています.
でももちろん,お金をかけるのは嫌!!ってこともありますよね...
そこで無料ツールだけでかんたん予約システムを作ってみました.
使うもの
LINE Messaging API
Google SpreadSheet
Google Calendar
Google Apps Script
開発環境
clasp 2.3.0
Google Drive
Line Bot Designer
予約ということでDBは必須です.
今回はわざわざSQL建てるのも面倒くさいので,Google SpreadSheetをDBとして採用しました.
また,実際の入力情報はGoogle Calendarを使用して可視化します.
構成
システムの構成はこんな感じです.
SpreadSheet + Google Apps Scriptを仲介して,カレンダーとLINE Botがやり取りする感じですね.
保存するデータは[ユーザ情報]と[予約情報]です.
[環境情報]は環境設定みたいな感じですね.トークンとかをここに保存します.
Google Calendar の作成
はじめに,予約の予定を入れるカレンダーを作成します.
といってもこれは簡単です.
Google Calendarを開いて,左にあるボタンからカレンダーを追加するだけ.
これで専用のカレンダーが出来ました.
専用カレンダーは画面左端の[マイカレンダー]の中に作成されます.
専用カレンダーの[設定と共有]画面を開いて,下の方にある***[カレンダーID]をメモ***しておきます.
この[カレンダーID]はGASからカレンダーにアクセスするのに使用します.
LINE Botの作成
LINE BotはLINE Developpersから簡単に作成できます.
今回はGASとの連携なので,Messaging APIを有効化します.
LINEとはWebhookでひっかけてやり取りする感じですね.
登録はこんな感じです.
登録したら,Access Tokenが必要なのでここから発行します.
GASが出来たらWebhook URLを登録する必要があるのですが,とりあえずやることは終了です.
SpreadSheetの作成
はじめに,Driveの中にProject用のディレクトリを作成します.
そこにSpreadSheetを作り,以下のようなフォームを作成します.
Configには環境情報を,UsersにはLINEから取得できたUser情報を,Bookingには送られてきた予約情報のRawデータを保存します.
並行人数は,同じ時間に予約がかぶっても良い人数,カレンダーIDとLINE アクセストークンは前述したとおりです.
これでサーバー側(DB)の設定が終わりました.
これにLINE BotをWebhook経由で繋いでいきます.
続く
GASとLINE Botの作成は量が思ったよりも増えてしまったので,次の記事でまとめようと思います.
続きの記事↓
LINE Bot + SpreadSheet + Google Calendar で予約アプリを作る - 2
LINE Bot + SpreadSheet + Google Calendarで 予約アプリを作る - 3