在 Google雲端硬碟中,建立 Google 表單。
開啟指令碼編輯器。
輸入以下Google Apps Script。
function getFormResponse() {
//表單名稱
var FORMNAME = "測試表單";
//取得表單
var formHandle = DriveApp.getFilesByName(FORMNAME).next();
//由表單 Id 開啟表單
var form = FormApp.openById(formHandle.getId());
//取得表單名稱
var formTitle = form.getTitle();
//取得表單回覆內容
var formResponse = form.getResponses();
//處理表單上問答內容
for(var i = 0; i < formResponse.length ; i++){
//取得表單上的項目
var itemResponses = formResponse[i].getItemResponses();
//傳送訊息設定
var itemContext = "\n" + formTitle + "\n 電子郵件 : " + Session.getEffectiveUser().getEmail() + "\n";
//將表單每一項問答組成訊息
for(var j = 0; j < itemResponses.length ; j++)
{
//取得問題標題
itemContext += itemResponses[j].getItem().getTitle();
//取得問題回覆內容
itemContext += " : " + itemResponses[j].getResponse() + "\n";
}
//取得填寫表單時間
itemContext += "\n填寫時間 : " + formResponse[i].getTimestamp() + "\n\n\n";
//送出表單到Line
sendToLine(itemContext);
}
//刪除回應問題
form.deleteAllResponses();
}
function sendToLine(message){
var token = "你的Line Notify token";
var options =
{
method : "post",
payload : "message=" + message,
headers : {"Authorization" : "Bearer "+ token},
muteHttpExceptions : true
};
UrlFetchApp.fetch("https://notify-api.line.me/api/notify",options);
}
記得設定執行權與觸發事件。
要在使用者完成填寫表單後,把訊息送出到 Line Notify上,要設定觸發事件。
設定觸發條件,在使用者填寫完成後,指定函數進行事件觸發。
執行畫面:
參考資料:
- Uiサービス
- FormAppによるフォームの集計と作成 (1/5)
- Google Form 新增線上表單和寄信通知
- I/O 2013のGoogle Apps Script Update その1 Form上のGASとFormApp
- GoogleFormsとGoogleAppsScriptによる経験サンプリング自動調査システム
- google formで入力後に確認メールを送る
- Google ドライブ上に事前投句システムを作ってみた





