Google Apps Script の使いどころ
Kyoto GAS日下 毅 ・ 山本 純
2015/10/17 GDG DevFest Kyoto
自己紹介(日下)
所属:株式会社クエステトラ
コミュニティ:Kyoto GAS とりまとめ、FxUG 京都 staff
経験:Google Apps Script は3年半ほど
それ以外に ActionScript、Java、VisualBasic 等
Google+ http://gplus.to/tsuyoshi.kusaka/
Facebook http://www.facebook.com/tsuyoshi.kusaka
Blog http://d.hatena.ne.jp/tk_4dd/
Kyoto GAS について
2013/07 勉強会実施
2013/10 GDG Devfest で Code Lab 実施
2014/11 GDG Devfest で 発表
またも1年ぶりの活動です
https://sites.google.com/site/kyotogas/
所属・製品について株式会社クエステトラ
-2008年創業、BPM 専業
-米調査会社 Gartner 社より Cool Vendor 認定
-Google Apps ユーザ
Questetra BPM Suite http://www.questetra.com/ja/
-クラウド型 BPM ワークフロー
-ノンプログラミングでシステム構築可能
-Google Apps との連携機能あり
-AWS 上でサービス提供
Questetra BPM Suite
※無料お試しあります
省略表記について
Google Apps Script → GAS
Google Sheets(スプレッドシート)→ Sheets
Google Docs(ドキュメント)→ Docs
Google Forms(フォーム)→ Forms
Google Drive add-on → add-on
Google Apps 使ってますか?
GAS ご存知ですか?使ってますか?
GAS って?
-Google Drive(Sheets/Docs/Forms)で利用できる サーバサイドプログラムで、Javascript がベース
ーMicrsoft Excel の VBA のようなものとも言える
-Google Sites でも利用可能
参考:Google の公式サイトhttps://developers.google.com/apps-script/
参考:5分で始める Google Apps Scripthttp://qiita.com/soundTricker/items/cb12c14a937f67632c68
GAS の種類
-Google Drive(Sheets/Docs/Forms)に
付属するケース
-スタンドアロンのケース
過去に GAS で作ったもの
1. Sheets のデータを元に、Questetra 起動
2. Google カレンダを参照して、Questetra 起動
3. Questetra のデータ取得して、Sheets で集計
4. twilio と連携して、電話で Questetra 起動
1
1.メニューから起動 2.Sheet のデータを元に Questetra に
http リクエスト送付
3.http リクエストを受けて処理起動
1
1.スクリプトトリガ(スケジューラ)で起動
2.カレンダのイベントを参照して、Questetra にhttp リクエスト送付
3.http リクエストを受けて処理起動
2
1.スクリプトトリガ(スケジューラ)で起動
2.Questetra API 経由でデータ取得して Sheets に
出力
3.出力されたデータでピボットテーブル表示
3
2.http リクエストを受けて話す内容を XML で返す
5.http リクエストを受けて押された番号を元にQuestetra
にhttp リクエスト送付
1.電話を受けてhttp リクエスト送付
3.XML を元に音声で案内
4.電話でボタン押すと http リクエスト送付
6.http リクエストを受けて処理起動
4
http://www.questetra.com/ja/blog/cat-questetra-tips-ja/start_workflow_from_telephone/
整理すると2パターン
-Google Apps のサービスとの関わりがあるもの
-Google Apps とは関係のない Web アプリ
GAS のいいところ
-無料(Google アカウント要)
-開発環境はブラウザのみ、実行環境も準備されている
-Google Apps へのアクセスが簡単
-Javascript の知識あれば扱える
-Web アプリがカンタンに立てられる
-add-on が作れる(公開のためには審査あり)
※参考:Google Apps Script の開発手法まとめhttp://qiita.com/soundTricker/items/4d04c97c499b22886dfd
add-on はこんな感じ
https://chrome.google.com/webstore/detail/questetra-bpm-suite-add-o/hmhbgjoealkelgpnjagpcnjdlmkndggn?hl=ja
GAS のいまいちなところ
-デバッグしにくい(開発環境としては簡易なもの)
-ソースコードの構成管理がしにくい
※Github と連携する方法もないわけではない
http://qiita.com/zaki-yama/items/b2d137c2539e20c10138
-サービスレベルがあいまい(無料だけに・・・)
最近の動き
-Apps Script Executon API(実行可能 API)
・REST 形式で外部から GAS の呼出が可能
・Google ドライブの設定で
外部ドメインへの共有が不可でも使える
・スマホアプリからでも呼出が可能
→ 従来の Web アプリ公開よりもセキュアで使いやすい
https://developers.google.com/apps-script/guides/rest/?hl=ja
近いサービスとの比較
-Google:Google App Engine
-Microsoft:Napa Office365
-AWS:API Gateway + Lambda
(ifttt、zapier)
Napa
Lambda
ifttt
zapier
まとめ
-Google Apps のサービスと関わる処理を作るのが簡単
-Web アプリを作る場合にお手軽
(特に Javascript が使えるフロントエンジニアに)
-サービスレベルがあいまいなため
負荷が高いものや要求が厳しいものには不向きか
Π のその後