跳到主要內容

發表文章

目前顯示的是 9月, 2013的文章

Apps Script中使用其他Apps Script的程式碼

Apps Script雖然語法相似於JavaScript,但是畢竟不是JavaScript 有許多js的特性他沒有... 其中像Node.js的module import的方式,在這邊是不能用的 需要透過library的設定方可以使用其他Script作為library... 下面說明設定的方式: 首先,需要找出要被import的library的project key 位置在File > Project properties中 打開後,畫面如下: 提取Project key的部份...先記下來 然後,在需要import的目的Script中,點選Resources > Manage libraries 打開後畫面如下: 這邊的"Find a Library"中,填寫入欲import的Script的Project key 然後點選select,上面欄位就會出現該library 並且有version與deployment mode部分可以選擇 其中version部分,需要在來源端的Script中指定Script的版本號碼 以便讓目的端可以調用不同版本的操作... 另外,Identifier欄位是到時候目的端Script會使用到的instance name 讓Web IDE可以支援"."的操作來叫出可以執行的function... 這樣,就可以直接從一個Script File去呼叫另一個Script File來做操作了∼趕快去定義自己的Apps Script Libraries吧! 最後,操作Library時候需要小心,因為一個Script可以開多個Script File,如上圖,列表在最左邊部分的 但是當Script被當做Library被呼叫時候,只有第一個Script的內容可以被正常執行(我猜是Bug...G大神還沒時間解...)

Google Cloud Platform - CloudSQL使用過程記錄

