אלה השלבים ליצירת מחבר לקהילה:
- יוצרים פרויקט חדש ב-Apps Script.
- כותבים את קוד המחבר.
- משלימים את קובץ המניפסט של הפרויקט.
יצירת פרויקט חדש ב-Apps Script
כדי ליצור פרויקט חדש, נכנסים אל Google Apps Script. Apps Script ייצור עבורכם סקריפט ברירת מחדל. אפשר להסיר את הפונקציה myFunction ולשנות את שם הפרויקט. (מידע נוסף על Apps Script)
כתיבת קוד המחבר
לכל מחבר צריך להיות מוגדר סט ספציפי של פונקציות. אפליקציית האירוח (למשל, Data Studio) תבצע את הפונקציות האלה. המחבר שלכם אמור לטפל בבקשות נכנסות ולהגיב כמו שמתואר בהפניה ל-API של מחבר הקהילה. אם נתקלתם בבעיות במהלך פיתוח הקוד, תוכלו להיעזר במדריך לניפוי באגים.
הגדרת סוג האימות בפונקציה getAuthType()
הפונקציה הזו נקראת כדי לזהות את שיטת האימות שמשמשת את שירות הצד השלישי. פרטים נוספים מפורטים במאמר בנושא getAuthType(). שיטות האימות שנתמכות כרגע מפורטות במאמר AuthType reference.
לדוגמה, המחבר הבא לא דורש אימות:
אם מקור הנתונים דורש אימות OAuth 2.0, צריך לעיין במדריך לאימות OAuth 2.0 ולהוסיף את הפונקציות הנדרשות הנוספות למחבר.
הגדרת התצורה באמצעות getConfig()
הפונקציה getConfig() נקראת כדי לקבל את ההגדרה של המחבר, כולל הערכים שהמשתמש סיפק והמחבר דורש. פרטים נוספים זמינים במאמר בנושא getConfig().
על סמך התשובה שסופקה על ידי getConfig(), Data Studio יעבד את מסך ההגדרות של המחבר. רשימת רכיבי ההגדרה הנתמכים מופיעה במאמר בנושא הפניה ל-ConfigType.
אם מקור הנתונים דורש תאריך כפרמטר, צריך להתקשר אל config.setDateRangeRequired(true). אם אתם צריכים לשאול שאלות לגבי הגדרות מותנות או דינמיות, כדאי לעיין במאמר בנושא הגדרות בשלבים.
הדוגמה הבאה היא של מחבר שמחייב את המשתמש להזין קוד של שם חבילת npm. פונקציית getConfig() מגדירה שדה מידע ושדה להזנת קלט:
הגדרת השדות באמצעות getSchema()
הפונקציה הזו נקראת כדי לקבל את הסכימה של הבקשה הנתונה. כל פרמטר הגדרה שמוגדר על ידי הפונקציה getConfig() יסופק בארגומנט request. פרטים נוספים מופיעים במאמר בנושא getSchema().
יכול להיות שהסכימה קבועה, או שצריך לספק אותה באופן דינמי בזמן השליחה של הבקשה, בהתאם למקור הנתונים של המחבר ולהגדרה שסיפק המשתמש.
לדוגמה, אם מחבר שולף נתוני דוחות על סמך מזהה דוח, יכול להיות שלא תהיה אפשרות לדעת מראש את הנתונים שיוחזרו עבור הדוח הזה, ולכן גם לא את הסכימה.
במקרה כזה, יכול להיות ש-getSchema() ידרוש אחזור נתונים, ויהיה צורך לחשב את הסכימה.
אחזור והחזרה של נתונים באמצעות getData()
הפונקציה הזו נקראת כדי לקבל נתונים עבור הבקשה הנתונה. כל פרמטר הגדרה שמוגדר על ידי הפונקציה getConfig() יסופק בארגומנט request. פרטים נוספים מופיעים במאמר בנושא getData().
הפרמטרים הבאים מהבקשה getData() דורשים התייחסות נוספת:
lastRefresh
lastRefreshמייצג חותמת זמן שמציינת את השעה של הבקשה האחרונה לרענון הנתונים. אפשר לנתח את הערך באמצעותnew Date(timestampString). אם אתם משתמשים ב-Apps Script Cache Service או בשיטת שמירה במטמון אחרת, חותמת הזמןlastRefreshיכולה לעזור לכם להחליט אם לשלוח בקשת אחזור חדשה למקור הנתונים או להציג נתונים מהמטמון.
dateRange
אם הערך שלdateRangeRequiredמוגדר ל-trueב-getConfig(), כל קריאה שלgetData()תכיל את טווח התאריכים שנבחר בבקשה. פרטים נוספים מופיעים במאמר בנושא עבודה עם טווחי תאריכים.
בדוגמה הבאה, הנתונים מאוחזרים על סמך הבקשה הנכנסת, ומוחזרים נתוני החבילה:
השלמת מניפסט הפרויקט
קובץ המניפסט מכיל מידע על מחבר הקהילה שנדרש כדי לפרוס את המחבר ולהשתמש בו ב-Data Studio.
כדי לערוך את קובץ המניפסט בסביבת הפיתוח של Apps Script, לוחצים על התפריט תצוגה ואז על הצגת קובץ המניפסט. ייווצר קובץ מניפסט חדש appsscript.json.
מעדכנים את המניפסט ומוסיפים לו את הנתונים הבאים:
פרטים על מניפסט Data Studio מופיעים במאמר מניפסט.
השלבים הבאים
השלב הבא הוא פריסת מחבר הקהילה.