בקטע הזה מתוארות בעיות נפוצות שעשויות להופיע במהלך פיתוח ובדיקה של אפליקציות ל-Chat.
הודעת כרטיס, תיבת דו-שיח או תצוגה מקדימה של קישור לא מוצגים או לא פועלים כצפוי
לקבלת עזרה בפתרון בעיות שקשורות לכרטיסים, אפשר לעיין במאמר פתרון בעיות בכרטיסים ותיקון שלהן.
האפליקציה לא מגיבה
אם שולחים הודעה לאפליקציית Chat ומקבלים את התשובה 'האפליקציה לא מגיבה', צריך לבדוק את ההגדרות של אפליקציית Chat:
במסוף Google Cloud, לוחצים על תפריט > מוצרים נוספים > Google Workspace > Product Library > Google Chat API > Manage > Configuration.
בקטע סטטוס האפליקציה, מוודאים שבחרתם באפשרות פעילה – זמינה למשתמשים.
בקטע תכונות אינטראקטיביות, מוודאים שההגדרות מתאימות לפונקציונליות של האפליקציה. אם אפליקציית Chat מקיימת אינטראקציה עם משתמשים, חשוב להפעיל את האפשרות הפעלת תכונות אינטראקטיביות:
- אם האפליקציה שלכם מגיבה להודעות, חשוב לבחור באפשרות קבלת הודעות 1:1.
- בקטע Connection settings (הגדרות החיבור), מוודאים שכתובת ה-URL של נקודת הקצה (endpoint) של HTTP, מזהה הפריסה של פרויקט Apps Script, שם הנושא ב-Cloud Pub/Sub או סוכן Dialogflow מוגדרים בצורה נכונה ושהפריסה שלהם בוצעה.
- בקטע חשיפה, מוודאים שלמשתמשים המתאימים יש גישה לאפליקציה באמצעות כתובת אימייל או קבוצה בדומיין של Google Workspace. אם האפליקציה נפרסת באמצעות Google Workspace Marketplace SDK, אין צורך בהגדרות של רמת החשיפה כי ההגדרות של Google Workspace Marketplace מקבלות עדיפות.
אם האפליקציה פורסמה באמצעות Google Workspace Marketplace SDK, צריך לבדוק את ההגדרות של Google Workspace Marketplace.
לוחצים על שמירה.
מנסים לשלוח שוב הודעה לאפליקציה.
Google Chat API זמין רק למשתמשי Google Workspace
כשמגדירים את אפליקציית Chat, יכול להיות שתתקבל השגיאה Google Chat API is only available to Google Workspace users
. המשמעות של ההודעה הזו היא שחשבון Google שבו השתמשתם כדי להגדיר את Chat API לא שייך לארגון ב-Google Workspace. כדי ליצור אפליקציה ל-Chat או להשתמש ב-Chat API, צריך להשתמש בחשבון Google Workspace.
לתשומת ליבכם: משתמשי Google Chat יכולים להשתמש באפליקציות Chat בלי חשבון Google Workspace. למידע נוסף על האופן שבו משתמשים מגלים ומתקינים אפליקציות ל-Chat, ראו פרסום אפליקציות של Google Chat.
אפשר להחריג משתמשים ממרחבים משותפים
אם האדמין של Google Workspace אוסר על המשתמשים להפעיל או להשבית את היסטוריית השיחות ב-Chat, יכול להיות שבמקרים מסוימים המשתמשים לא יוכלו להצטרף למרחב משותף או להישאר בו בגלל התנגשות בין הגדרה ברמת המשתמש שמאלצת את היסטוריית השיחות להיות מופעלת או מושבתת לבין מרחב משותף שעובר בירושה את ההגדרה המופעלת או המושבתת ברמת הארגון.
לדוגמה, אם הגדרת ההיסטוריה של משתמש מסוים ב-Chat מוגדרת כ'מופעלת' בכפייה, והגדרת ההיסטוריה של המרחב המשותף מוגדרת כ'מושבתת' בכפייה, יכול להיות שהמשתמש לא יוכל להצטרף למרחב המשותף. בנוסף, ייתכן שהמשתמש יוסר מהמרחב אם הוא הצטרף לפני ההתנגשות, ולאחר מכן הוא יפרסם הודעה במרחב המשותף אחרי ההתנגשות.
בתרחיש הזה ובתרחישים אחרים שבהם יש התנגשויות בין הגדרות ההיסטוריה, יכול להיות שלא תהיה ל-Chat API אפשרות ליצור מינוי. לחלופין, יכול להיות שיצירת הודעה עם אימות משתמש תסיר מהמרחב המשותף את המשתמש המאומת עם הגדרה מתנגשת של היסטוריית הצ'אט.
מידע נוסף מופיע במאמר אפשר להחריג משתמשים ממרחבים משותפים במרכז העזרה של Google Workspace לאדמינים.
פתרון בעיות בשירות Advanced Chat ב-Google Apps Script
בדף Apps Script מוסבר על שירות צ'אט המתקדם.
משתמשים לא יכולים להוסיף אפליקציית Chat למרחב משותף
אם משתמשים נתקלים בהודעת השגיאה This organization's administrator must allow users to install this Chat app
כשהם מנסים להוסיף אפליקציית Chat למרחב משותף, יכולות להיות לכך כמה סיבות:
- הארגון השבית את אפליקציות Chat.
- הארגון לא הוסיף את אפליקציית Chat הספציפית הזו לרשימת ההיתרים של הארגון.
אם משתמש נתקל בהודעת השגיאה הזו כשמנסים לבצע פעולה באפליקציית Chat, יכול להיות שהסיבה לכך היא שהארגון העניק גישה ליחידת משנה ארגונית בלי להפעיל אותה ליחידת האם הארגונית.
במאמר הרשאת התקנה של אפליקציות ל-Chat למשתמשים מוסבר איך לפתור את הבעיה.
האדמין צריך להעניק לאפליקציה את היקף ההרשאה הנדרש של OAuth לביצוע הפעולה הזו
כשמבצעים אימות כאפליקציית Chat, ייתכן שתופיע השגיאה הבאה:
<HttpError 403 when requesting https://chat.googleapis.com/v1/spaces/{space}?alt=json returned "The administrator must grant the app the required OAuth authorization scope for this action.". Details: "The administrator must grant the app the required OAuth authorization scope for this action.">
הודעת השגיאה הזו מופיעה אם אדמין ב-Google Workspace עדיין לא העניק לאפליקציית Chat אישור חד-פעמי לשימוש בהיקפי הרשאה שמתחילים בשם https://www.googleapis.com/auth/chat.app.*
.
כדי לפתור את השגיאה:
- צריך לבקש מהאדמין ב-Google Workspace
לתת אישור לאפליקציית Chat.
כשמטפלים בשגיאה הזו בלוגיקה של אפליקציית Chat, כדאי לשלוח הודעה כדי להודיע שאפליקציית Chat צריכה אישור אדמין כדי לבצע את הפעולה המבוקשת, למשל:
To perform this action, I need approval. <https://support.google.com/a?p=chat-app-auth|Learn more>.
- אם השיטה של Chat API תומכת בהיקף ההרשאה
https://www.googleapis.com/auth/chat.bot
, שלא מחייב אישור של אדמין, מומלץ להשתמש בה במקום זאת. כדי לבדוק אילו היקפי הרשאה השיטה תומכת בהם, אפשר לעיין במאמר אימות והרשאה של אפליקציות Google Chat ובקשות ל-Google Chat API.
פתרון שגיאות ב-Cloud Functions
אם אפליקציית Chat מוטמעת באמצעות Cloud Functions והיא לא פועלת, תוכלו להיעזר בקטעים הבאים כדי לפתור את הבעיה.
בדיקת יומני הפונקציה של Cloud Functions
בשלב הראשון, כדאי לבדוק אם יש שגיאות ביומני Cloud Functions.
נכנסים לדף Cloud Functions במסוף Google Cloud:
כדי לפתוח את היומנים, מחפשים את Cloud Function של אפליקציית Chat ולוחצים על Show actions (הצגת פעולות) > View logs (הצגת יומנים).
Logs Explorer נפתח ומריץ שאילתה שמציגה יומני Cloud Functions, כולל שגיאות.
אם המידע שמופיע ביומן כברירת מחדל לא מספיק לניפוי באגים באפליקציה, אפשר להוסיף רישום ביומן מקוד Cloud Function. צפייה ביומני Cloud Function וכתיבה שלהם
בדיקת שגיאות ב-Cloud Functions
בנוסף ליומנים, יכול להיות ש-Cloud Function ידווח גם על שגיאות שנתקלו בהן במהלך הריצה.
במסוף Google Cloud, נכנסים לדף Cloud Functions:
לוחצים על Cloud Function של אפליקציית Chat.
בדף הפרטים של הפונקציה, השגיאות מפורטות בקטע שגיאות.
כדי לפתור את השגיאה, לוחצים עליה.
תיקון שגיאות נפוצות בפונקציה של Cloud Functions
השגיאות הבאות מופיעות לפעמים כשיוצרים אפליקציית Chat באמצעות Cloud Functions.
הפונקציה ChatApp באזור REGION_NAME
כבר קיימת בפרויקט PROJECT_NAME
כשפורסים פונקציה של Cloud Functions, יכול להיות שתופיע הודעת השגיאה Function
ChatApp in region REGION_NAME in project PROJECT_NAME already
exists
. ההודעה הזו מופיעה אם יש פונקציה אחרת ב-Cloud Functions עם אותו שם כמו הפונקציה שאתם פורסים. משנים את השם ופורסים את הפונקציה מחדש. מוודאים שאפליקציית Chat משתמשת בכתובת ה-URL של הטריגר לפונקציה של Cloud Functions, ולא בכתובת ה-URL של הטריגר של הפונקציה של Cloud Functions הקיימת.
משתמש אחד או יותר שצוינו במדיניות לא שייכים ללקוח מורשה
כשפורסים פונקציה של Cloud Functions, ייתכן שתקבלו את הודעת השגיאה The operation
cannot be completed on the function: "One or more users named in the policy do
not belong to a permitted customer."
. אם קיבלתם את הודעת השגיאה הזאת ולאחר מכן שולחים הודעה לאפליקציית Chat, מופיעה הודעת שגיאה על כך שהאפליקציה לא מגיבה כי Google Chat לא יכול להגיע לשרת שמארח את הפונקציה של Cloud Functions. ההודעה הזו מציינת שלמשתמש בשם allUsers אין הרשאה להפעיל את Cloud Function.
אם מקצים ל-'allUsers' את התפקיד Cloud Functions Invoker, זה אומר שהפונקציה של Cloud Functions שמפעילה את האפליקציה תהיה זמינה לציבור ונגישה ללא אימות. במאמר הקצאת תפקיד יחיד מוסבר איך מקצים תפקידים.
יכול להיות שהשגיאה הזו מצביעה על כך שהפרויקט ב-Google Cloud מוגבל לדומיין. מידע נוסף על אילוצים של הגבלת דומיינים זמין במאמר הגבלת זהויות לפי דומיין.
כדי לפתור את הבעיה, צריך לוודא ש-Cloud Function מאפשרת הפעלות לא מאומתות. במאמר מתן גישה ציבורית (לא מאומתת) מוסבר איך מאפשרים הפעלות לא מאומתות של פונקציה קיימת של Cloud Functions.