跳至主要內容
CJCJ Kuo

全站文章搜尋

輸入關鍵字即刻在靜態索引中快速搜尋
↑↓ 導航 · Enter 選取前往獨立搜尋頁 →
Google Forms 表單 + Line Notify 串接,讓現場問卷效益大大提升
資訊技術••約 5 分鐘•1369 字

Google Forms 表單 + Line Notify 串接,讓現場問卷效益大大提升

本文目錄共 4 節

在展覽會上,如何讓現場人員能夠更加有效率地與客戶互動,一直是許多展商關注的議題。而在去年的展覽中我們也遇到了類似的困境,需要等回去後才能知道填單的人是誰,是否是我們預期的目標客戶。

因此今年我們決定利用 Google 問卷表單和 LINE 進行串接,讓現場人員可以即時了解填單者的身分和需求,進而提高溝通和交流的效率。
實際實施後效果不錯有些客戶當場就能夠討論和交流。未來我們也會繼續研究增加同時寄送電子報等功能,以增加客戶參與度和互動性。

這篇文章將會分成三個主要部分。首先,我們將會介紹如何取得 LINE Notify 通知功能,接著是如何在 Google 表單上安裝自動化腳本,最後我們會進行驗證,確認整個流程的正確性。

第一 取得 LINE Notify 通知

開啟瀏覽器,前往 LINE Notify 官方網站。

LINE Notify 官方網站首頁畫面,提供登入與服務功能介紹

Line Notify
https://notify-bot.line.me/zh_TW/

點擊畫面上方的「登入」按鈕,以 LINE 帳號登入。

LINE 帳號登入畫面,提供電子郵件與 QR Code 登入方式

登入後,點擊畫面右上方的「我的頁面」,選擇「發行權杖」

LINE Notify 個人頁面右上角選單,點選進入個人頁面
LINE Notify 服務管理頁面,點選發行權杖按鈕產生金鑰

輸入一個Line Notitfy 通知名稱,例如「有人訂閱電子報拉」,並選擇要發送的聊天室,最後按下「發行」,請注意填寫完畢後無法修改。

LINE Notify 發行權杖視窗,設定通知名稱並選取目標聊天室

成功發行後,複製取得的 Token,稍後會需要使用。請注意,這個 Token 是私人資料,不要隨意洩漏給他人。

LINE Notify 權杖發行成功提示畫面,提供複製 Token 程式碼

完成上述步驟後,我們已經成功取得可以發送 LINE Notify 通知的 Token,接下來我們就可以透過這個 Token 發送通知了,也再通知裡看到Line 中的 Line Notify 發出訊息“已發行個人存取權杖”。

LINE 聊天室收到 LINE Notify 發送的已發行個人存取權杖通知訊息

第二 在Google 表單上安裝 Apps Script

在進行 LINE Notify 通知的發送前,我們需要在 Google 表單上安裝 Apps Script 並撰寫自動化腳本。這裡的自動化腳本可以幫助我們監聽表單提交事件,並將表單內容自動推送至 LINE Notify 聊天室。

接下來,我們將這個安裝流程分成兩個步驟:

安裝程式碼

打開您要進行自動化的 Google 表單,點擊右上角的「工具」選單符號為 “⋮” ,並選擇下拉選單中的「指令碼編輯器」。

Google 表單右上角選單,點選指令碼編輯器選項

在彈出視窗中,來新增一個 Google Apps Script 專案,此時會進入程式碼區塊。

Google Apps Script 專案編輯介面,準備貼上表單推播程式碼

並把下方程式碼複製並貼入剛剛的程式碼區塊即可。

function sendFormResponsesToLineNotify(data) {
	//宣告區
	const token = "換成自己的 LINE TOKEN";
	var message = "\n\n";
	//確認 Google 問卷有無回應
	try {
		var formResponses = data.response.getItemResponses();
		for (var i = 0; i < formResponses.length; i++) {
			//取得問卷題目
			var item = formResponses.getItem().getTitle();
			//取得問卷答案
			var response = formResponses.getResponse();
			//將答案填入訊息中
			message += item + " : " + response + "\n";
		}
	} catch (err) {
		//測試 Token 可用
		message += "No Answers for message.\n\nPower By cjkuo.net\n"
		//異常時進行紀錄
		Logger.log(err)
	}
	sendLineNotify(message, token);
}

