Utwórz dodatki do Google Workspace w Cloud Functions za pomocą środowiska wykonawczego Node.js.
Cele
- skonfigurować środowisko,
- Utwórz i wdróż funkcję w Cloud Functions.
- Utwórz i wdróż dodatek.
- Zainstaluj dodatek.
Wymagania wstępne
- Projekt Google Cloud –
- Sprawdź, czy masz włączone płatności w projekcie Cloud. Ucz się instrukcje sprawdź stan płatności swoich projektów.
- Pakiet SDK Cloud skonfigurowane w projekcie Cloud.
Konfigurowanie środowiska
Otwieranie projektu Cloud w konsoli Google Cloud
- W konsoli Google Cloud otwórz stronę Wybierz projekt.
- Wybierz projekt Google Cloud, którego chcesz użyć. Możesz też kliknąć Utwórz projekt i postępować zgodnie z instrukcjami wyświetlanymi na ekranie. Jeśli tworzysz projekt Google Cloud, konieczne może być włączenie dla niego płatności.
Konfigurowanie ekranu zgody OAuth
Dodatki do Google Workspace wymagają konfiguracji ekranu zgody. Konfiguruję ekran zgody OAuth dodatku określa, co Google wyświetlane użytkownikom.
- W konsoli Google Cloud otwórz menu > Interfejsy API i Usługi > Ekran zgody OAuth. .
- Jako Typ użytkownika wybierz Wewnętrzny i kliknij Utwórz.
- Wypełnij formularz rejestracji aplikacji, a potem kliknij Zapisz i kontynuuj.
Na razie możesz pominąć dodawanie zakresów i kliknąć Zapisz i kontynuuj. w przyszłości, gdy utworzysz aplikację do użytku poza swoim Google Workspace, musisz zmienić Typ użytkownika na Zewnętrzny, a następnie: dodaj zakresy autoryzacji wymagane przez aplikację.
- Przejrzyj podsumowanie rejestracji aplikacji. Aby wprowadzić zmiany, kliknij Edytuj. Jeśli aplikacja z rejestracji wszystko jest w porządku, kliknij Back to Dashboard (Powrót do panelu).
Tworzenie i wdrażanie funkcji w Cloud Functions
W terminalu lokalnym włącz Cloud Functions, Cloud Build i Interfejs Google Workspace Add-ons API:
gcloud services enable cloudfunctions cloudbuild.googleapis.com gsuiteaddons.googleapis.com
W pustym katalogu utwórz plik
function.js
z następującymi wartościami przykładowy kod:/** * 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" } } ] } ] } } ] } }; }
Wdróż funkcję:
gcloud functions deploy loadHomePage --runtime nodejs12 --trigger-http
Jeśli pojawi się pytanie, określ, czy nie zezwalasz na nieuwierzytelnione wywołania . Wdrożenie funkcji może zająć kilka minut.
Tworzenie wdrożenia dodatku
Znajdź adres e-mail konta usługi powiązanego z dodatkiem:
gcloud workspace-add-ons get-authorization
Przypisz do konta usługi rolę
cloudfunctions.invoker
:gcloud functions add-iam-policy-binding loadHomePage \ --role roles/cloudfunctions.invoker \ --member serviceAccount:SERVICE_ACCOUNT_EMAIL
Uzyskaj adres URL wdrożonej funkcji. Aby uzyskać adres URL, uruchom to polecenie i w sekcji
httpsTrigger
znajdź poleurl
:gcloud functions describe loadHomePage
Utwórz plik
deployment.json
za pomocą poniższego przykładowego kodu. ZastąpURL
z adresem URL wdrożonej funkcji z poprzedniego kroku.{ "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": {} } }
Utwórz wdrożenie:
gcloud workspace-add-ons deployments create quickstart \ --deployment-file=deployment.json
Jak zainstalować dodatek
Zainstaluj wdrożenie w trybie programistycznym:
gcloud workspace-add-ons deployments install quickstart
Aby wyświetlić dodatek, otwórz lub załaduj ponownie Gmaila. W na pasku narzędzi po prawej stronie poszukaj ikony zlewki.
Kliknij ikonę, aby otworzyć dodatek. Jeśli pojawi się taka prośba, autoryzuj dodatek.
Opcjonalnie: wyczyść
Aby uniknąć obciążenia konta opłatami, usuń utworzono:
Odinstaluj dodatek ze swojego konta Google:
gcloud workspace-add-ons deployments uninstall quickstart
Aby uniknąć opłat za zasoby zużyte w tym samouczku, usuń projekt Cloud:
gcloud projects delete PROJECT_ID
Zastąp PROJECT_ID identyfikatorem projektu Cloud, który użyte podczas krótkiego wprowadzenia. Identyfikator projektu Cloud znajdziesz w w konsoli Google Cloud Strona panelu.
Dalsze kroki
Aby dodać więcej funkcji do dodatku Google Workspace, zapoznaj się z następujące przewodniki: