במדריך הזה נסביר איך ליצור אפליקציה ל-Google Chat שצוות יכול להשתמש בה כדי לנהל פרויקטים בזמן אמת. אפליקציית Chat משתמשת ב-Vertex AI כדי לעזור לצוותים לכתוב סיפורי משתמשים (שמייצגים תכונות של מערכת תוכנה מנקודת המבט של משתמש, כדי שהצוות יוכל לפתח אותן) ולשמור את הסיפורים במסד נתונים של Firestore.
-
איור 1. צ'ארלי דנה עם הצוות שלה בפיתוח תכונות במרחב ב-Chat. אם מתייגים את אפליקציית Chat לניהול פרויקטים, אפליקציית Chat מציעה עזרה. -
איור 2. /createUserStoryצ'רלי משתמש בפקודה דרך שורת הפקודות כדי ליצור סטורי. -
איור 3. אפליקציית הצ'אט לניהול פרויקטים משתמשת ב-Vertex AI כדי לכתוב את תיאור הסיפור, ואז משתפת את הסיפור במרחב. -
איור 4. צ'ארלי לוחץ על עריכה כדי לסיים את פרטי הסיפור. התיאור שנוצר על ידי ה-AI מדויק, אבל צ'ארלי רוצה פרטים נוספים, אז הוא לוחץ על הרחבה כדי ש-Vertex AI יוסיף דרישות לתיאור הסיפור. צ'ארלי מקצה את הסיפור לעצמו, מגדיר את הסטטוס ל'התחיל', בוחר עדיפות וגודל מתאימים ולוחץ על שמירה. -
איור 5. בכל שלב, צ'ארלי יכול לראות ולנהל את כל סיפורי המשתמשים של הצוות באמצעות ./manageUserStoriesפקודה דרך שורת הפקודות
דרישות מוקדמות
- חשבון Google Workspace במהדורת Business או Enterprise עם גישה ל-Google Chat.
גישה לשירותי Google Cloud כדי לבצע את הפעולות הבאות:
- יוצרים פרויקט חדש ב-Google Cloud.
- מקשרים חשבון לחיוב ב-Google Cloud לפרויקט בענן. כדי לדעת אם יש לכם גישה, אפשר לעיין במאמר ההרשאות שנדרשות להפעלת החיוב.
משתמשים בקריאות (invocation) לא מאומתות לפונקציות של Google Cloud, שאפשר לאמת אותן על ידי בדיקה אם הארגון שלכם ב-Google Cloud משתמש בשיתוף מוגבל לפי דומיינים.
במקרה הצורך, אפשר לבקש גישה או הרשאה מהאדמין ב-Google Cloud.
אם משתמשים ב-Google Cloud CLI, צריך סביבת פיתוח של Node.js שמגדירים לעבודה עם ה-CLI של gcloud. אפשר לעיין במאמר בנושא הגדרת סביבת פיתוח של Node.js.
מטרות
- פיתוח אפליקציה ל-Chat לניהול פרויקטים של תוכנה בשיטת Agile.
- עזרה למשתמשים בכתיבת סיפורי משתמשים באמצעות כלים לניסוח טקסט של סיפורים בעזרת AI גנרטיבי, שמבוססים על Vertex AI:
- ליצור מחדש תיאורים של סיפורים.
- הרחבת תיאורי הסיפורים מהערות לדרישות מלאות.
- תיקון שגיאות דקדוק כדי לתקן שגיאות הקלדה.
- כדי שהעבודה תהיה עדכנית, אפשר לכתוב למסד נתונים של Firestore ולקרוא ממנו.
- להקל על שיתוף הפעולה במרחב ב-Chat ולאפשר למשתמשים ליצור, לערוך, להקצות ולהתחיל סטוריז ישירות מהשיחה.
המוצרים שהשתמשו בהם
אפליקציית ניהול הפרויקטים משתמשת במוצרים הבאים של Google Workspace ו-Google Cloud:
- Chat API: API לפיתוח אפליקציות ל-Google Chat שמקבלות אירועי אינטראקציה ב-Chat ומגיבות להם, כמו הודעות. אפליקציית ניהול הפרויקטים ל-Google Chat משתמשת ב-Chat API כדי לקבל אירועי אינטראקציה שנשלחים מ-Chat ולהגיב להם, וכדי להגדיר מאפיינים שקובעים איך היא תופיע ב-Chat, כמו שם ותמונת אווטאר.
- Vertex AI API: פלטפורמת AI גנרטיבי. אפליקציית Google Chat לניהול פרויקטים משתמשת ב-Vertex AI API כדי לכתוב כותרות ותיאורים של סיפורי משתמשים.
- Firestore: מסד נתונים של מסמכים ללא שרת. אפליקציית Google Chat לניהול פרויקטים משתמשת ב-Firebase כדי לאחסן נתונים על סיפורי משתמשים.
Cloud Functions: שירות מחשוב קל משקל ללא שרת (serverless) שמאפשר ליצור פונקציות עצמאיות למטרה יחידה שיכולות להגיב לאירועי אינטראקציה ב-Chat, בלי צורך לנהל שרת או סביבת זמן ריצה. אפליקציית Google Chat לניהול פרויקטים משתמשת ב-Cloud Functions כדי לארח את נקודת הקצה של HTTP שאליה Chat שולח אירועי אינטראקציה, וכפלטפורמת מחשוב להפעלת לוגיקה שמבצעת עיבוד של האירועים האלה ומגיבה להם.
Cloud Functions משתמש במוצרי Google Cloud הבאים כדי לבנות, לעבד אירועי אינטראקציה ולארח משאבי מחשוב:
- Cloud Build: פלטפורמה מנוהלת לחלוטין לאינטגרציה רציפה, לפיתוח רציף ולפריסה רציפה, שמריצה גרסאות build אוטומטיות.
- Pub/Sub: שירות העברת הודעות אסינכרוני וניתן להרחבה שמפריד בין שירותים שמפיקים הודעות לבין שירותים שמעבדים את ההודעות האלה.
- Cloud Run Admin API: סביבה מנוהלת להרצת אפליקציות בקונטיינרים.
ארכיטקטורה
ארכיטקטורת אפליקציית ניהול הפרויקטים של Google Chat מקבלת ומעבדת אירועי אינטראקציה ב-Chat בנקודת קצה של HTTP, משתמשת ב-Vertex AI כדי לכתוב סיפורי משתמשים, ומאחסנת את פרטי סיפורי המשתמשים במסד נתונים של Firestore. בתרשים הבא מוצגת הארכיטקטורה של משאבי Google Workspace ו-Google Cloud שנעשה בהם שימוש.
כך פועלת אפליקציית ניהול הפרויקטים של Google Chat:
משתמש שולח הודעה ב-Chat ומפעיל את אפליקציית ניהול הפרויקטים של Google Chat. הוא יכול לשלוח לה הודעה ישירה, לתייג אותה במרחב או להזין פקודה דרך שורת הפקודות.
Chat שולח בקשת HTTP סינכרונית לנקודת הקצה של ה-HTTP של Cloud Function.
אפליקציית Google Chat לניהול פרויקטים מעבדת את בקשת ה-HTTP:
Vertex AI עוזר לכתוב או לעדכן סיפור משתמש.
מסד נתונים ב-Firestore מאחסן, מאחזר, מעדכן או מוחק נתונים של סיפורי משתמשים.
Cloud Functions מחזירה תגובת HTTP ל-Chat, שמוצגת למשתמש כהודעה או כתיבת דו-שיח.
הכנת הסביבה
בסעיף הזה מוסבר איך ליצור ולהגדיר פרויקט ב-Google Cloud לאפליקציית Chat.
יצירת פרויקט של Google Cloud
Google API Console
- ב-Google API Console, נכנסים לתפריט > IAM & Admin (ניהול הרשאות גישה וניהול) > Create a Project (יצירת פרויקט).
-
בשדה Project Name (שם הפרויקט), מזינים שם תיאורי לפרויקט.
אופציונלי: כדי לערוך את מזהה הפרויקט, לוחצים על עריכה. אי אפשר לשנות את מזהה הפרויקט אחרי שהוא נוצר, לכן חשוב לבחור מזהה שיענה על הצרכים שלכם למשך חיי הפרויקט.
- בשדה Location, לוחצים על Browse כדי להציג מיקומים אפשריים לפרויקט. אחר כך לוחצים על בחירה.
- לוחצים על יצירה. מערכת Google API Console תעביר אתכם לדף מרכז הבקרה, והפרויקט שלכם ייווצר תוך כמה דקות.
CLI של gcloud
באחת מסביבות הפיתוח הבאות, ניגשים אל Google Cloud CLI (gcloud):
-
Cloud Shell: כדי להשתמש בטרמינל אונליין שבו כבר מוגדר ה-CLI של gcloud, צריך להפעיל את Cloud Shell.
הפעלת Cloud Shell -
מעטפת מקומית: כדי להשתמש בסביבת פיתוח מקומית, צריך להתקין ולהפעיל את ה-CLI של gcloud.
כדי ליצור פרויקט בענן, משתמשים בפקודהgcloud projects create: מחליפים את PROJECT_ID במזהה הפרויקט שרוצים ליצור.gcloud projects create PROJECT_ID
הפעלת החיוב בפרויקט בענן
Google API Console
- ב-Google API Console, עוברים אל Billing (חיוב). לוחצים על תפריט > חיוב > הפרויקטים שלי.
- בקטע Select an organization (בחירת ארגון), בוחרים את הארגון שמשויך לפרויקט שלכם ב-Google Cloud.
- בשורת הפרויקט, פותחים את התפריט Actions (), לוחצים על Change billing ובוחרים את החשבון לחיוב ב-Cloud.
- לוחצים על Set account.
CLI של gcloud
- כדי להציג רשימה של החשבונות לחיוב שזמינים לכם, מריצים את הפקודה:
gcloud billing accounts list - קישור חשבון לחיוב לפרויקט ב-Google Cloud:
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_IDמחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_IDהוא מזהה הפרויקט של פרויקט בענן שרוצים להפעיל בו חיוב. -
BILLING_ACCOUNT_IDהוא המזהה של החשבון לחיוב שאליו רוצים לקשר את פרויקט בענן ב-Google Cloud.
-
הפעלת ממשקי ה-API
Google API Console
ב-Google API Console, מפעילים את Google Chat API, Vertex AI API, Cloud Functions API, Firestore API, Cloud Build API, Pub/Sub API ו-Cloud Run Admin API.
מוודאים שמפעילים את ממשקי ה-API בפרויקט הנכון ב-Cloud ולוחצים על הבא.
מוודאים שמפעילים את ממשקי ה-API הנכונים ולוחצים על הפעלה.
CLI של gcloud
אם צריך, מגדירים את פרויקט בענן הנוכחי לפרויקט שיצרתם באמצעות הפקודה
gcloud config set project:gcloud config set project PROJECT_IDמחליפים את PROJECT_ID במזהה הפרויקט של פרויקט בענן שיצרתם.
מפעילים את Google Chat API, את Vertex AI API, את Cloud Functions API, את Firestore API, את Cloud Build API, את Pub/Sub API ואת Cloud Run Admin API באמצעות הפקודה
gcloud services enable:gcloud services enable chat.googleapis.com \ aiplatform.googleapis.com \ cloudfunctions.googleapis.com \ firestore.googleapis.com \ cloudbuild.googleapis.com \ pubsub.googleapis.com \ run.googleapis.comCloud Build, Pub/Sub ו-Cloud Run Admin APIs הם דרישות מוקדמות ל-Cloud Functions.
אימות והרשאה
לא צריך להגדיר אימות והרשאה כדי לבצע את ההוראות במדריך הזה.
כדי להפעיל את ממשקי ה-API של Firestore ו-Vertex AI, במדריך הזה נעשה שימוש בApplication Default Credentials עם חשבון השירות שמוגדר כברירת מחדל ומצורף ל-Cloud Function. לא צריך להגדיר אותו. בסביבת ייצור, בדרך כלל יוצרים ומצרפים חשבון שירות לפונקציה ב-Cloud Functions.
יצירה ופריסה של אפליקציה ל-Google Chat
אחרי שיוצרים ומגדירים את פרויקט הענן ב-Google Cloud, אפשר ליצור ולפרוס את אפליקציית Google Chat. בקטע הזה נסביר איך:
- יוצרים מסד נתונים של Firestore שבו יאוחסנו סיפורי המשתמשים ויוכלו לאחזר אותם.
- אופציונלי: בודקים את הקוד לדוגמה.
- יוצרים פונקציית Cloud כדי לארח ולהריץ את הקוד של אפליקציית הצ'אט בתגובה לאירועים שמתקבלים מ-Chat כבקשות HTTP.
- יוצרים ופורסים אפליקציית Google Chat בדף ההגדרות של Google Chat API.
יצירת מסד הנתונים ב-Firestore
בקטע הזה יוצרים מסד נתונים של Firestore כדי לשמור ולאחזר סיפורי משתמשים, אבל לא מגדירים את מודל הנתונים. מודל הנתונים מוגדר באופן מרומז בקוד לדוגמה על ידי הקבצים model/user-story.js ו-model/user.js.
מסד הנתונים של אפליקציית הצ'אט לניהול פרויקטים משתמש במודל נתונים של NoSQL שמבוסס על מסמכים שמסודרים ב אוספים. מידע נוסף על מודל הנתונים של Firestore
בתרשים הבא מוצג סקירה כללית של מודל הנתונים של אפליקציית ניהול הפרויקטים ב-Google Chat:
אוסף הבסיס הוא spaces, שבו כל מסמך מייצג מרחב שבו אפליקציית Chat יצרה סיפורים. כל סיפור משתמש מיוצג על ידי מסמך באוסף המשנה userStories, וכל משתמש מיוצג על ידי מסמך באוסף המשנה users.
הצגת הגדרות של אוסף, מסמך ושדה
spaces
מרחבים שבהם אפליקציית Chat יצרה סיפורים.
| שדות | |
|---|---|
Document ID | Stringמזהה ייחודי של מרחב ספציפי שבו נוצרים סטוריז. השם הזה תואם לשם המשאב של המרחב ב-Chat API. |
userStories | Subcollection of Documents (סטוריז שנוצרו על ידי אפליקציית Chat והמשתמשים שלה. תואם ל- Document ID של userStories ב-Firebase. |
users | Subcollection of Documents (user)משתמשים שיצרו סיפורים או שהוקצו להם סיפורים. |
displayName | Stringהשם המוצג של המרחב ב-Chat API. לא מוגדר לצ'אטים ישירים עם משתמשים. |
userStories
סטוריז שנוצרו על ידי אפליקציית Chat והמשתמשים שלה.
| שדות | |
|---|---|
Document ID | Stringמזהה ייחודי של סיפור משתמש ספציפי שנוצר על ידי אפליקציית ה-Chat והמשתמשים שלה. |
assignee | Document (user)שם המשאב של המשתמש שהוקצה להשלמת הסיפור. תואם ל- Document ID של מסמך users ולשם המשאב של המשתמש ב-Chat API. |
description | Stringתיאור של תכונת התוכנה מנקודת המבט של המשתמש. |
priority | Enumדחיפות העבודה. הערכים האפשריים הם Low, Medium או High. |
size | Enumכמות העבודה. הערכים האפשריים הם Small, Medium או Large. |
status | Enumשלב העבודה. הערכים האפשריים הם OPEN, STARTED או COMPLETED. |
title | Stringהכותרת של הסיפור; סיכום קצר. |
users
משתמשים שיצרו סיפורים או שהוקצו להם סיפורים.
| שדות | |
|---|---|
Document ID | Stringמזהה ייחודי של משתמש ספציפי. הערך הזה תואם ל assignee של userStories ב-Firebase ולשם המשאב של המשתמש ב-Chat API. |
avatarUrl | Stringכתובת URL שבה מתארחת תמונת האווטאר של המשתמש ב-Chat. |
displayName | Stringהשם המוצג של המשתמש ב-Chat. |
כך יוצרים את מסד הנתונים ב-Firestore:
Google API Console
ב-Google API Console, עוברים אל Firestore. לוחצים על תפריט > Firestore.
לוחצים על יצירת מסד נתונים.
בקטע בחירת מצב Firestore, לוחצים על מצב Native.
לוחצים על המשך.
מגדירים את מסד הנתונים:
בקטע Name your database (מתן שם למסד הנתונים), משאירים את Database ID (מזהה מסד הנתונים) כ-
(default).בשדה Location type, מציינים אזור למסד הנתונים, למשל
us-central1. כדי לקבל את הביצועים הטובים ביותר, כדאי לבחור את אותו מיקום או מיקום סמוך למיקום של פונקציית הענן של אפליקציית Chat.
לוחצים על יצירת מסד נתונים.
CLI של gcloud
יוצרים מסד נתונים של Firestore במצב Native באמצעות הפקודה
gcloud firestore databases create:gcloud firestore databases create \ --location=LOCATION \ --type=firestore-nativeמחליפים את LOCATION בשם של אזור ב-Firestore, כמו
us-central1.
בדיקת קוד לדוגמה
אופציונלי: לפני שיוצרים את Cloud Function, כדאי לעיין בקוד לדוגמה שמתארח ב-GitHub ולהכיר אותו.
סקירה כללית של כל קובץ:
env.js- משתני תצורה של הסביבה לפריסת אפליקציית Chat לפרויקט בענן ולאזור ספציפיים ב-Google Cloud. צריך לעדכן את משתני התצורה בקובץ הזה.
package.jsonוגםpackage-lock.json- הגדרות הפרויקט ויחסי התלות ב-Node.js.
index.js- נקודת הכניסה לפונקציה של Cloud Functions של אפליקציית Chat. הוא קורא את אירוע הצ'אט מבקשת ה-HTTP, מפעיל את handler האפליקציה ומפרסם את תגובת ה-HTTP כאובייקט JSON.
controllers/app.js- הלוגיקה הראשית של האפליקציה. מעבד את אירועי האינטראקציה על ידי טיפול בתיוגים של אפליקציית Chat ובפקודות.
כדי להגיב לקליקים על כרטיסים, הפונקציה
app-action-handler.jsמופעלת. controllers/app-action-handler.js- לוגיקת אפליקציה לטיפול בקליק על כרטיס אירועי אינטראקציה ב-Chat.
-
services/space-service.js,services/user-service.jsוגםservices/user-story-service.js - הקבצים האלה מכילים את החלקים של לוגיקת האפליקציה שספציפיים לעבודה עם מרחבים ב-Chat, משתמשים וסיפורי משתמשים. הפונקציות בקבצים האלה נקראות על ידי
app.jsאוapp-action-handler.js. כדי לבצע פעולות במסד הנתונים, הפונקציות בקבצים האלה קוראות לפונקציות ב-firestore-service.js. services/firestore-service.js
- Handles database operations.
הפונקציות בקובץ הזה נקראות על ידי
services/space-service.js,services/user-service.jsו-services/user-story-service.js. services/aip-service.js- קורא ל-Vertex AI API כדי לקבל תחזית של טקסט מ-AI גנרטיבי.
model/*.js- הקבצים האלה מכילים את ההגדרה של מחלקות וספירות שהשירותים של האפליקציה משתמשים בהן כדי לאחסן נתונים ולהעביר אותם בין פונקציות. הם מגדירים את מודל הנתונים של מסד הנתונים ב-Firestore.
views/*.js- כל קובץ בספרייה הזו יוצר אובייקט כרטיס שאפליקציית Chat שולחת בחזרה ל-Chat בתור הודעת כרטיס או תגובה לפעולת דיאלוג.
views/widgets/*.js- כל קובץ יוצר מופע של אובייקט מסוג ווידג'ט שהאפליקציה משתמשת בו כדי ליצור את הכרטיסים בספרייה
views/. test/**/*.test.js- כל קובץ בספרייה הזו ובספריות המשנה שלה מכיל את בדיקות היחידות (unit testing) של הפונקציה, בקר, שירות, תצוגה או ווידג'ט התואמים.
כדי להריץ את כל בדיקות היחידות, מריצים את הפקודה
npm run testכשנמצאים בספריית הבסיס של הפרויקט.
יצירה ופריסה של הפונקציה של Cloud Functions
בקטע הזה יוצרים ופורסים Cloud Function שכולל את הלוגיקה של האפליקציה לניהול פרויקטים ב-Chat.
פונקציית Cloud Functions פועלת בתגובה לבקשת HTTP מ-Chat שמכילה אירוע אינטראקציה ב-Chat. כשמריצים את הקוד של Cloud Function, הוא מעבד את האירוע ומחזיר תגובה ל-Chat. התגובה מוצגת ב-Chat כהודעה, תיבת דו-שיח או סוג אחר של אינטראקציה עם המשתמש. במקרה הרלוונטי, Cloud Function קורא גם ממסד הנתונים של Firestore או כותב בו.
כך יוצרים את הפונקציה ב-Cloud Functions:
Google API Console
מורידים את הקוד מ-GitHub כקובץ ZIP.
מחלצים את קובץ ה-ZIP שהורד.
התיקייה שחולצה מכילה את כל מאגר הדוגמאות של Google Workspace.
בתיקייה שחולצה, עוברים אל
add-ons-samples-main/node/chat/project-management-app/ודוחסים את התיקייהproject-management-appלקובץ ZIP.ספריית הבסיס של קובץ ה-ZIP חייבת להכיל את הקבצים והתיקיות הבאים:
env.jsREADME.mdgcloudignore.textpackage-lock.jsonpackage.jsonindex.jsmodel/controllers/views/services/
במסוף Google API, עוברים לדף Cloud Functions:
מוודאים שהפרויקט ב-Google Cloud של אפליקציית Chat נבחר.
לוחצים על Create Function (יצירת פונקציה).
בדף Create function (יצירת פונקציה), מגדירים את הפונקציה:
- בקטע Environment (סביבה), בוחרים באפשרות Cloud Run Function (פונקציית Cloud Run).
- בשדה Function name, מזינים
project-management-tutorial. - בקטע אזור, בוחרים אזור.
- בקטע אימות, בוחרים באפשרות התרת הפעלות לא מאומתות.
- לוחצים על הבא.
בקטע Runtime (סביבת זמן ריצה), בוחרים באפשרות Node.js 20.
בקטע נקודת כניסה, מוחקים את טקסט ברירת המחדל ומזינים
projectManagementChatApp.בקטע קוד מקור, בוחרים באפשרות העלאת קובץ ZIP.
בקטע קטגוריית יעד, יוצרים או בוחרים קטגוריה:
- לוחצים על מה מעניין אותך היום?
- בוחרים קטגוריה.
- לוחצים על בחירה.
מערכת Google Cloud מעלה את קובץ ה-ZIP ומחלצת את קובצי הרכיבים בקטגוריה הזו. לאחר מכן, Cloud Functions מעתיק את קובצי הרכיבים אל Cloud Functions.
בקטע Zip file (קובץ ZIP), מעלים את קובץ ה-ZIP שהורדתם מ-GitHub, חילצתם ודחסתם מחדש:
- לוחצים על מה מעניין אותך היום?
- מנווטים אל קובץ ה-ZIP ובוחרים בו.
- לוחצים על פתיחה.
לוחצים על פריסה.
ייפתח הדף Cloud Functions detail, והפונקציה שלכם תופיע עם שני אינדיקטורים להתקדמות: אחד לבנייה ואחד לשירות. כשהאינדיקטורים להתקדמות נעלמים ומוחלפים בסימן וי, הפונקציה מוכנה לפריסה.
עורכים את הקוד לדוגמה כדי להגדיר קבועים:
- בדף Cloud Function detail (פרטי Cloud Function), לוחצים על Edit (עריכה).
- לוחצים על הבא.
- בקטע קוד מקור, בוחרים באפשרות עורך בתוך השורה.
- בעורך המוטבע, פותחים את הקובץ
env.js. - מחליפים את project-id במזהה הפרויקט בענן.
- אופציונלי: מעדכנים את us-central1 עם מיקום נתמך עבור Cloud Function.
לוחצים על פריסה.
כשהפריסה של הפונקציה מסתיימת, מעתיקים את כתובת ה-URL של הטריגר:
- בדף פרטי הפונקציה, לוחצים על הפעלה.
- מעתיקים את כתובת ה-URL. תצטרכו אותו כדי להגדיר את אפליקציית Chat בקטע הבא.
CLI של gcloud
משכפלים את הקוד מ-GitHub:
git clone https://github.com/googleworkspace/add-ons-samples.gitעוברים לספרייה שמכילה את הקוד של אפליקציית Chat לניהול הפרויקט הזה:
cd add-ons-samples/node/chat/project-management-appעורכים את הקובץ
env.jsכדי להגדיר משתני סביבה:- מחליפים את project-id במזהה הפרויקט ב-Google Cloud.
- מחליפים את us-central1 במיקום של הפרויקט ב-Google Cloud.
פורסים את הפונקציה של Cloud Functions ב-Google Cloud:
gcloud functions deploy project-management-tutorial \ --gen2 \ --region=REGION \ --runtime=nodejs20 \ --source=. \ --entry-point=projectManagementChatApp \ --trigger-http \ --allow-unauthenticatedמחליפים את REGION במיקום של Cloud Functions שבו התשתית מתארחת, כמו
us-central1.
- כשהפונקציה מסיימת את הפריסה, מעתיקים את המאפיין
urlמהתגובה. זו כתובת ה-URL של הטריגר שבה תשתמשו בקטע הבא כדי להגדיר את האפליקציה של Google Chat.
הגדרת אפליקציית Google Chat ב-Google API Console
בקטע הזה מוסבר איך להגדיר את Chat API ב-Google API Console עם מידע על אפליקציית Chat, כולל השם של אפליקציית Chat, פקודות הסלאש הנתמכות וכתובת ה-URL של הטריגר של Cloud Function של אפליקציית Chat שאליה נשלחים אירועי אינטראקציה ב-Chat.
ב-Google API Console, לוחצים על Menu > APIs & Services > Enabled APIs & Services > Google Chat API > Configuration.
בשדה App name, כותבים
Project Manager.בקטע כתובת ה-URL של הדמות, מקלידים
https://developers.google.com/add-ons/samples/images/quickstart-app-avatar.png.בקטע תיאור, מקלידים
Manages projects with user stories.לוחצים על המתג הפעלת תכונות אינטראקטיביות כדי להפעיל אותו.
בקטע פונקציונליות, בוחרים באפשרות הצטרפות למרחבים ולשיחות קבוצתיות.
בקטע Connection settings (הגדרות חיבור), בוחרים באפשרות HTTP endpoint URL (כתובת URL של נקודת קצה בפרוטוקול HTTP).
מעתיקים את כתובת האימייל בחשבון השירות. תצטרכו את כתובת האימייל הזו כשתאשרו לתוסף להפעיל את הפונקציה.
בקטע טריגרים, בוחרים באפשרות שימוש בכתובת URL משותפת של נקודת קצה (endpoint) בפרוטוקול HTTP לכל הטריגרים.
בקטע HTTP endpoint URL (כתובת URL של נקודת קצה HTTP), מדביקים את כתובת ה-URL של הטריגר של Cloud Function בפורמט
https://REGION-PROJECT_ID.cloudfunctions.net/project-management-tutorial. אם פרסתם את הפונקציה של Cloud Functions באמצעות ה-CLI של gcloud, זהו המאפייןurl.רושמים את הפקודות דרך שורת הפקודות של אפליקציית Chat. כדי לרשום פקודה דרך שורת הפקודות:
- בקטע Commands, לוחצים על Add a command.
לכל פקודה שמפורטת בטבלה הבאה, מזינים את מזהה הפקודה, מזינים את התיאור, בקטע סוג הפקודה בוחרים באפשרות פקודה דרך שורת הפקודות, מזינים את השם של פקודת הסלאש, בוחרים באפשרות תיבת דו-שיח ואז לוחצים על סיום:
מזהה הפקודה תיאור שם הפקודה דרך שורת הפקודות Dialog 1 יוצרים סיפור עם הכותרת שצוינה. /createUserStoryלא נבחר 2 רשימה של כל הסיפורים שהוקצו למשתמש. /myUserStoriesלא נבחר 3 בעמודה הזו מוצג הסטטוס הנוכחי של הכתבה שצוינה. /userStoryלא נבחר 4 תיבת דו-שיח נפתחת, שבה אפשר לערוך את הסיפורים. /manageUserStoriesנבחר 5 מחיקה של כל הסטוריז במרחב. /cleanupUserStoriesלא נבחר
בקטע חשיפה, בוחרים באפשרות האפליקציה הזו של Google Chat תהיה זמינה לאנשים ולקבוצות ספציפיים בדומיין של Workspace ומזינים את כתובת האימייל.
אם רוצים, בקטע יומנים, בוחרים באפשרות רישום שגיאות ביומן.
לוחצים על שמירה. תוצג הודעה שההגדרה נשמרה.
אפליקציית Chat מוכנה לקבל הודעות ב-Chat ולענות להן.
בדיקת אפליקציית Chat
כדי לבדוק את אפליקציית ניהול הפרויקטים ב-Chat, שולחים לה הודעה ומשתמשים בפקודות שלה כדי ליצור, לערוך ולמחוק סיפורי משתמשים.
פותחים את Google Chat באמצעות חשבון Google Workspace שציינתם כשנוספתם כבודקים מהימנים.
- לוחצים על שיחה חדשה.
- בשדה הוספת אדם אחד או יותר, מקלידים את השם של אפליקציית Chat.
בוחרים את אפליקציית Chat מתוך התוצאות. ייפתח צ'אט ישיר.
- בצ'אט אישי החדש עם האפליקציה, כותבים
Helloולוחצים עלenter. אפליקציית הצ'אט לניהול פרויקטים מגיבה עם תפריט עזרה שמפרט את הפעולות שהיא יכולה לבצע. - כדי ליצור סיפור, מקלידים
/createUserStory Test storyבסרגל ההודעות ושולחים אותו. אפליקציית הצ'אט לניהול פרויקטים מגיבה בהודעה עם כרטיס שמפרט את סיפור המשתמש שהיא יוצרת בשבילכם באמצעות AI גנרטיבי מ-Vertex AI. במסוף ה-API, בודקים את מסד הנתונים של Firestore כדי לראות את הרשומות שנוצרו לגבי המרחב שהוספתם אליו את אפליקציית הצ'אט, המשתמשים שהיו איתה באינטראקציה ואת סיפור המשתמש שיצרתם.
חוזרים ל-Google Chat.
- אופציונלי: כדי לערוך את הסיפור, לוחצים על עריכה. כשמרוצים מהסיפור, לוחצים על שמירה.
- בודקים כל פקודה דרך שורת הפקודות שהאפליקציה תומכת בה. כדי לראות אותן, מקלידים
/או מתייגים את אפליקציית Chat. - מוחקים את סיפור המשתמש לצורך בדיקה באמצעות הפקודה דרך שורת הפקודות
/cleanupUserStories. אפשרות אחרת היא להסיר או לבטל את ההתקנה של האפליקציה. כשמסירים את האפליקציה, היא מוחקת את כל סיפורי המשתמשים שנוצרו במרחב.
פתרון בעיות
כשמוחזרת שגיאה מאפליקציית Google Chat או מכרטיס, מוצגת בממשק של Chat ההודעה "משהו השתבש". או 'לא הצלחנו לעבד את הבקשה שלך'. לפעמים בממשק המשתמש של Chat לא מוצגת הודעת שגיאה, אבל אפליקציית Chat או הכרטיס יוצרים תוצאה לא צפויה. לדוגמה, יכול להיות שהודעה בכרטיס לא תופיע.
יכול להיות שלא תוצג הודעת שגיאה בממשק המשתמש של Chat, אבל אם הפעלתם את רישום השגיאות באפליקציות של Chat, תוכלו לראות הודעות שגיאה ונתוני יומן שיעזרו לכם לתקן את השגיאות. לקבלת עזרה בצפייה בשגיאות, באיתור באגים ובתיקון שלהן, אפשר לעיין במאמר פתרון בעיות ב-Google Chat.
הסרת המשאבים
כדי להימנע מחיובים בחשבון Google Cloud בגלל השימוש במשאבים שנעשה במסגרת המדריך הזה, מומלץ למחוק את פרויקט בענן.
- במסוף Google API, עוברים לדף Manage resources. לוחצים על תפריט > IAM & Admin > Manage Resources.
- ברשימת הפרויקטים, בוחרים את הפרויקט שרוצים למחוק ולוחצים על Delete .
- כדי למחוק את הפרויקט, כותבים את מזהה הפרויקט בתיבת הדו-שיח ולוחצים על Shut down.
נושאים קשורים
- תכנון נסיעות באמצעות סוכן AI שזמין בכל Google Workspace
- איך מקבלים תשובות לשאלות על סמך שיחות ב-צ'אט מבוסס-AI באמצעות אפליקציית Gemini AI Chat
- איך מגיבים לאירועים באמצעות Google Chat, Vertex AI, Apps Script ואימות משתמשים
- בדיקת עובדות של הצהרות באמצעות סוכן AI של ADK ומודל Gemini
- שילוב של מושגי יסוד בתחום ה-AI באפליקציות של Chat
- פיתוח אפליקציה ל-Chat כתוסף ל-Google Workspace באמצעות Apps Script