בקטע הזה מתוארות בעיות נפוצות שעשויות להתרחש במהלך פיתוח ובדיקה של אפליקציות 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
יכול להיות שתקבלו את השגיאה Google Chat API is only available to Google Workspace users
כשמגדירים את אפליקציית Chat. ההודעה הזו מופיעה אם חשבון Google שבו השתמשתם כדי להגדיר את Chat API לא שייך לארגון ב-Google Workspace. כדי ליצור אפליקציה ל-Chat או להשתמש ב-Chat API, צריך להשתמש בחשבון Google Workspace.
לתשומת ליבכם: משתמשי Google Chat יכולים להשתמש באפליקציות Chat בלי חשבון Google Workspace. מידע נוסף על האופן שבו משתמשים מוצאים ומתקינים אפליקציות ל-Chat זמין במאמר פרסום אפליקציות ל-Google Chat.
אפשר להחריג משתמשים ממרחבים משותפים
אם אדמין ב-Google Workspace אוסר על משתמשים להפעיל או להשבית את היסטוריית השיחות ב-Chat, יכול להיות שבמקרים מסוימים המשתמשים לא יוכלו להצטרף למרחב משותף או להישאר בו בגלל סתירה בין הגדרה ברמת המשתמש שמאלצת את הפעלת היסטוריית השיחות או השבתתה לבין מרחב משותף שעובר בירושה את ההגדרה המוגדרת בארגון.
לדוגמה, אם הגדרת ההיסטוריה של משתמש מסוים ב-Chat מוגדרת כ'מופעלת' בכפייה, והגדרת ההיסטוריה של המרחב המשותף מוגדרת כ'מושבתת' בכפייה, יכול להיות שהמשתמש לא יוכל להצטרף למרחב המשותף. בנוסף, יכול להיות שהמשתמש הזה יוסר מהמרחב המשותף אם הוא הצטרף אליו לפני הסכסוך, ואז פרסם הודעה במרחב המשותף אחרי הסכסוך.
בתרחיש הזה, ובתרחישים אחרים שבהם יש התנגשויות בין הגדרות ההיסטוריה, יכול להיות ש-Chat API לא יוכל ליצור חברות במרחב המשותף. לחלופין, יצירת הודעה עם אימות משתמש עשויה להוציא מהמרחב המשותף את המשתמש המאומת עם הגדרת היסטוריה ב-Chat שנמצאת בהתנגשות.
מידע נוסף זמין במאמר אפשר להחריג משתמשים ממרחב משותף במרכז העזרה של Google Workspace לאדמינים.
פתרון בעיות בשירות צ'אט מתקדם ב-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 Functions
בדיקת שגיאות ב-Cloud Functions
בנוסף ליומנים, יכול להיות ש-Cloud Function ידווח גם על שגיאות שנתקלו בהן במהלך הריצה.
נכנסים לדף Cloud Functions במסוף Google Cloud:
לוחצים על פונקציית Cloud של אפליקציית 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 Function, ולא בכתובת ה-URL של הטריגר של Cloud Function הקיימת.
משתמש אחד או יותר שצוינו במדיניות לא שייכים ללקוח מורשה
כשפורסים Cloud Function, יכול להיות שתופיע השגיאה 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 Function. ההודעה הזו מציינת שלמשתמש בשם allUsers אין הרשאה להפעיל את Cloud Function.
הקצאת התפקיד 'Cloud Functions Invoker' ל-'allUsers' פירושה שהפונקציה של Cloud Functions שמפעילה את האפליקציה זמינה לכולם וניתן לגשת אליה ללא אימות. במאמר הקצאת תפקיד יחיד מוסבר איך מקצים תפקידים.
יכול להיות שהשגיאה הזו מצביעה על כך שהפרויקט ב-Google Cloud מוגבל לדומיין. למידע נוסף על אילוצים של הגבלות דומיינים, קראו את המאמר הגבלת זהויות לפי דומיין.
כדי לפתור את הבעיה, צריך לוודא ש-Cloud Function מאפשרת הפעלות לא מאומתות. במאמר איך מאפשרים הפעלות לא מאומתות של Cloud Function קיים מוסבר איך מאפשרים הפעלות לא מאומתות של Cloud Function קיים.