小屋創作

日誌2019-07-03 12:30

Google Apps Script 連接 Firebase - 哈哈姆特不EY聊天機器人

作者:Jia

因為最近看到「哈哈姆特不EY聊天機器人創作大賽」,所以來玩玩看聊天機器人,此篇文章是紀錄我把Firebase連接到Google Apps Script中。

巴哈《哈哈姆特不EY》Bot設計交流哈拉版上有基本的介紹及教學,有興趣的可以看看試試。

主要是因為想要做當你對它說"",它可能回覆你"哈囉""你好""Hello",想使用JSON格式,所以才採用NoSQL的資料庫。

底下流程參考此網頁:https://sites.google.com/site/scriptsexamples/new-connectors-to-google-services/firebase


首先到創個Google Apps Script (GAS)專案,並打開到編輯器裡,點擊"資源" > "程式庫"


在以下彈出視窗中的新增程式庫,輸入FirebaseApp的程式庫的專案金鑰
"MYeP8ZEEt1ylVDxS7uyg9plDOcoke7-2l"
點擊"新增"

選擇public release公開發佈的版本。


GAS這邊的程式庫引入了之後,接下來到Firebase建立一個新專案。
(https://console.firebase.google.com/u/0/)

輸入自己定義的專案名稱、更改數據分析位置。

再來我們要找到此資料庫的密鑰。
點擊左上角的"設定"齒輪圖示 > "專案設定"

移到"服務帳戶"頁面中,左側選擇"資料庫密鑰",底下即會出現資料庫對應的密鑰,點即顯示來複製。

我這邊是使用Firebase的Realtime Database,它還有另一個較新的Cloud Firestore有時間再來研究。
左邊點擊Database後,往下滾會看到Realtime Database,點擊"建立資料庫"。

這邊就以鎖定模式啟動即可,如之後存取資料庫有問題可用測試模式方便除錯。

完成後會看到如下頁面,目前資料庫裏頭是空的,上方的https://<專案名稱>.firebaseio.com/也複製起來之後用。

回到GAS編輯器裡,貼上以下程式碼,並修改<專案名稱>、<資料庫密鑰>成自己的。
function myFunction() {
  var FIREBASE_URL = 'https:// <專案名稱>.firebaseio.com/';
  var SECRET = '<資料庫密鑰>';
  var database = FirebaseApp.getDatabaseByUrl(FIREBASE_URL, SECRET);
  var data = {'嗨':['哈囉', 'hello']};
  database.setData('chat/', data);
}

先在圖中的藍框處選擇函式,再點擊箭頭(紅框處)執行此函式。

第一次執行時會需要授權,點擊"核對權限"

因為這個專案是我們自己創的,沒有經過驗證,所以會跳出此警告,不過不影響。
"進階設定" > "前往"。

過來這邊按"允許"

接下來應該會執行函式,如果沒有就再點擊箭頭執行。
回到Firebase頁面,看看是否成功把資料新增到資料庫中。


當你完成後就可以加到機器人測試~
我這邊還有寫個簡單的程式,讓我可以直接透過對話讓機器人記憶,並增加貼圖的回應。




一些基本的Firebase語法可參考:
https://sites.google.com/site/scriptsexamples/new-connectors-to-google-services/firebase/reference

6

5

LINE 分享

相關創作

教你如何更改 LINE Bot 聊天機器人的顯示圖示、名稱 (以 Python 的 line-bot-sdk 為例)

使用Python+Heroku實作哈哈姆特不EY聊天機器人

第一手實測繁體中文版的Bard(西元2023年9月19日更新)

留言

開啟 APP

face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】