Google Apps Scirpt勉強会 #1

3,144 views

Published on

Google Apps Script 勉強会 #1

http://atnd.org/events/10424

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,144
On SlideShare
0
From Embeds
0
Number of Embeds
290
Actions
Shares
0
Downloads
0
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Google Apps Scirpt勉強会 #1

  1. 1. Google Apps Script 勉強会 #1 2010/12/16 @クリエイティブホープ
  2. 2. 自己紹介• 名前:ikikko• 所属 ● work : ヌーラボ ● private : Shibuya.trac : 日本Hudsonユーザ会
  3. 3. アジェンダ● サンプルアプリの紹介● 開発時の注意事項● 個人的な雑感 http://www.flickr.com/photos/darrentunnicliff/3371355414/
  4. 4. Google Apps ScriptとはGoogleスプレッドシート、もしくはGoogleサイトで、定型処理を自動化するためのスクリプト機能 – Excelのマクロ機能のようなもの – VBAの代わりに、Javascriptで記述 http://code.google.com/intl/en/googleapps/appsscript/
  5. 5. デモ GAS で Twitterhttp://www.flickr.com/photos/bluesquarething/4285344075/
  6. 6. ソースコード(抜粋)function getOptions_() { var oAuthServiceName = "twitter"; // OAuthServiceConfigの設定 var oAuthConfig = UrlFetchApp.addOAuthService(oAuthServiceName); oAuthConfig.setAccessTokenUrl("http://twitter.com/oauth/access_token"); oAuthConfig.setRequestTokenUrl("http://twitter.com/oauth/request_token"); oAuthConfig.setAuthorizationUrl("http://twitter.com/oauth/authorize"); oAuthConfig.setConsumerKey(CONSUMER_KEY); oAuthConfig.setConsumerSecret(CONSUMER_SECRET); // UrlFetchAppに渡すオプションの設定 var options = { "oAuthServiceName" : oAuthServiceName, "oAuthUseToken" : "always", }; return options;}
  7. 7. ソースコード(抜粋)function timeline() { // APIの実行 var response = UrlFetchApp.fetch( "http://api.twitter.com/1/statuses/home_timeline.json", getOptions_()); var timeline = Utilities.jsonParse(response.getContentText()); // スプレッドシートにAPI実行結果を書き出す ...}
  8. 8. デモbacklog-template-issue ~ Backlogへ課題一括登録 ~ http://www.flickr.com/photos/bluesquarething/4285344075/
  9. 9. 構成1. スプレッドシートから登録データ取得2. Backlog APIを用いて、Backlogに課題登録3. Backlogから課題登録後の登録情報を取得4. スプレッドシートに登録結果を追記 http://github.com/ikikko/backlog-template-issue-gas/wiki
  10. 10. 使用しているService通信 ユーザインターフェース● UrlFetch Services ● Spreadsheet Services● Xml Services ● Ui Services● Utilities Services ● Properties Services ● Base Services
  11. 11. 注意事項 http://www.flickr.com/photos/pictureperfectpose/76138988/
  12. 12. サーバサイドスクリプト  クロスドメイン制約がない  ブラウザ間で使用できるAPIに差がない  Windowオブジェクトの使用不可 • setInterval / setTimeout など  DOM Parserの使用不可
  13. 13. 開発環境  どこでも開発できる  スクリプトを分割しにくい  テストしにくい  バージョン管理しにくい
  14. 14. 雑感http://www.flickr.com/photos/faby74/2698708497/
  15. 15. 何はともあれUrlFetch!● 他サービス連携の要 ● JSON/OAuthをサポートしている ● XMLをパースするAPIもある● 足りなければ、自分で作ればいい
  16. 16. お手軽かつ強力!● 色々な方法でスクリプトを実行できる ● スケジュール駆動 ● Googleフォーム送信時にフック ● スプレッドシートのメニューに追加● ブラウザ(+ネット環境)だけで開発できる
  17. 17. ご清聴ありがとうございました

×