Μετάβαση στο περιεχόμενο

Webhookovi iz pravila

Pravilo može pozvati URL kada se aktivira. Na taj način vaš sustav odmah saznaje za događaj, na primjer visoku temperaturu ili odspajanje uređaja.

  • HAM Systems uključuje webhookove po računu. Ako aplikacija prikaže Webhookovi nisu omogućeni za vaš račun, obratite se podršci.
  • Trebate adresu https:// koja prihvaća POST zahtjeve s interneta.
  1. Otvorite Izbornik. U grupi Alati dodirnite Pravila u oblaku.
  2. Otvorite pravilo ili izradite novo pravilo. Pogledajte izradu pravila.
  3. U radnjama dodirnite Dodaj radnju.
  4. Na popisu odaberite Webhook.
  5. U polje URL upišite adresu svog sustava.
  6. Ako želite poziv i kada se pravilo resetira, dodirnite Dodaj radnju resetiranja i ponovno odaberite Webhook.
  7. Dodirnite Spremi.
Novo pravilo s uvjetima i radnjama
Računalo
Novo pravilo s uvjetima i radnjama
Telefon
Radnja pravila postavljena na Webhook s ispunjenim poljem URL
Računalo
Radnja pravila postavljena na Webhook s ispunjenim poljem URL
Telefon

Ako adresa nije ispravna, aplikacija prikazuje URL nije valjan.

Platforma šalje POST s JSON tijelom (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": []
}
Polje Sadržaj
event triggered kada se pravilo aktivira. resolved kada se izvrši radnja Pri resetiranju.
rule.id, rule.name Broj i naziv pravila
rule.serialno Uređaj pravila
rule.this_data Uvjeti pravila
device_data Trenutačno stanje svakog uređaja pravila, po serijskom broju. Isti format kao ažuriranja WebSocketa.
messages Greške, na primjer Failed to get state of e11:123 for rule #4321 kada stanje uređaja nije dostupno

Vrijednosti u R su sirove. U primjeru T: 912 znači 9.12 °C. Pogledajte definicije u REST API-ju.

Platforma uklanja WiFi podatke uređaja (naziv mreže, lozinku i podatke za poslovnu mrežu) iz device_data.

Zahtjev nema potpis (HMAC). Za provjeru da zahtjev dolazi iz vašeg pravila:

  1. Izradite dugu slučajnu tajnu, na primjer pomoću openssl rand -hex 32.
  2. Stavite tajnu u query string adrese: https://example.com/ham-hook?token=YOUR_SECRET.
  3. U svom sustavu odbacite svaki zahtjev koji nema ispravan token.
  • Adresa mora počinjati s https://.
  • Platforma ne poziva lokalne i privatne adrese: 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 i povezane IPv6 adrese (::1, fe80:, fc00::/7).
  • Do 5 poziva u 60 sekundi za svaku webhook radnju pravila.
  • Do 30 webhook poziva u 60 sekundi za svaki račun.
  • Platforma preskače pozive iznad ograničenja. Ne šalje ih kasnije.
  • Platforma ne provjerava HTTP status vašeg odgovora i ne šalje zahtjev ponovno.
  • Radnja može imati odgodu (NAKON). Pravilo ima ukupno do 12 radnji.

Za prvi test koristite javnu uslugu koja prikazuje zahtjeve koje prima. Izradite pravilo s jednostavnim uvjetom i pogledajte tijelo zahtjeva.

Chat s podrškom