יצירת תוספים ל-Google Workspace

כדי לפתח תוסף חדש ל-Google Workspace, צריך לפעול לפי התהליך הכללי הבא:

  1. אפשר להגדיר פרויקטים של התוסף ולבחור בעלים ושותפי עריכה.
  2. מעצבים את המראה וההתנהגות של התוסף
  3. מגדירים את מניפסט הפרויקט או את משאב הפריסה של התוסף.
  4. כותבים קוד כדי להגדיר את המראה וההתנהגות של התוסף.
  5. צריך לבדוק את היקפי ההרשאות של OAuth של התוסף.
  6. בדיקת התוסף באפליקציות המארחות שהוא מתרחב.
  7. מפרסמים את התוסף.

הגדרת פרויקטים של התוסף ובחירת בעלים ושותפי עריכה

אם אתם יוצרים את התוסף ב-Apps Script, אתם יוצרים גם פרויקט ב-Apps Script וגם פרויקט ב-Google Cloud. אם אתם יוצרים את התוסף בשפה שאינה Apps Script, תצטרכו רק ליצור פרויקט ב-Google Cloud.

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

פרויקטים ב-Apps Script

אפשר ליצור קובצי פרויקט ב-Apps Script של התוסף באחסון שיתופי, כך שלאף חשבון לא תהיה בעלות יחידה. הצבה של קובץ הסקריפט של התוסף באחסון שיתופי, מבטיחה שלכמה שותפי עריכה תהיה גישה לפרויקט הסקריפט.

כשמפרסמים תוסף, חשבון משתמש אחד משמש בתור המפרסם. לחשבון הפרסום צריכה להיות גישת עריכה לפרויקט הסקריפט, אבל הוא לא חייב להיות הבעלים.

במאמר פרויקטים של סקריפטים מוסבר איך ליצור פרויקט ב-Apps Script.

פרויקטים ב-Google Cloud

מומלץ להוסיף שותפי עריכה לפרויקט ב-Cloud של התוסף. כך תוכלו לוודא שלמישהו בצוות שלכם תמיד תהיה גישה להגדרות Cloud של התוסף.

במאמר יצירת פרויקט ב-Google Cloud מוסבר איך יוצרים פרויקט חדש ב-Google Cloud.

עיצוב המראה וההתנהגות של התוסף

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

במדריך הסגנון לתוספים ל-Google Workspace מפורטות הנחיות לעיצוב חוויית המשתמש בתוספים.

הגדרת המניפסט של פרויקט התוסף

בפרויקטים של Apps Script, מניפסט הפרויקט הוא קובץ JSON מיוחד. הוא מציין מגוון פרטים לגבי הפרויקט, כמו יחסי התלות של הספרייה שלו. לתוספים ל-Google Workspace, המניפסט מספק גם את המידע הבסיסי שנדרש לאפליקציה המארחת כדי להציג אותו בצורה נכונה.

במאמר מניפסטים מוסבר איך להגדיר את המניפסט של התוסף ב-Apps Script.

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

תכנות של התוסף

בשביל התוסף צריך להטמיע ממשק מבוסס-כרטיס. צריך להשתמש בשירות הכרטיסים של Apps Script. אם כותבים בשפת קוד אחרת, מחזירים קובץ JSON בפורמט המתאים כדי שהממשק יעובד ככרטיסים.

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

יצירת כרטיסים

כדי להגדיר ממשק משתמש של תוספים, יוצרים אובייקטים ב-Card וממלאים אותם בווידג'טים. פונקציות הטריגר שצוינו במניפסט צריכות להחזיר אובייקט Card יחיד או מערך של אובייקטים מסוג Card שמייצגים 'דפים' שונים בממשק התוסף. התוסף יכול גם ליצור ולהציג כרטיסים חדשים בהתאם לפעולות של המשתמשים.

ב-Apps Script, יוצרים כרטיסים באמצעות המחלקה CardBuilder. לכל כרטיס צריך CardHeader וגם CardSections אחד או יותר. צריך לאכלס כל קטע בכרטיס בווידג'טים הנפרדים שמרכיבים את ממשק התוסף. ווידג'טים של אינטראקציה בדרך כלל מקושרים לפעולות כדי להגדיר את התנהגות האינטראקציה שלהם.

אחרי שמוסיפים את כל הקטעים והווידג'טים לכרטיס דרך CardBuilder, צריך להפעיל את הפקודה CardBuilder.build() כדי ליצור את אובייקט Card המתאים.

אתם יכולים להשתמש בשירותים מובנים אחרים של Apps Script, כמו CalendarApp, כדי לאחזר מידע שיוצג בכרטיסי התוספים שאתם יוצרים. אפשר להשתמש בנתונים שאוחזרו משירותים שלא שייכים ל-Google.

אם התוספים ל-Google Workspace צריכים גישה לממשקי API שאינם של Google שנדרשים להם OAuth, צריך להגדיר את השירות ולהתחבר אליו. מידע נוסף מופיע במדריך להתחברות לשירותים שאינם של Google.

הזמנת בנייה

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

  1. יוצרים את הווידג'ט.
  2. מוסיפים את הווידג'ט לקטע הכרטיסים.
  3. חוזרים על הפעולה עד שכל הווידג'טים של קטע הכרטיסים יוצגו.
  4. מוסיפים את הקטע 'כרטיס' לכרטיס.

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

פעולות אוניברסליות

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

למידע נוסף, ראו פעולות אוניברסליות.

אימות היקפי ההרשאות של OAuth לתוסף

היקפים מגדירים אילו פעולות התוסף יכול לבצע בשם המשתמש. השיטה המומלצת היא להגדיר לתוספים רק היקפים לפעולות שצריכות להיות להם, ולא יותר.

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

למידע נוסף, ראו היקפים.

בדיקת התוסף

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

למידע נוסף, אפשר לקרוא את המאמר בדיקת תוספים ל-Google Workspace.

פרסום התוסף

פרסום התוסף הופך אותו לזמין לאחרים, באופן ציבורי או רק למשתמשים בדומיין שלכם. לפני שמתחילים בתהליך הפרסום, חשוב לקרוא את הסקירה הכללית של אתר החדשות. פרסום הוא תהליך מורכב שמחייב הכנה וזמן כדי להשלים אותו.

התוספים ל-Google Workspace פורסמו ב-Google Workspace Marketplace. תוספים שזמינים לציבור צריכים להשלים בדיקת אפליקציה לפני פרסומם.

פרטים נוספים זמינים במאמר פרסום תוסף Google Workspace.