function sendLineNotify(message, token) {
	var options = {
		"method": "post",
		"payload": {
			"message": message
		},
		"headers": {
			"Authorization": "Bearer " + token
		}
	};
	try {
		UrlFetchApp.fetch("https://notify-api.line.me/api/notify", options);
	} catch (err) {
		//異常時進行紀錄
		Logger.log(err)
	}
}

將程式碼中的 “換成自己的 LINE TOKEN” 改成您之前在 LINE Notify 取得的 Token,儲存並命名這個新的 Google Apps Script 專案並按一下上方的執行。

Google Apps Script 編輯器介面,儲存並執行自動化腳本

這時候會跳出權限審查,請按下審查權限的按鈕。

Google Apps Script 執行時跳出的需要授權審查提示視窗

選擇使用的Google 帳戶,此帳號只有一個 Google 帳號。

Google 帳戶選擇畫面,選取要授權執行自動化指令碼的帳號

由於我們使用第三方的 LINE Notify API 來發送通知,因此 Google 系統會無法判斷我們傳送的內容是否合法,並出現告警訊息。為了解決這個問題,需要點選左下角的“進階”。

Google 尚未驗證應用程式警告畫面,點選左下角進階選項

展開畫面後點選左下角“前往 未命名的專案”。

Google 授權進階選單,點選前往未命名的專案以繼續

此時會彈出 Google 判斷需要權限種類才能執行,請檢視後並按允許。

Google 專案權限授予畫面,點選允許以連線至外部服務

此時看到LINE跳出測試訊息,如下方圖片呈現的內容

LINE 聊天室收到 Apps Script 測試推播訊息

設定觸發條件

接下來,我們要為 Google Apps Script 設定觸發條件,讓它能夠在我們填寫 Google 表單後自動發送 LINE Notify 通知。

Google Apps Script 側邊選單,點選觸發條件圖示

在 Google Apps Script 編輯器中選擇「觸發器」標籤頁,點擊「新增觸發器」按鈕。

Google Apps Script 觸發條件管理頁面,點選新增觸發條件

在新增觸發器的設定中,我們可以指定要觸發的函數、觸發的事件、觸發的時間等等。這邊我們需要設定:

  • 觸發函數:填寫 Google 表單後自動發送 LINE Notify 通知的函數名稱,“sendFormResponsesToLineNotify”。
  • 活動來源:選擇「表單」。
  • 活動類型:選擇「提交標單時」。

完成設定後,點擊「儲存」按鈕即可。

Google Apps Script 觸發條件設定視窗,選取提交表單時觸發

現在可以再觸發器中看到只要有人填寫了 Google 表單並送出,Google Apps Script 就會自動發送 LINE Notify 通知了。

Google Apps Script 觸發條件列表,顯示已建立的自動推播觸發器

第三 驗證測試

完成觸發條件的設定後,我們可以進行驗證,確保自動發送 LINE Notify 通知的功能正常運作。最快的方式就是打開問卷並回答所有的問題,並送出表單。

Google 問卷表單填寫與送出測試畫面

如果一切正常,你應該會在 LINE 上收到一條通知,顯示你剛剛透過 Google 表單填的內容,也可以快速檢驗一下客戶資料是否正確。

LINE 聊天室收到 Google 表單填寫內容的即時推播通知截圖

錯誤排除

如果沒有收到 LINE Notify 通知,可以檢查以下幾點:

  • 確認 LINE Notify 與 Google Apps Script 的連動是否成功,Token 是否已經替換?
  • 確認 Google 表單中填寫的資料是否正確,是否正確送出了呢?
  • 確認 Google Apps Script 中的程式碼是否有誤,是否貼上完整?
  • 確認 Google Apps Script 中的觸發條件設定是否正確?

以上幾點都檢查過後,還是有問題的話,可以回到 Google Apps Script 的編輯器中,點擊左側「檢視」選單,選擇「執行記錄」,查看是否有錯誤訊息,進行排除。

查看此系列所有文章 →
CJ Kuo (郭仕杰)

CJ Kuo (郭仕杰)

創辦人兼主筆

熱愛軟體架構、DevOps、系統調優與新技術探索的工程實踐者,也會寫寫投資和生活。

獨立技術專刊推播

訂閱技術電子報

有新文章發布時寄送到您的信箱,不發送垃圾信。