ניהול פרויקטים באמצעות Google Chat, Vertex AI ו-Firestore

במדריך הזה מוסבר איך ליצור אפליקציה של Google Chat שצוות יכול שמשמשות לניהול פרויקטים בזמן אמת. אפליקציית Chat משתמשת Vertex AI עוזר לצוותים לכתוב סיפורי משתמשים (המייצגים תכונות של מערכת תוכנה מנקודת המבט של המשתמש, שהצוות יפתח). ששומרת את הסיפורים במסד הנתונים של Firestore.

  • אזכור של אפליקציית ניהול הפרויקטים מעודד את האפליקציה להציע עזרה.
    איור 1. צ'רלי מדבר על פיתוח תכונות במרחב ב-Chat עם הצוות שלו. כשמאזכרים את אפליקציית Chat לניהול פרויקטים, אפליקציית Chat יכולה להציע עזרה.
  • שימוש בפקודת הקו הנטוי /createUserStory כדי ליצור סיפור.
    איור 2. צ'רלי יוצר סיפור באמצעות פקודת הלוכסן /createUserStory.
  • אפליקציית Chat לניהול פרויקטים משתמשת ב-Vertex AI כדי לכתוב את תיאור הסיפור.
    איור 3. אפליקציית Chat לניהול פרויקטים משתמשת ב-Vertex AI כדי לכתוב את תיאור הסיפור, ואז משתפת את הסיפור במרחב.
  • צדוק מסכם את פרטי הסיפור.
    איור 4. צדוק לוחץ על עריכה כדי לסיים את פרטי הסיפור. התיאור שנוצר על ידי AI מדויק, אבל דורי רוצה פרטים נוספים, ולכן Charlie לוחץ על Expand כדי לבקש מ-Vertex AI להוסיף דרישות לתיאור הכתבה. צ'רלי מקצה את הסיפור לעצמו, מגדיר את הסטטוס כ'התחלה', בוחר עדיפות וגודל מתאימים ואז לוחץ על שמירה.
  • ניהול כל סיפורי המשתמשים של הצוות.
    איור 5. בכל שלב, Charlie יכול לראות ולנהל את כל סיפורי המשתמשים של הצוות באמצעות הפקודה /manageUserStories של לוכסן.

דרישות מוקדמות

מטרות

  • פיתוח אפליקציה ל-Chat שמנהלת תוכנות גמישות פרויקטים.
  • עוזרים למשתמשים לכתוב סיפורי משתמשים באמצעות בינה מלאכותית גנרטיבית כלים לכתיבת סיפורים בסיוע AI שמבוססים על Vertex AI:
    • יצירה ויצירה מחדש של תיאורי סיפורים.
    • ניתן להרחיב את תיאורי הכתבה מהערות כדי להשלים את הדרישות.
    • חשוב לתקן את הדקדוק כדי לתקן שגיאות כתיב.
  • כדי לשמור על עבודה עדכנית, אתם יכולים לכתוב למסד הנתונים של Firestore ולקרוא ממנו.
  • מאפשרים למשתמשים לשתף פעולה במרחבים ב-Chat ליצור, לערוך, להקצות ולהתחיל סיפורים ישירות מהשיחה.

המוצרים שהשתמשו בהם

אפליקציית ניהול הפרויקטים משתמשת במהדורות הבאות של Google Workspace מוצרי Google Cloud:

  • Chat API: ממשק API לפיתוח אפליקציות ב-Google Chat שמקבלות בקשות ומגיבות להן אירועי אינטראקציה בצ'אט, כמו הודעות. ניהול הפרויקטים אפליקציית Google Chat משתמשת ב-Chat API כדי לקבל ולענות לאירועי אינטראקציה שנשלחים על ידי Chat, ולהגדיר מאפיינים כדי לקבוע איך הוא יופיע ב-Chat, למשל השם ותמונת הדמות.
  • Vertex AI API: פלטפורמת בינה מלאכותית גנרטיבית. ניהול הפרויקטים אפליקציית Google Chat משתמשת ב-Vertex AI API כדי לכתוב סיפורים של משתמשים כותרות ותיאורים.
  • Firestore: מסד נתונים ללא שרת (serverless) למסמכים. ניהול הפרויקטים אפליקציית Google Chat משתמשת ב-Firebase כדי לאחסן נתונים על סיפורי משתמשים.
  • Cloud Functions: שירות מחשוב ללא שרת (serverless computing) שמאפשר ליצור פונקציות עצמאיות למטרה יחידה, שיכולות להגיב ל-Chat אירועי אינטראקציה, ללא צורך בניהול שרת או סביבת זמן ריצה. אפליקציית Google Chat Chat משתמשת ב-Cloud Functions לארח את נקודת הקצה (endpoint) של HTTP שאליה Chat שולח אירועי אינטראקציה, של פלטפורמת מחשוב כדי להריץ לוגיקה שמעבדת את האירועים האלה ומגיבה להם.

    ב-Cloud Functions נעשה שימוש במוצרי Google Cloud הבאים כדי לפתח לעבד אירועי אינטראקציה ולארח משאבי מחשוב:

    • Cloud Build: פלטפורמה מנוהלת לניהול רציף (continuous delivery), מסירה ופריסה שמפעילה גרסאות build אוטומטיות.
    • Pub/Sub שירות העברת הודעות אסינכרוני וניתן להתאמה, המפריד בין שירותים שמפיקות הודעות משירותים שמעבדים את ההודעות האלה.
    • Cloud Run Admin API: סביבה מנוהלת להרצת אפליקציות בקונטיינרים.

ארכיטקטורה

הארכיטקטורה של אפליקציות Google Chat לניהול פרויקטים מקבלת מעבד אירועי אינטראקציה ב-Chat בנקודת קצה (endpoint) של HTTP, ומשתמש ב-Vertex AI כדי לכתוב סיפורי משתמשים ולאחסן את פרטי סיפורי המשתמשים במסד הנתונים של Firestore. של Google Workspace המשאבים של Google Cloud שנמצאים בשימוש.

תרשים הארכיטקטורה של אפליקציית Google Chat לניהול פרויקטים

כך פועלת אפליקציית Google Chat לניהול פרויקטים:

  1. משתמש שולח הודעה ב-Chat ומפעיל את ניהול פרויקטים של אפליקציית Google Chat באמצעות שליחת הודעות ישירות, להזכיר אותו במרחב או לכתוב פקודה של שורת הפקודות.

  2. Chat שולח בקשת HTTP סינכרונית לפונקציה של Cloud Functions נקודת הקצה ב-HTTP.

  3. אפליקציית Google Chat לניהול פרויקטים מעבדת את ה-HTTP בקשה:

    1. Vertex AI עוזר לכתוב או לעדכן סיפור משתמש.

    2. מסד נתונים של Firestore שומר, מאחזר, מעדכן או מוחק סיפור של משתמש .

  4. מערכת Cloud Functions מחזירה תגובת HTTP ל-Chat, מציגה אותה למשתמש כהודעה או כתיבת דו-שיח.

מכינים את הסביבה

בקטע הזה נסביר איך ליצור ולהגדיר פרויקט ב-Google Cloud עבור אפליקציית Chat.

יצירת פרויקט של Google Cloud

מסוף Google Cloud

  1. במסוף Google Cloud, נכנסים לתפריט > IAM & אדמין > יצירת פרויקט.

    כניסה לדף Create a Project

  2. בשדה Project Name (שם הפרויקט), מזינים שם תיאורי לפרויקט.

    אופציונלי: כדי לערוך את Project ID, לוחצים על Edit (עריכה). לא ניתן לשנות את מזהה הפרויקט אחרי שהפרויקט נוצר, לכן בחר מזהה שעונה על הצרכים שלך לכל משך החיים של הפרויקט פרויקט.

  3. בשדה מיקום לוחצים על עיון כדי להציג את המיקומים האפשריים של פרויקט. לאחר מכן לוחצים על בחירה.
  4. לוחצים על יצירה. במסוף Google Cloud עוברים לדף Dashboard ונוצר הפרויקט תוך כמה דקות.

CLI של gcloud

נכנסים ל-Google Cloud באחת מסביבות הפיתוח הבאות CLI (`gcloud`):

  • Cloud Shell: כדי להשתמש בטרמינל אונליין באמצעות ה-CLI של gcloud כבר הוגדר, צריך להפעיל את Cloud Shell.
    הפעלת Cloud Shell
  • Local Shell: כדי להשתמש בסביבת פיתוח מקומית, התקנה ו אתחול ב-CLI של gcloud.
    כדי ליצור פרויקט ב-Cloud, משתמשים בפקודה 'gcloud projects create':
    gcloud projects create PROJECT_ID
    מחליפים את PROJECT_ID על ידי הגדרת המזהה של הפרויקט שרוצים ליצור.

הפעלת החיוב בפרויקט ב-Cloud

מסוף Google Cloud

  1. נכנסים לקטע Billing במסוף Google Cloud. לוחצים על תפריט > חיוב > הפרויקטים שלי.

    לדף Billing for My Projects

  2. בקטע בחירת ארגון, בוחרים את הארגון שמשויך אליו. את הפרויקט ב-Google Cloud.
  3. בשורת הפרויקט, פותחים את התפריט Actions (פעולות) (), לוחצים על שינוי החיוב ובוחרים לחשבון לחיוב ב-Cloud.
  4. לוחצים על Set account.

CLI של gcloud

  1. כדי להציג רשימה של החשבונות הזמינים לחיוב, מריצים את הפקודה:
    gcloud billing accounts list
  2. מקשרים חשבון לחיוב לפרויקט ב-Google Cloud:
    gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID

    מחליפים את מה שכתוב בשדות הבאים:

    • PROJECT_ID הוא מזהה הפרויקט של הפרויקט ב-Cloud שבו רוצים להפעיל את החיוב.
    • BILLING_ACCOUNT_ID הוא מזהה החשבון לחיוב שאליו יש לקשר בפרויקט ב-Google Cloud.

הפעלת ממשקי ה-API

מסוף Google Cloud

  1. במסוף Google Cloud, מפעילים את Google Chat API, את Vertex AI API, ל-Cloud Functions API, ל-Firestore API, ל-Cloud Build API, Pub/Sub API ו-Cloud Run Admin API.

    הפעלת ממשקי ה-API

  2. עליכם לוודא שאתם מפעילים את ממשקי ה-API פרויקט ב-Cloud ולוחצים על Next.

  3. מוודאים שאתם מפעילים את ממשקי ה-API הנכונים ולוחצים על הפעלה.

CLI של gcloud

  1. אם צריך, מגדירים את הפרויקט הנוכחי ב-Cloud לפרויקט נוצר באמצעות הפקודה gcloud config set project:

    gcloud config set project PROJECT_ID
    

    מחליפים את PROJECT_ID במזהה הפרויקט של הפרויקט ב-Cloud שיצרתם.

  2. להפעיל את 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.com
    

    ממשקי ה-API של Cloud Build, Pub/Sub ו-Cloud Run Admin הם דרישות מוקדמות של ב-Cloud Functions.

אימות והרשאה

לא נדרשות הגדרות אימות והרשאה כדי לעקוב אחר זה של המדריך.

כדי לקרוא ל-Firestore ול-Vertex AI APIs, המדריך הזה משתמש Application Default Credentials באמצעות חשבון השירות שמוגדר כברירת מחדל ומצורף לפונקציה של Cloud Functions, אין צורך להגדיר. בהקשר של סביבת ייצור, בדרך כלל יצירה וגם צירוף קובץ במקום זאת, חשבון שירות לפונקציה של Cloud Functions.

יצירה ופריסה של אפליקציית Google Chat

עכשיו, אחרי שיצרתם והגדרתם את הפרויקט ב-Google Cloud, אתם מוכנים ליצור ולפרוס את אפליקציית Google Chat. בקטע הזה מבצעים את הפעולות הבאות: הבאים:

  1. יצירת מסד נתונים של Firestore שבו ניתן לשמור ולאחזר סיפורי משתמשים.
  2. אם רוצים, בודקים את הקוד לדוגמה.
  3. יצירת פונקציה של Cloud Functions לאירוח ולהרצה של הקוד של אפליקציית Chat בתגובה לאירועים שהתקבלו מ-Chat כבקשות HTTP.
  4. יצירה ופריסה של אפליקציית Google Chat באמצעות Google Chat API דף ההגדרות האישיות.

יצירת מסד הנתונים של Firestore

בקטע הזה יוצרים מסד נתונים של Firestore כדי לשמור ולאחזר סיפורי משתמשים, אבל אתם לא מגדירים את מודל הנתונים. מודל הנתונים הוגדר באופן מרומז בקוד לדוגמה על ידי model/user-story.js ו-model/user.js .

מסד הנתונים של אפליקציית Chat לניהול פרויקטים משתמש ב-NoSQL שמבוסס על מסמכים מאורגן לפי אוספים. מידע נוסף זמין במאמר הבא: מודל הנתונים של Firestore.

בתרשים הבא מוצגת סקירה כללית של ניהול הפרויקט. מודל הנתונים של אפליקציית Google Chat:

מודל הנתונים של מסד הנתונים ב-Firestore.

אוסף השורש הוא spaces, שבו כל מסמך מייצג רווח נוצרו סטוריז באפליקציית Chat. כל סיפור של משתמש מיוצג על ידי מסמך באוסף המשנה userStories, וכל משתמש שמיוצגים על ידי מסמך באוסף המשנה users.

הצגת הגדרות של אוספים, מסמכים ושדות

spaces

המרחבים שבהם אפליקציית Chat יצרה סטוריז.

שדות
Document IDString
מזהה ייחודי של מרחב ספציפי שבו נוצרות סטוריז. זהה לשם המשאב של המרחב המשותף ב-Chat API.
userStoriesSubcollection of Documents (userStories)
סטוריז שנוצרו על ידי אפליקציית Chat והמשתמשים בה. תואם ל-Document ID של userStories ב-Firebase.
usersSubcollection of Documents (user)
משתמשים שיצרו סטוריז או שהוקצו להם סטוריז.
displayNameString
השם המוצג של המרחב המשותף ב-Chat API. לא מוגדר לצ'אטים אישיים עם משתמשים.

userStories

סטוריז שנוצרו על ידי אפליקציית Chat והמשתמשים שלה.

שדות
Document IDString
מזהה ייחודי של סטורי ספציפי של משתמש שנוצר על ידי אפליקציית Chat והמשתמשים שלה.
assigneeDocument (user)
שם המשאב של המשתמש שהוקצה להשלמת הכתבה. תואם לערך Document ID במסמך users ולשם המשאב של המשתמש ב-Chat API.
descriptionString
תיאור של תכונת התוכנה מנקודת המבט של המשתמש.
priorityEnum
הדחיפות שצריך להשלים את העבודה. הערכים האפשריים הם Low, Medium או High.
sizeEnum
כמות העבודה. הערכים האפשריים הם Small, Medium או Large.
statusEnum
שלב העבודה. הערכים האפשריים הם OPEN, STARTED או COMPLETED.
titleString
שם הסיפור; סיכום קצר.

users

משתמשים שיצרו סטוריז או שהוקצו להם כתבות.

שדות
Document IDString
מזהה ייחודי של משתמש ספציפי. תואם ל-assignee של userStories ב-Firebase ולשם המשאב של המשתמש ב-Chat API.
avatarUrlString
כתובת URL המארחת את תמונת הדמות של המשתמש ב-Chat.
displayNameString
השם המוצג של המשתמש ב-Chat.

כך יוצרים את מסד הנתונים של Firestore:

מסוף Google Cloud

  1. נכנסים אל Firestore במסוף Google Cloud. לוחצים על תפריט > Firestore.

    כניסה אל Firestore

  2. לוחצים על Create dataset.

  3. בקטע Select your Firestore mode, לוחצים על Native mode.

  4. לוחצים על המשך.

  5. מגדירים את מסד הנתונים:

    1. בקטע Name your מסד נתונים, משאירים את Database ID (מזהה מסד הנתונים) בתור (default).

    2. בקטע Location type מציינים אזור למסד הנתונים, כמו us-central1. לקבלת הביצועים הטובים ביותר, יש לבחור את אותו הדבר או את הסמל בקרבת מקום המיקום בתור הפונקציה של Cloud Functions של אפליקציית Chat.

  6. לוחצים על Create dataset.

CLI של gcloud

  • ליצור מסד נתונים של Firestore במצב Native באמצעות הפקודה gcloud firestore databases create:

    gcloud firestore databases create \
    --location=LOCATION \
    --type=firestore-native
    

    מחליפים את LOCATION בשם של Firestore אזור, כמו בתור us-central1.

בדיקת הקוד לדוגמה

לפני שיוצרים את הפונקציה של Cloud Functions, מומלץ להקדיש כמה רגעים כדי לבדוק להכיר את הקוד לדוגמה שמתארח ב-GitHub.

הצגת הקוד ב-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
לוגיקה של אפליקציה לטיפול בקליק על כרטיס אירועי אינטראקציה בצ'אט.
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
מטפל בפעולות של מסד הנתונים. לפונקציות בקובץ הזה קוראים 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
כל קובץ בספרייה הזו ובספריות המשנה שלו מכיל את בדיקות היחידה בשביל הפונקציה, הבקר, השירות, התצוגה או הווידג'ט המתאימים. ניתן לבצע את כל בדיקות היחידה על ידי הרצת npm run test מתוך בתיקיית השורש של הפרויקט.

יצירה ופריסה של הפונקציה של Cloud Functions

בקטע הזה יוצרים ופורסים פונקציה של Cloud Functions שמורכבת הלוגיקה של אפליקציית Chat לניהול פרויקטים.

הפונקציה של Cloud Functions פועלת בתגובה לבקשת HTTP מ-Chat שמכיל אירוע אינטראקציה. כשמריצים את הקוד של הפונקציה של Cloud Functions, הוא מעבד את האירוע תשובה ל-Chat שתוצג ב-Chat הודעה, תיבת דו-שיח או סוג אחר של אינטראקציה עם המשתמש. אם רלוונטי, בענן הפונקציה גם קוראת ממסד הנתונים של Firestore או כותבים אליו.

כך יוצרים את הפונקציה של Cloud Functions:

מסוף Google Cloud

  1. מורידים את הקוד מ-GitHub כקובץ ZIP.

    הורדת קובץ ה-ZIP

  2. מחלצים את קובץ ה-ZIP שהורדתם.

    התיקייה שחולצה מכילה את כל הדוגמאות של Google Workspace של מאגר הנתונים.

  3. בתיקייה שחולצה, עוברים אל google-chat-samples-main/node/project-management-app/, ולאחר מכן לדחוס את הנתונים את התיקייה project-management-app בקובץ ZIP.

    תיקיית השורש של קובץ ה-ZIP חייבת להכיל את הרכיבים הבאים: קבצים ותיקיות:

    • env.js
    • README.md
    • gcloudignore.text
    • package-lock.json
    • package.json
    • index.js
    • model/
    • controllers/
    • views/
    • services/
  4. במסוף Google Cloud, נכנסים לדף Cloud Functions:

    כניסה ל-Cloud Functions

    צריך לוודא שהפרויקט ב-Google Cloud עבור אפליקציית Chat נבחרה.

  5. לוחצים על Create Function.

  6. בדף Create function, מגדירים את הפונקציה:

    1. בסביבה, בוחרים באפשרות דור שני.
    2. בשדה Function name, מזינים project-management-tutorial.
    3. בקטע Region, בוחרים אזור.
    4. בקטע Authentication, בוחרים לאפשר הפעלות לא מאומתות.
    5. לוחצים על הבא.
  7. ב-Runtime, בוחרים באפשרות Node.js 20.

  8. בקטע נקודת כניסה, מוחקים את טקסט ברירת המחדל ומזינים projectManagementChatApp.

  9. בקטע קוד מקור, בוחרים באפשרות העלאת מיקוד.

  10. בקטגוריית יעד, יצירה או בוחרים קטגוריה:

    1. לוחצים על מה מעניין אותך היום?
    2. בוחרים קטגוריה.
    3. לוחצים על בחירה.

    מערכת Google Cloud מעלה את קובץ ה-ZIP ומחלצת את קובצי הרכיבים בקטגוריה הזו. לאחר מכן, שירות Cloud Functions מעתיק את קובצי הרכיבים אל בפונקציה של Cloud Functions.

  11. בקובץ ZIP, מעלים את קובץ ה-ZIP שהורדתם מ-GitHub, שחולץ ודחוס:

    1. לוחצים על מה מעניין אותך היום?
    2. מנווטים לקובץ ה-ZIP ובוחרים בו.
    3. לוחצים על פתיחה.
  12. לוחצים על Deploy (פריסה).

    הדף Cloud Functions ייפתח והפונקציה תופיע עם שני מדדי התקדמות: אחד ל-build והשני לשירות. כששני מדדי ההתקדמות נעלמים ומוחלפים בסימן ביקורת הפונקציה נפרסה ומוכנה.

  13. עורכים את הקוד לדוגמה כדי להגדיר קבועים:

    1. בדף Cloud Functions details, לוחצים על Edit.
    2. לוחצים על הבא.
    3. בקטע קוד מקור, בוחרים באפשרות עורך מוטבע.
    4. בעורך המוטבע, פותחים את הקובץ env.js.
    5. מחליפים את project-id במזהה הפרויקט ב-Cloud.
    6. אופציונלי: מעדכנים את us-central1 באמצעות מיקום נתמך בפונקציה של Cloud Functions.
  14. לוחצים על Deploy (פריסה).

  15. לאחר סיום הפריסה של הפונקציה, מעתיקים את כתובת ה-URL שמשמשת כטריגר:

    1. בדף Function details (פרטי הפונקציה), לוחצים על Trigger (טריגר).
    2. מעתיקים את כתובת ה-URL. צריך אותו כדי להגדיר אפליקציית Chat בקטע הבא.

