ממש לפני כמה ימים קיימתי פגישת ייעוץ עם לקוח שטען בין היתר כי אחוזי הפתיחה שלו ירדו בצורה דרסטית בבוקר בהיר אחד. כמה דרסטית? מ-20% פלוס ל-6% בלבד! נסכים שזו צניחה משמעותית.
"מה תדירות המשלוח שלך" – שאלתי
"אני משגר דיוור אחד ביום – ופעם ב.. אני מוציא אפילו 3 או 4 ביום, כשיש מבצע…"
"אני חושב שזאת הבעיה…" אמרתי לו.
מדוע?
בעולם של מערכות אוטומטיות, דיוור חכם, בוטים, API ומשלוחים ידניים שוטפים – אחת הבעיות הנפוצות והמסוכנות ביותר היא הצפה (Flooding): מצב שבו משתמש, מערכת או לקוח מקבלים יותר מדי פעולות, הודעות או בקשות בפרק זמן קצר.
כאן בדיוק נכנס לתמונה המושג: cooldown_until
במילים פשוטות מדובר בשדה, משתנה או לוגיקה, שמגדירים עד מתי אסור לבצע פעולה מסוימת שוב.
מדובר באחד הכלים הפשוטים ביותר – אך גם החזקים ביותר – לשמירה על יציבות מערכת, חוויית משתמש תקינה ומניעת נזקים עסקיים ופגיעה במושג חשוב הידוע בכינוי "מוניטין שליחה"
מושג נסתר וחשוב שידע להחליט כמה מהדיוורים שלנו יגיעו לתיבת הדואר הנכנס וכמה לא.
אז מה זה בעצם cooldown_until?
בצורתו הפשוטה: cooldown_until = כמה זמן נמתין ובאיזה תנאי לפני המגע הבא עם איש הקשר שלנו.
כל עוד הזמן הנוכחי קטן מהערך הזה – המערכת לא מבצעת פעולה מסוימת, אך ברגע שהזמן חולף – הפעולה שוב מותרת.
כל ניסיון לשלוח הודעה / להפעיל אוטומציה / לבצע API call לפני השעה הזו – ייחסם.
למה בכלל צריך מנגנון cooldown?
כי מערכות אוטומטיות עושות עבודה מעולה… עד שהן טובות מדי. ובלי מנגנון קירור (cooldown) עלולות להתרחש הפעולות הבאות (אחת מהן או יותר(:
- שליחת עשרות הודעות ללקוח בטעות (או בכוונה)
- הפעלת לולאות אינסופיות באוטומציה
- עומס חריג על שרתים
- חסימות מצד ספקי SMS / WhatsApp / Email
- תלונות ספאם
- נטישת משתמשים
- פגיעה במוניטין השליחה
- תהליך אוטומטי שהופך איש קשר פעיל – ללא פעיל – כי פשוט לא פתח את כמות המיילים הצפופה ששלחנו לו (ולא כי הוא לא רוצה, אלא כי לא הספיק)
ובקיצור:
אוטומציה בלי בלמים – עלולה להיות תאונה העתידה להתקיים.
איך cooldown_until מונע הצפה בפועל?
המנגנון עובד בשלושה שלבים:
- לפני שליחה / הפעלה, המנגנון יבדוק האם קיים cooldown_until עתידי?
- אם התשובה היא "כן" הוא יעצור וימתין, אם התשובה היא "לא" או שלא צוין מועד כזה או אחר – הפעולה תתבצע.
- כאשר הפעולה מתבצעת – ייווצר cooldown_until חדש, בין אם מדובר בזמן או בפעולה מצד איש הקשר שלנו.
שימושים נפוצים ב-cooldown
1. מניעת הצפת הודעות ללקוחות
לדוגמה:
- שליחת SMS רק פעם ביום
- הודעת WhatsApp רק אחת ל-48 שעות
- מייל תזכורת פעם בשבוע
2. מניעת לולאות אוטומציה
כאשר:
- טריגר מעדכן שדה
- עדכון השדה מפעיל טריגר נוסף
- ונוצר מעגל אינסופי
Cooldown שובר את הלולאה.
איך בונים מנגנון פשוט שכזה?
ניקח לדוגמה מקרה של שליחת מייל חוזרת, לכל מי שלא פתח את המייל המקורי.
ראשית ניצור שדה מותאם אישית מסוג תאריך:

לאחר מכן נשלב בדיקות והתניות בתהליך שלנו. כך שאם התהליך הראשוני נראה כך:

לאחר התוספת הוא יראה כך:

בשני המקרים יצרנו המתנה של שעה על מנת לבדוק האם בזמן הזה נפתח הדיוור ששלחנו, אך בתוספת המנגנון – לא תשלח תזכורת אלא אם חלפו לפחות יומיים מהמשלוח הקודם. בינתיים תמשיך האוטומציה לבדוק האם נפתח הדיוור – אם בזמן הזה הוא נפתח, התהליך יעצר גם מבלי לשלוח תזכורת.
בהנחה ויש מסרים נוספים שנשלחים לאותו איש קשר מאוטומציות פעילות אחרות, זה משמעותי. בכל שליחת מסר נוסיף עדכון לשדה 'מועד אחרון', וכך יווצר סנכרון.
Cooldown – לא רק לדיוורים
את המנגנון הקטן הזה ניתן להוסיף לכל תהליך אוטומציה, כך שאם אנחנו שולחים סדרת דיוורים (המקרה הנפוץ) – לא נשלח את הדיוור הבא עד שהאחרון לא נפתח או חלף זמן מספק בין דיוור לדיוור. אז יהיו אנשי קשר שיקבלו דיוור אחד ביום, ויהיו אנשי קשר שיקבלו דיוור במועד אחר המתאים לקצב שלהם. כך לא יחסמו לכם אנשי קשר.
המנגון יכול להועיל גם לגבי הודעות וואטסאפ, תהליכי API המפעילים מערכות אחרות, ועוד.
היתרונות העסקיים הישירים בשימוש במנגנון cooldown
- ירידה בתלונות ספאם
- שיפור Deliverability
- יציבות מערכת
- פחות קריסות
- חוויית לקוח רגועה
- שליטה בתהליכים
- פחות טעויות אנוש
ובת'כלס פחות כאבי ראש, יותר שליטה.
cooldown_until כחלק מתכנון חכם של אוטומציה
מערכת אוטומציה טובה לא נמדדת רק בכמה מהר היא פועלת, אלא בכמה חכם היא יודעת לא לפעול.
cooldown_until הוא:
- בלם
- מסנן
- מנגנון בטיחות
- וגם כלי אסטרטגי
בדיוק כמו שבכביש צריך רמזורים – כך גם באוטומציה צריך זמנים אדומים.
ולסיכום
cooldown_until אינו פיצ'ר נחמד, הוא תשתית קריטית בכל מערכת מודרנית:
- שיווקית
- תפעולית
- טכנולוגית
מי שמתכנן אוטומציות בלי cooldown בסופו של דבר יטפל בנזקים. מי שבונה אותו נכון – מרוויח מערכת יציבה, לקוחות מרוצים ושקט נפשי.
