Webhooks מכללים
כלל יכול לקרוא ל-URL כאשר הוא מופעל. כך המערכת שלכם יודעת על אירוע מיד, לדוגמה טמפרטורה גבוהה או ניתוק של מכשיר.
לפני שאתם מתחילים
Section titled “לפני שאתם מתחילים”- HAM Systems מפעילה webhooks לכל חשבון בנפרד. אם האפליקציה מציגה Webhooks אינם מופעלים בחשבונך, פנו לתמיכה.
- אתם צריכים כתובת
https://שמקבלת בקשותPOSTמהאינטרנט.
הוספת webhook לכלל
Section titled “הוספת webhook לכלל”- פתחו את תפריט. בקבוצה כלים, הקישו על כללי ענן.
- פתחו כלל או צרו כלל חדש. ראו יצירת כלל.
- בפעולות, הקישו על הוסף פעולה.
- ברשימה, בחרו Webhook.
- בשדה URL, הקלידו את הכתובת של המערכת שלכם.
- אם אתם רוצים קריאה גם כאשר הכלל מתאפס, הקישו על הוסף פעולת איפוס ובחרו שוב Webhook.
- הקישו על שמירה.




אם הכתובת לא נכונה, האפליקציה מציגה כתובת URL אינה תקינה.
הפלטפורמה שולחת POST עם גוף JSON (Content-Type: application/json):
{ "event": "triggered", "rule": { "id": 4321, "name": "Fridge 1 temperature", "serialno": "e11:123", "this_data": [ { "...": "the rule conditions" } ] }, "device_data": { "e11:123": { "R": { "T": 912, "GI": 1, "GIC": 0, "GI2": 1, "GI2C": 0 }, "O": [], "S": { "...": "the device settings" } } }, "messages": []}| שדה | תוכן |
|---|---|
event |
triggered כאשר הכלל מופעל. resolved כאשר פעולת באיפוס פועלת. |
rule.id, rule.name |
המספר והשם של הכלל |
rule.serialno |
המכשיר של הכלל |
rule.this_data |
התנאים של הכלל |
device_data |
המצב הנוכחי של כל מכשיר של הכלל, לפי מספר סידורי. אותו פורמט כמו העדכונים של WebSocket. |
messages |
שגיאות, לדוגמה Failed to get state of e11:123 for rule #4321 כאשר המצב של מכשיר לא זמין |
הערכים ב-R הם גולמיים. בדוגמה, T: 912 אומר 9.12 °C. ראו את ההגדרות ב-REST API.
הפלטפורמה מסירה את פרטי ה-WiFi של המכשיר (שם הרשת, הסיסמה והפרטים הארגוניים) מ-device_data.
אבטחת ה-webhook
Section titled “אבטחת ה-webhook”לבקשה אין חתימה (HMAC). כדי לבדוק שהבקשה מגיעה מהכלל שלכם:
- צרו סוד אקראי ארוך, לדוגמה עם
openssl rand -hex 32. - שימו את הסוד ב-query string של הכתובת:
https://example.com/ham-hook?token=YOUR_SECRET. - במערכת שלכם, דחו כל בקשה שאין בה את ה-
tokenהנכון.
כללים ומגבלות
Section titled “כללים ומגבלות”- הכתובת חייבת להתחיל ב-
https://. - הפלטפורמה לא קוראת לכתובות מקומיות ופרטיות:
localhost,127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,169.254.0.0/16,100.64.0.0/10,0.0.0.0/8וכתובות ה-IPv6 הקשורות (::1,fe80:,fc00::/7). - עד 5 קריאות בכל 60 שניות לכל פעולת webhook של כלל.
- עד 30 קריאות webhook בכל 60 שניות לכל חשבון.
- הפלטפורמה מדלגת על הקריאות שמעל המגבלות. היא לא שולחת אותן מאוחר יותר.
- הפלטפורמה לא בודקת את סטטוס ה-HTTP של התגובה שלכם ולא שולחת את הבקשה שוב.
- לפעולה יכול להיות עיכוב (אחרי). לכלל יש עד 12 פעולות בסך הכול.
לבדיקה ראשונה, השתמשו בשירות ציבורי שמציג את הבקשות שהוא מקבל. צרו כלל עם תנאי קל והסתכלו בגוף הבקשה.