CLI של gcloud

  1. משכפלים את הקוד מ-GitHub:

    git clone https://github.com/googleworkspace/google-chat-samples.git
    
  2. מעבר לספרייה שמכילה את הקוד של הפרויקט הזה אפליקציית Chat לניהול:

    cd google-chat-samples/node/project-management-app
    
  3. עורכים את הקובץ env.js כדי להגדיר את משתני הסביבה:

    1. מחליפים את project-id במזהה הפרויקט ב-Google Cloud.
    2. מחליפים את us-central1 במיקום של הפרויקט ב-Google Cloud.
  4. פורסים את הפונקציה של 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.

  1. לאחר סיום הפריסה של הפונקציה, מעתיקים את המאפיין url מהשדה תשובה. זוהי כתובת ה-URL של הטריגר, שבה משתמשים בקטע הבא כדי להגדיר את אפליקציית Google Chat.

הגדרת אפליקציית Google Chat במסוף Google Cloud

בקטע הזה מוסבר איך להגדיר את Chat API במסוף Google Cloud עם מידע על אפליקציית Chat. כולל השם של אפליקציית Chat, קו נטוי נתמך ואת כתובת ה-URL שמשמשת לטריגר של הענן של אפליקציית Chat הפונקציה שאליה היא שולחת אירועי אינטראקציה ב-Chat.

  1. במסוף Google Cloud, לוחצים על תפריט. > מוצרים נוספים > Google Workspace > ספריית המוצרים > Google Chat API > ניהול > הגדרה.

    להגדרת Chat API

  2. בשדה App name, מקלידים Project Manager.

  3. בשדה כתובת URL של הדמות, מקלידים https://developers.google.com/chat/images/quickstart-app-avatar.png.

  4. בשדה Description, מקלידים Manages projects with user stories.

  5. מעבירים את המתג הפעלת תכונות אינטראקטיביות למצב פעיל.

  6. בקטע פונקציונליות, בוחרים באפשרות קבלת הודעות אישיות והצטרפות למרחבים משותפים ולשיחות קבוצתיות.

  7. בקטע הגדרות חיבור, בוחרים באפשרות כתובת ה-URL של האפליקציה.

  8. בקטע App URL (כתובת ה-URL של האפליקציה), מדביקים את כתובת ה-URL של הטריגר שהעתקתם מה-Cloud פריסת פונקציות, בפורמט https://REGION-PROJECT_ID.cloudfunctions.net/project-management-tutorial אם פרסתם את הפונקציה של Cloud Functions באמצעות ה-CLI של gcloud, הערך הוא url לנכס.

  9. רישום של אפליקציית Chat פקודות דרך שורת הפקודות. כדי לרשום פקודה של שורת הפקודות:

    1. בקטע SlashCommand, לוחצים על Add a לוכסן הפקודה.
    2. לכל פקודה של שורת הפקודות המפורטת בטבלה הבאה, מזינים את השדות Name, Command ID ו-Description (תיאור) ובוחרים אם הפקודה פותחים תיבת דו-שיח ולוחצים על Done (סיום):

      שם מזהה הפקודה תיאור נפתח תיבת דו-שיח
      /createUserStory 1 יצירת סטורי בשם שצוין. לא נבחר
      /myUserStories 2 רשימה של כל הכתבות שהוקצו למשתמש. לא נבחר
      /userStory 3 הצגת הסטטוס הנוכחי של הכתבה שצוינה. לא נבחר
      /manageUserStories 4 תיפתח תיבת דו-שיח שבה ניתן לערוך את הכתבות. נבחר
      /cleanupUserStories 5 כל הכתבות במרחב המשותף יימחקו. לא נבחר
  10. בקטע חשיפה, בוחרים אפשר להגדיר שאפליקציית Chat הזו תהיה זמינה לאנשים ולקבוצות ספציפיים הדומיין ב-Workspace ומזינים את כתובת האימייל שלכם.

  11. (אופציונלי) בקטע Logs (יומנים), בוחרים באפשרות Log errors to Logging (רישום שגיאות ביומן).

  12. לוחצים על שמירה. תופיע הודעה שנשמרה לגבי ההגדרות האישיות, כלומר אפליקציית Chat מוכן לבדיקה.

