Skip to main content
אתה צופה בתיעוד למפתחים
תיעוד זה מיועד למפתחים העובדים עם פלטפורמת המפתחים של Base44. למידע על automations בעורך האפליקציות, ראה יצירת automations עבור האפליקציה שלך.
Automations מאפשרים ל-פונקציות בקאנד לרוץ אוטומטית לפי לוח זמנים, בתגובה לאירועי מסד נתונים, או כאשר אינטגרציה מחוברת שולחת אירוע webhook. השתמש ב-automations כדי לעבד נתונים במרווחים קבועים, לטפל בשינויי entity, להגיב לאירועי שירותים חיצוניים, או לבצע משימות חד-פעמיות בזמנים ספציפיים. לכל פונקציית בקאנד יכולים להיות מספר automations מצורפים, מוגדרים בקובץ function.jsonc של הפונקציה. אם יש לך רק קובץ entry.ts או entry.js, תצטרך להוסיף את קובץ התצורה הזה כדי להשתמש ב-automations. Automations נפרסים אטומית עם קוד הפונקציה כאשר אתה מריץ deploy או functions deploy.

סוגי automation

Base44 תומכת ב-4 סוגי automations:

שדות נפוצים

שדות נפוצים לכל automations

כל סוגי ה-automation חולקים את השדות הבאים:

שדות נפוצים ל-scheduled automations

cron ו-simple scheduled automations חולקים את השדות הנוספים האלה:

תצורת automation

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

Cron

השתמש בשדות נפוצים לכל automations ובשדות נפוצים ל-scheduled automations יחד עם השדות הספציפיים ל-cron המפורטים כאן. הגדר type ל-"scheduled" ו-schedule_type ל-"cron" כדי להשתמש בביטויי cron לשליטת תזמון מדויקת. Cron automations משתמשים בתחביר סטנדרטי של 5 שדות: minute hour day-of-month month day-of-week. ראה את crontab.guru לעורך אינטראקטיבי של ביטויי cron וסימוכין תחביר.

דוגמת cron

דוגמה זו מריצה פונקציה כל יום בחצות UTC:

Simple schedule

השתמש בשדות נפוצים לכל automations ובשדות נפוצים ל-scheduled automations יחד עם שדות simple schedule המפורטים כאן. הגדר type ל-"scheduled" ו-schedule_type ל-"simple" עבור צרכי תזמון פשוטים. הגדר משימות חוזרות לפי מרווח כגון דקות, שעות, ימים, שבועות או חודשים מבלי לכתוב ביטויי cron.

דוגמאות simple schedule

הדוגמאות הבאות מציגות דרכים שונות לתזמון automations עם simple schedules:

Entity events

השתמש בשדות נפוצים לכל automations יחד עם שדות entity event המפורטים כאן. הגדר type ל-"entity" כדי להפעיל פונקציות אוטומטית כאשר רשומות מסד נתונים נוצרות, מעודכנות או נמחקות. Entity automations יכולים להאזין לסוג אירוע 1 או יותר על entity ספציפי.

דוגמאות entity event

הדוגמאות הבאות מציגות כיצד להפעיל פונקציות בהתבסס על אירועי entity:

Connector automations

השתמש בשדות נפוצים לכל automations יחד עם השדות הספציפיים ל-connector המפורטים כאן. הגדר type ל-"connector" כדי להפעיל פונקציות כאשר אינטגרציה מחוברת שולחת אירוע webhook. השתמש בהן כדי להגיב לפעילות של שירותים חיצוניים בזמן אמת. לדוגמה, אתה יכול לפענח אימייל חדש, לסנכרן שינוי בלוח שנה, או להגיב לעדכון קובץ ב-Google Drive. תוכל באופן אופציונלי להוסיף trigger conditions כדי לסנן אירועים כך שהפונקציה שלך תרוץ רק כאשר ה-payload תואם לכללים שאתה מגדיר. כאשר connector automation מופעל, הפונקציה שלך מקבלת webhook payload מובנה המכיל את סוג האירוע, פרטי האינטגרציה ואת הנתונים הגולמיים מהשירות החיצוני.
ה-connector חייב להיות מוגדר בפרויקט שלך ומאושר לפני הפריסה. ראה Shared connectors להוראות הגדרה.

אינטגרציות ואירועים נתמכים

