狠狠撸

狠狠撸Share a Scribd company logo
https://bit.ly/2NghVzg
GoogleAppsScriptとLinebotで
予約管理botを作った
at Shibuya on 2018/10/2
https://supporterzcolab.com/event/546/
WATANABE Naoki
1
https://bit.ly/2NghVzg 2
https://bit.ly/2NghVzg
Contents
● Google Apps ScriptでSpread sheetを扱う
● Line Messaging APIを使っておうむ返しbotを作る
● spreadsheetとLine botで予約管理をする
3
https://bit.ly/2NghVzg 4
1 message
2 Post
5 Post
6 Message3 データ操作
4 データ操作の
結果
https://bit.ly/2NghVzg
Google Apps Script
5
https://bit.ly/2NghVzg
Google Apps Scriptとは
● Googleが提供する11のサービス (狠狠撸, Spreadsheet, Calendar, Map, …) を操
作することができる
● オンラインで編集できる
● javascriptにしたがう (ただし、windowやES6には対応していない)
6
https://bit.ly/2NghVzg
Good and Bad of GAS
● プロトタイプ作成が容易
● 無料
● nginxやapacheを触らず済む
7
● Git管理に対応していない (有志が
作ったツールはある)
● spreadsheetにはatomicityがない
● ファイルをフォルダに分けられない
● spreadsheetに対するSQLを自作
する必要がある
https://bit.ly/2NghVzg
GASを使ってみる
- Getリクエストに対してjsonを返す -
8
https://bit.ly/2NghVzg 9
https://bit.ly/2NghVzg
doGetおよびdoPostは予約語。
10
https://bit.ly/2NghVzg 11
https://bit.ly/2NghVzg 12
https://bit.ly/2NghVzg 13
https://bit.ly/2NghVzg 14
https://bit.ly/2NghVzg 15
ソースコードの編集後はverを新しくする必要がある
https://bit.ly/2NghVzg
spreadsheetをデータベースに見立て
CRUDオペレーションを実装する
16
https://bit.ly/2NghVzg
createを実装する
17
https://bit.ly/2NghVzg 18
1 message
2 Post
5 Post
6 Message3 データ操作
4 データ操作の
結果
https://bit.ly/2NghVzg 19
https://bit.ly/2NghVzg 20
https://bit.ly/2NghVzg 21
https://bit.ly/2NghVzg 22
https://bit.ly/2NghVzg 23
https://bit.ly/2NghVzg
createをtestする
24
https://bit.ly/2NghVzg 25
https://bit.ly/2NghVzg 26
https://bit.ly/2NghVzg 27
https://bit.ly/2NghVzg 28
https://bit.ly/2NghVzg 29
https://bit.ly/2NghVzg
他のオペレーションはgistにあります
Read, Deleteについてはgistに掲載。Updateは省略した。
30
https://bit.ly/2NghVzg
LINE messaging API
31
https://bit.ly/2NghVzg 32
https://bit.ly/2NghVzg 33
https://bit.ly/2NghVzg 34
1 message
2 Post
5 Post
6 Message3 データ操作
4 データ操作の
結果
https://bit.ly/2NghVzg
おうむ返しbotを作る
35
https://bit.ly/2NghVzg
LINE DEVELOPER CONSOLEでbotを登録
https://developers.line.me/ja/
36
https://bit.ly/2NghVzg 37
https://bit.ly/2NghVzg 38
https://bit.ly/2NghVzg 39
https://bit.ly/2NghVzg
LINEで「予約作成」と入力すると
一週間後の日時がspreadsheetに
追加されるようにする
40
https://bit.ly/2NghVzg 41
1 message
2 Post
5 Post
6 Message3 データ操作
4 データ操作の
結果
https://bit.ly/2NghVzg 42
https://bit.ly/2NghVzg
参考
Google Apps Script Doc
https://developers.google.com/apps-script/reference/document/
Line Messaging API Doc
https://developers.line.me/en/reference/messaging-api/
CRUD Operation in Google Apps Script and Line Bot
https://gist.github.com/asterisk37n/7ba08590a7ab461a6e5d0552f8801af5
43

More Related Content

LINE bot with Google Apps Script to manage reservation