Webhooks iš taisyklių
Taisyklė gali iškviesti URL, kai suveikia. Taip Jūsų sistema iš karto sužino apie įvykį, pavyzdžiui, aukštą temperatūrą arba įrenginio atsijungimą.
Prieš pradėdami
Skyrius „Prieš pradėdami“- HAM Systems įjungia webhooks kiekvienai paskyrai atskirai. Jei programėlė rodo Jūsų paskyrai webhooks nėra įjungti, kreipkitės į pagalbą.
- Jums reikia
https://adreso, kuris priimaPOSTužklausas iš interneto.
Webhook pridėjimas į taisyklę
Skyrius „Webhook pridėjimas į taisyklę“- Atidarykite Meniu. Grupėje Įrankiai bakstelėkite Debesų taisyklės.
- Atidarykite taisyklę arba sukurkite naują taisyklę. Žr. Taisyklės kūrimas.
- Veiksmuose bakstelėkite Pridėti veiksmą.
- Sąraše pasirinkite Webhook.
- Lauke URL įveskite savo sistemos adresą.
- Jei taip pat norite iškvietimo, kai taisyklė atstatoma, bakstelėkite Pridėti atstatymo veiksmą ir dar kartą pasirinkite Webhook.
- Bakstelėkite Išsaugoti.




Jei adresas neteisingas, programėlė rodo URL negaliojantis.
Užklausa
Skyrius „Užklausa“Platforma siunčia POST su JSON turiniu (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": []}| Laukas | Turinys |
|---|---|
event |
triggered, kai taisyklė suveikia. resolved, kai vykdomas veiksmas Atstatant. |
rule.id, rule.name |
Taisyklės numeris ir pavadinimas |
rule.serialno |
Taisyklės įrenginys |
rule.this_data |
Taisyklės sąlygos |
device_data |
Kiekvieno taisyklės įrenginio dabartinė būsena pagal serijos numerį. Tas pats formatas kaip WebSocket atnaujinimų. |
messages |
Klaidos, pavyzdžiui, Failed to get state of e11:123 for rule #4321, kai įrenginio būsena nepasiekiama |
R reikšmės yra neapdorotos. Pavyzdyje T: 912 reiškia 9.12 °C. Žr. apibrėžtis puslapyje REST API.
Platforma pašalina iš device_data įrenginio WiFi duomenis (tinklo pavadinimą, slaptažodį ir įmonės tinklo duomenis).
Webhook apsauga
Skyrius „Webhook apsauga“Užklausa neturi parašo (HMAC). Kad patikrintumėte, ar užklausa ateina iš Jūsų taisyklės:
- Sukurkite ilgą atsitiktinę paslaptį, pavyzdžiui, su
openssl rand -hex 32. - Įdėkite paslaptį į adreso užklausos eilutę:
https://example.com/ham-hook?token=YOUR_SECRET. - Savo sistemoje atmeskite kiekvieną užklausą, kuri neturi teisingo
token.
Taisyklės ir ribos
Skyrius „Taisyklės ir ribos“- Adresas turi prasidėti
https://. - Platforma nekviečia vietinių ir privačių adresų:
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/8ir susijusių IPv6 adresų (::1,fe80:,fc00::/7). - Iki 5 iškvietimų per 60 sekundžių kiekvienam taisyklės webhook veiksmui.
- Iki 30 webhook iškvietimų per 60 sekundžių kiekvienai paskyrai.
- Platforma praleidžia iškvietimus virš ribų. Ji jų nesiunčia vėliau.
- Platforma netikrina Jūsų atsakymo HTTP būsenos ir nesiunčia užklausos dar kartą.
- Veiksmas gali turėti delsą (PO). Taisyklė iš viso turi iki 12 veiksmų.
Bandymas
Skyrius „Bandymas“Pirmam bandymui naudokite viešą paslaugą, kuri rodo gautas užklausas. Sukurkite taisyklę su paprasta sąlyga ir pažiūrėkite į užklausos turinį.