אירוע mailbox של Gmail מופעל עבור כל שינוי בתיבת דואר, לא רק הודעות חדשות. כדי שהפונקציה שלך תרוץ רק כאשר אימיילים חדשים מגיעים, הוסף trigger condition: { "field": "has_new_messages", "operator": "equals", "value": true }.
Slack connector automations דורשים trigger conditions. הפריסה תיכשל אם לא מוגדרים תנאים עבור Slack connector automations.

פורמטים של resource ID

הערך הצפוי עבור resource_id משתנה לפי connector:
  • Google Drive: מזהה הקובץ. נדרש עבור file-scoped events (file, file.update, file.trash, file.untrash, file.delete).
  • Gmail: רשימה מופרדת בפסיקים של מזהי תוויות לצפייה. ברירת מחדל היא "INBOX" אם מושמט.
  • Microsoft Teams: {teamId}/{channelId} לצפייה בערוץ ספציפי, או {chatId} לצפייה בצ’אט ספציפי.
  • SharePoint: {siteId}/{listId} לצפייה ברשימה ספציפית.

Trigger conditions

השתמש ב-trigger_conditions כדי לסנן אירועי webhook כך שהפונקציה שלך תרוץ רק כאשר ה-payload תואם לכללים שאתה מגדיר. אם לא מוגדרים תנאים, הפונקציה רצה עבור כל אירוע נכנס. ראה Connector automation examples לתצורות מלאות.
string
כיצד לשלב את התנאים. ערכים אפשריים: "and" (כל אחד חייב להתאים), "or" (כל אחד חייב להתאים). ברירת מחדל היא "and".
array
נדרש
אחד או יותר אובייקטי תנאי או קבוצות תנאים מקוננות. מקסימום 20 תנאי עלה ו-5 רמות של קינון.

Webhook payload

כאשר connector automation מפעיל את הפונקציה שלך, גוף הבקשה מכיל אובייקט payload עם המבנה הבא. ראה Connector automation examples לפונקציה שקוראת את ה-payload.

דוגמאות connector automation

Function arguments

העבר נתונים לפונקציה שלך כשהיא מופעלת על ידי הכללת השדה function_args בתצורת ה-automation שלך. זה שימושי כאשר פונקציה אחת מטפלת במספר automations עם התנהגויות שונות, כגון פונקציית sync שרצה באופן הדרגתי כל 15 דקות אך מבצעת sync מלא יומי. גש לארגומנטים אלה בקוד הפונקציה שלך דרך גוף הבקשה.

דוגמת function arguments

דוגמה זו מציגה פונקציה שמטפלת במצבי sync הדרגתי ומלא בהתבסס על תצורת ה-automation:

פריסת automations

פרוס פונקציות בקאנד עם ה-automations שלהן באמצעות פקודת functions deploy של ה-CLI או הפקודה המאוחדת deploy. אתה יכול לפרוס פונקציות ספציפיות לפי שם עם functions deploy <names...>. הפריסה אטומית לכל פונקציה. פונקציה נחשבת רק כפרוסה אם גם פריסת ה-Deno וגם כל ה-automations שלה מצליחים. אם כל automation נכשל בפריסה, פריסת הפונקציה כולה מתבטלת. לאחר הפריסה, ה-CLI מציג סטטוס לכל פונקציה: נפרס, ללא שינוי, או שגיאה.

ניהול automations בלוח הבקרה

כל שינויים שנעשו בלוח הבקרה ידרסו בפעם הבאה שתריץ functions deploy. אין סנכרון דו-כיווני בין לוח הבקרה לקבצים המקומיים שלך. Automations שמוגדרים בקבצי function.jsonc המקומיים שלך הם מקור האמת.אם תרצה לבצע שינויים ל-automations שלך, עדכן את קבצי function.jsonc המקומיים שלך ופרוס מחדש. השתמש בלוח הבקרה לניטור לוגי הביצוע והפעלה ידנית של automations בעת הצורך.
צפה ונהל את ה-automations שלך בלוח הבקרה של Base44 תחת לשונית Automations. מלוח הבקרה, אתה יכול:
  • לצפות בלוגי ביצוע והיסטוריה
  • להריץ automations ידנית לבדיקה
  • לנטר את סטטוס ה-automation

ראה גם

  • Backend Functions: למד על פונקציות בקאנד
  • functions deploy: פרוס פונקציות עם automations
  • deploy: פרוס את כל המשאבים בבת אחת
  • logs: צפה בלוגי פונקציות
דף זה תורגם באמצעות בינה מלאכותית. למידע המדויק והעדכני ביותר, עיין בגרסה האנגלית.