בדיקת האפליקציה של Chat

בדיקת אפליקציית Chat לניהול פרויקטים על ידי שליחת הודעה ולהשתמש בפקודות שלו כדי ליצור, לערוך ולמחוק סיפורי משתמשים.

  1. פותחים את Google Chat באמצעות חשבון Google Workspace שבו אתם משתמשים. שקיבלת כשהוספת את עצמך כבודק נאמן.

    כניסה ל-Google Chat

  2. לוחצים על צ'אט חדש.
  3. בשדה אפשר לצרף אנשים, מקלידים את השם של מי שרוצים לצרף אפליקציית Chat.
  4. בוחרים את אפליקציית Chat הרצויה מהתוצאות. A ההודעה תיפתח.

  5. בצ'אט האישי החדש עם האפליקציה, מקלידים Hello ואז מקישים על enter. ניהול הפרויקטים אפליקציית Chat מגיבה עם תפריט עזרה שמפרט מה היא מה אתם יכולים לעשות.
  6. כדי ליצור סטורי, צריך להקליד /createUserStory Test story בשורת ההודעות, ולשלוח אותה. ניהול הפרויקטים התשובה של אפליקציית Chat כוללת הודעה בכרטיס עם פרטים על סיפור המשתמש שהוא יוצר בשבילכם באמצעות בינה מלאכותית גנרטיבית מ-Vertex AI.
  7. במסוף, בודקים את מסד הנתונים של Firestore כדי לבדוק את רשומות שהוא יצר לגבי המרחב המשותף שאליו הוספת את את אפליקציית Chat, המשתמשים שהייתה להם אינטראקציה איתה, וסיפור המשתמש שיצרתם.

    כניסה אל Firestore

  8. חוזרים ל-Google Chat.

    כניסה ל-Google Chat

  9. אם רוצים לערוך את הסטורי, לוחצים על עריכה. כשמרוצים מ- את הסיפור, לוחצים על שמירה.
  10. כדאי לבדוק כל פקודה של שורת הפקודות שהאפליקציה תומכת בה. כדי לראות אותן, אפשר להקליד / או להזכיר את אפליקציית Chat.
  11. מוחקים את סיפור המשתמש לבדיקה על ידי שליחת /cleanupUserStories פקודה של שורת הפקודות. לחלופין, מסירים את האפליקציה או מסירים אותה. אחרי שתסירו את האפליקציה, כל סטוריז של משתמשים שנוצרו במרחב המשותף יימחקו.

פתרון בעיות

כשאפליקציית Google Chat או אפליקציית Google Chat הפונקציה card מחזירה שגיאה, בממשק של Chat מוצגת ההודעה "משהו השתבש". או "לא ניתן לעבד את הבקשה שלך". לפעמים בממשק המשתמש של Chat לא מציגה הודעות שגיאה, אבל אפליקציית Chat או והכרטיס מפיק תוצאה לא צפויה: לדוגמה, הודעה בכרטיס יופיעו.

יכול להיות שלא תופיע הודעת שגיאה בממשק המשתמש של Chat, אבל יש הודעות שגיאה תיאוריות ונתוני יומן זמינים כדי לעזור לכם לתקן שגיאות כשמופעלת רישום שגיאות ביומן של אפליקציות ל-Chat. לקבלת עזרה בצפייה, לניפוי באגים ולתיקון שגיאות: פתרון בעיות ותיקון שגיאות ב-Google Chat

הסרת המשאבים

כדי להימנע מצבירת חיובים בחשבון Google Cloud עבור במשאבים שנעשה בהם שימוש במדריך הזה, מומלץ למחוק את פרויקט בענן.

  1. במסוף Google Cloud, עוברים לדף Manage resources. לוחצים על תפריט > IAM & Admin (אדמין) > לניהול משאבים

    מעבר למנהל המשאבים

  2. ברשימת הפרויקטים, בוחרים את הפרויקט שרוצים למחוק ולוחצים על הסמל. מחיקה של .
  3. כדי למחוק, כותבים את מזהה הפרויקט בתיבת הדו-שיח ולוחצים על Shut down. את הפרויקט.