تخطَّ إلى المحتوى

Webhooks من القواعد

تستطيع قاعدة استدعاء URL عندما تتفعل. بهذه الطريقة يعرف نظامك بالحدث فورًا، مثلًا درجة حرارة مرتفعة أو انفصال جهاز.

  • تفعّل HAM Systems الـ webhooks لكل حساب. إذا عرض التطبيق Webhooks غير مُمكّنة لحسابك، اتصل بالدعم.
  • تحتاج إلى عنوان https:// يقبل طلبات POST من الإنترنت.
  1. افتح القائمة. في مجموعة الأدوات، انقر على قواعد السحابة.
  2. افتح قاعدة أو أنشئ قاعدة جديدة. انظر إنشاء قاعدة.
  3. في الإجراءات، انقر على إضافة إجراء.
  4. في القائمة، اختر Webhook.
  5. في حقل URL، اكتب عنوان نظامك.
  6. إذا أردت أيضًا استدعاء عندما تُعاد القاعدة إلى وضعها، فانقر على إضافة إجراء إعادة تعيين واختر Webhook مرة أخرى.
  7. انقر على حفظ.
قاعدة جديدة مع الشروط والإجراءات
الكمبيوتر
قاعدة جديدة مع الشروط والإجراءات
الهاتف
إجراء قاعدة مضبوط على 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.

ليس للطلب توقيع (HMAC). للتحقق من أن الطلب يأتي من قاعدتك:

  1. أنشئ سرًا عشوائيًا طويلًا، مثلًا بالأمر openssl rand -hex 32.
  2. ضع السر في سلسلة الاستعلام في العنوان: https://example.com/ham-hook?token=YOUR_SECRET.
  3. في نظامك، ارفض كل طلب ليس فيه token الصحيح.
  • يجب أن يبدأ العنوان بـ 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 إجراءً في المجموع.

لاختبار أول، استخدم خدمة عامة تعرض الطلبات التي تستقبلها. أنشئ قاعدة بشرط سهل وانظر إلى محتوى الطلب.

الدردشة مع الدعم