今天介紹GCP(Google Cloud Platform)之下的DB生力軍:CloudSQL 透過新版本的Cloud Console( https://cloud.google.com/console) 來建立一個Cloud MySQL instance並不難,原則上是填妥資料一步一步往下走就可以完成... 完成後建置的DB Instance會列表在CloudSQL的預設頁面中... 建立好的CloudSQL Instance必須透過Google Cloud SDK中的google_sql.sh來執行... 安裝Cloud SDK可以在cloud console中的最下面找到SDK的下載點 SDK的大部分功能是使用Python實作 即使Java的版本,中間也離步開Python... 安裝=解壓縮...  安裝好之後,偷看一下google_sql.sh的原始碼(shell script) 原來是透過google_sql.jar來做連線,這應該意味著Remote Java要存取CloudSQL也可以透過google_sql.jar來做連線 :D 透過sdk使用CloudSQL前需要先讓sdk進行認證 認證是透過sdk底下的bin/gauth來做認證... 過程中會開啟瀏覽器讓你點選同意 然後畫面會自動關閉,回到console畫面...等到看到success時候,代表認證已經完成 :D 接下來來做連線DB與DB的基本操作... 連線方式是透過 bin/google_sql.sh [ instance id ] 來做連線 連線進入之後,操作與一般MySQL無異 而資料的匯入也不難... 與mysql操作相仿,可以透過"<"來將sql檔案導入 下面是操作: 之前已經有介紹透過Apps Script來連線CloudSQL( 這裡 ),這邊就不多說... 至於GAE連線CloudSQL,理論上需要在CloudSQL的授權部分加上GAE專案的Project ID 然後GAE服務就可以直接連線存取,相關說明,可以參考 這裡 ...

Google Cloud Platform - CloudSQL使用過程記錄

今天介紹GCP(Google Cloud Platform)之下的DB生力軍:CloudSQL 透過新版本的Cloud Console( https://cloud.google.com/console) 來建立一個Cloud MySQL instance並不難,原則上是填妥資料一步一步往下走就可以完成... 完成後建置的DB Instance會列表在CloudSQL的預設頁面中... 建立好的CloudSQL Instance必須透過Google Cloud SDK中的google_sql.sh來執行... 安裝Cloud SDK可以在cloud console中的最下面找到SDK的下載點 SDK的大部分功能是使用Python實作 即使Java的版本,中間也離步開Python... 安裝=解壓縮...  安裝好之後,偷看一下google_sql.sh的原始碼(shell script) 原來是透過google_sql.jar來做連線,這應該意味著Remote Java要存取CloudSQL也可以透過google_sql.jar來做連線 :D 透過sdk使用CloudSQL前需要先讓sdk進行認證 認證是透過sdk底下的bin/gauth來做認證... 過程中會開啟瀏覽器讓你點選同意 然後畫面會自動關閉,回到console畫面...等到看到success時候,代表認證已經完成 :D 接下來來做連線DB與DB的基本操作... 連線方式是透過 bin/google_sql.sh [ instance id ] 來做連線 連線進入之後,操作與一般MySQL無異 而資料的匯入也不難... 與mysql操作相仿,可以透過"<"來將sql檔案導入 下面是操作: 之前已經有介紹透過Apps Script來連線CloudSQL( 這裡 ),這邊就不多說... 至於GAE連線CloudSQL,理論上需要在CloudSQL的授權部分加上GAE專案的Project ID 然後GAE服務就可以直接連線存取,相關說明,可以參考 這裡 ...

Apps Script連線MySQL或CloudSQL

Apps Script中連線資料庫也是使用jdbc connection string的方式來連結 感覺起來這邊似乎背後是透過GAE(畢竟也是Java Base的)來連線...(純猜的...) 下面先看看透過Apps Script來連線一般MySQL資料庫的方法: function testMySQL(){   var conn = Jdbc.getConnection('jdbc:mysql:// DB_IP_ADDRESS : DB_PORT / DB_NAME ', ' USERNAME ', ' PASSWORD ');     var stmt = conn.createStatement();   stmt.setMaxRows(100);   var start = new Date();   var sql = "select * from customers";   var rs = stmt.executeQuery(sql);   Logger.log('SQL:' + sql);   while(rs.next()){     Logger.log('['+new Date().toString() + ']' + rs.getString(1) + '::' + rs.getString(2) );   } } 上面範例中connection string的部份,DB_IP_ADDRESS為資料庫的IP位置,DB_PORT為資料庫的連線埠號,記得也把USERNAME與PASSWORD也改一下唷∼ 連線建立完成後,後面的操作也與Java版本相仿 透過建立statement之後,使用statment實體執行sql語句 最後透過result set將值fetch出來... 而Google的Cloud SQL也一樣可以在Apps Script中進行操作 操作之前,先了解一些資訊.... 在新的API Console中,我們可以找到Instance ID,這個值之後建立connection string時候需要填入 上面設定好後,可以使用這個function來連線Cloud

Apps Script for Google Calendar with SMS notify

Calendar是Google旗下一門重要的產品 而不少G-Fans都有發現Calendar擁有免費的SMS通知功能( 參考:https://developers.google.com/apps-script/articles/gmail_filter_sms ) 既然如此,透過Apps Script來觸發這個Event是在好不過 因為Apps Script完美的整合Google旗下許許多多的產品 讓你可以透過簡單的SDK使用該服務... 下面展示使用Apps Script建立一個Calendar Event 並且透過Calendar的一些設定,就可以讓Apps Script做到SMS通知... Step1: 建立一個Google Calendar 建立行事曆的過程頗簡單,這邊不介紹... 當行事曆建立完成,在行事曆旁邊的下拉三角形點一下,就可以進入行事曆的詳細設定頁面(如下) 在這個頁面中,有三個頁籤,第一個頁籤往下拉會看到Calendar ID的值 這邊需要把它記錄下來,之後寫程式會用到... Step2: 設定通知,並啟用簡訊通知 在日曆詳細頁面的第三個是提醒與通知中,在最下面的可以設定啟用簡訊通知的目的電話號碼(日後有分享給其他使用者時,需要請該使用者也註冊電話號碼,否則就無法收到訊息),然後再第一欄"New Event"的部份勾取SMS,這樣只要有新的Calendar Event進來,就會發出通知... Step3: 建立Apps Script 來到最後一個步驟...如果曾經試過Apps Script去開過Calendar Project的話,會發現建立Calendar Event如此簡單.... 下面function就是實際建立Calendar Event的程式碼,而其中加上了幾個部分 calendarId: 日曆ID,就是上面詳細頁面中顯示的那個ID值 addSmsReminder(0): 表示直接發送SMS通知 function createEvent() {   var calendarId = ' 9s...1c@group.calendar.google.com ';   var cal = CalendarApp.getCalendarById(cal