在 Cloud Functions 中使用 Node.js 執行階段建立 Google Workspace 外掛程式。
目標
- 設定環境。
- 建立及部署 Cloud 函式。
- 建立及部署外掛程式。
- 安裝外掛程式。
必要條件
- Google Cloud 專案。
- 請確認您已啟用 Cloud 專案的計費功能。學習新知 說明 驗證專案的帳單狀態。
- Cloud SDK 建立 Cloud 專案
設定環境
在 Google Cloud 控制台中開啟 Cloud 專案
- 在 Google Cloud 控制台中,前往「選取專案」頁面。
- 選取要使用的 Google Cloud 專案。或是按一下「建立專案」,然後按照畫面上的指示操作。如要建立 Google Cloud 專案,您可能需要開啟該專案的計費功能。
設定 OAuth 同意畫面
必須為 Google Workspace 外掛程式設定同意畫面。設定中 您外掛程式的 OAuth 同意畫面會定義 Google 向使用者顯示
- 在 Google Cloud 控制台中,前往「選單」圖示 > API 與服務 >「OAuth 同意畫面」。
- 在「使用者類型」部分選取「內部」,然後按一下「建立」。
- 填寫應用程式註冊表單,然後按一下「Save and Continue」。
您現在可以略過新增範圍的步驟,然後按一下「儲存並繼續」。 日後您可以製作並使用應用程式 Google Workspace 機構,您必須將「使用者類型」變更為「外部」, 新增應用程式所需的授權範圍。
- 查看應用程式註冊摘要。如要修改資訊,請按一下「編輯」。如果應用程式 註冊看起來沒有問題,請按一下 [返回資訊主頁]。
建立及部署 Cloud 函式
在本機終端機中開啟 Cloud Functions、Cloud Build Google Workspace Add-ons API:
gcloud services enable cloudfunctions cloudbuild.googleapis.com gsuiteaddons.googleapis.com
在空白目錄中建立
function.js
檔案,並加入下列內容 程式碼範例:/** * Cloud Function that loads the homepage for a * Google Workspace Add-on. * * @param {Object} req Request sent from Google * @param {Object} res Response to send back */ exports.loadHomePage = function addonsHomePage (req, res) { res.send(createAction()); }; /** Creates a card with two widgets. */ function createAction() { return { "action": { "navigations": [ { "pushCard": { "header": { "title": "Cats!" }, "sections": [ { "widgets": [ { "textParagraph": { "text": "Your random cat:" } }, { "image": { "imageUrl": "https://cataas.com/cat" } } ] } ] } } ] } }; }
部署函式:
gcloud functions deploy loadHomePage --runtime nodejs12 --trigger-http
如果出現提示訊息,指明您不允許在未經驗證的情況下叫用 函式。部署函式可能需要幾分鐘的時間。
建立外掛程式部署作業
找出外掛程式的服務帳戶電子郵件地址:
gcloud workspace-add-ons get-authorization
將
cloudfunctions.invoker
角色授予服務帳戶:gcloud functions add-iam-policy-binding loadHomePage \ --role roles/cloudfunctions.invoker \ --member serviceAccount:SERVICE_ACCOUNT_EMAIL
取得已部署函式的網址。如要取得網址,請執行下列指令: 並在
httpsTrigger
區段下方尋找url
欄位:gcloud functions describe loadHomePage
使用下列程式碼範例建立
deployment.json
檔案。將 將URL
替換為 上一個步驟{ "oauthScopes": ["https://www.googleapis.com/auth/gmail.addons.execute"], "addOns": { "common": { "name": "My HTTP Add-on", "logoUrl": "https://raw.githubusercontent.com/webdog/octicons-png/main/black/beaker.png", "homepageTrigger": { "runFunction": "URL" } }, "gmail": {}, "drive": {}, "calendar": {}, "docs": {}, "sheets": {}, "slides": {} } }
建立部署作業:
gcloud workspace-add-ons deployments create quickstart \ --deployment-file=deployment.json
安裝外掛程式
在開發模式中安裝部署項目:
gcloud workspace-add-ons deployments install quickstart
開啟或重新載入 Gmail 即可查看外掛程式。於 然後在右側工具列中找到「燒杯」圖示
按一下圖示即可開啟外掛程式。如果出現提示訊息 授權外掛程式。
選用:清除
如要避免系統向您的帳戶收取費用,請刪除使用的資源 已建立:
從 Google 帳戶中解除安裝外掛程式:
gcloud workspace-add-ons deployments uninstall quickstart
如要避免在本快速入門導覽課程中使用資源產生費用,請刪除 我們要使用 Cloud 專案
gcloud projects delete PROJECT_ID
將 PROJECT_ID 替換為要測試的 Cloud 專案 ID 您在本快速入門導覽課程中常用的所有步驟。您可以在 在這個網頁上 資訊主頁。
後續步驟
如要為 Google Workspace 外掛程式新增更多功能,請參閱 下列指南: