Osnovna programska oprema HALO Smart Sensor API
Naprej
Ta dokument opisuje skupino zmogljivosti pametnega senzorja Halo, znanih skupaj kot BASIC API ali vmesnik za programiranje aplikacij. Ta razprava je namenjena programerjem ali integratorjem, ki jih zanima integracija enega ali več pametnih senzorjev HALO (HALO) s komponentami ali sistemi programske opreme tretjih oseb (ki niso IPVideo). Na splošno je HALO API namenjen učinkovitemu prenosu informacij iz HALO prek običajnega omrežja Ethernet v zunanji program. Za dosego tega cilja je API razdeljen na tri dele: povezava vtičnice, ki jo vodi dogodek, povezava vtičnice srčnega utripa in podatki o dogodkih URL. Vmesnik BACnet je prav tako prisoten in obravnavan v ločenem dokumentu.
API Design
API je zasnovan z uporabo industrijskih standardnih formatov, kot je TCP/IP. HTTP, HTTPS in JSON. Zasnova ne zahteva nobenih posebnih ali lastniških tehnik ali knjižnic, ki bi se uporabljale pri razvoju zunanjega programa ali aplikacije. API je prilagodljiv in ga je mogoče konfigurirati in programirati tako, da zagotavlja natančno zahtevane podatke in na najučinkovitejši način. Podrobnosti o delovanju vsakega od zgornjih razdelkov so zajete v naslednjih razdelkih tega vodnika.
Zunanje sporočanje
Ta možnost se uporablja za pošiljanje opozoril ali alarmov in podatkov o dogodkih zunanjemu programu, sistemu VMS, strežniku itd., ko se dogodek sproži (nastavi). Izbirna sporočila je mogoče omogočiti tudi za signaliziranje, ko se dogodek počisti (ponastavi). Ta dostava se lahko izvede v vtičnico TCP/IP ali strežnik HTTP/S v realnem času. Obstaja vrsta nastavljivih protokolov s prilagodljivo vsebino. Na voljo sta avtentikacija in šifriranje.
Srčni utrip
Sporočila srčnega utripa se pošiljajo v nastavljivem intervalu (namesto ob sprožitvi dogodkov), da zagotovijo dokaz o živo/razpoložljivosti. Imajo podoben nabor zmogljivosti kot zunanja sporočila, vendar so običajno konfigurirani tako, da vsebujejo splošne informacije o stanju in ne podrobnosti o določenem dogodku.
Podatki o dogodku URL
Ta pripomoček je na voljo samo v okviru pogodbe o nerazkrivanju in bi se smel uporabljati le, če zunanji program zahteva dostop do vseh in vseh vrednosti dogodkov, pragov in zastavic stanja. Zunanji program običajno na zahtevo pridobi te podatke, vendar ne zelo pogosto. Ta metoda na splošno povzroči nekaj zakasnitve, če se uporablja skromna stopnja glasovanja. Običajne stopnje anketiranja segajo od enkrat na minuto do enkrat na 5 sekund z absolutno najvišjo hitrostjo enkrat na sekundo. To metodo je mogoče uporabiti tudi za pridobivanje dodatnih podpornih podatkov, ko je prejet dogodek (opozorilo).
Podrobnosti zunanjega sporočanja
Del HALO web Pojavno okno za integracijo vmesnika omogoča konfiguracijo ene same povezave tretje osebe, kjer se različne vrednosti lahko pošljejo v oddaljeno vtičnico TCP ali strežnik HTTP/HTTPS. Nosilci mest (žetoni) se uporabljajo za vstavljanje živih vrednosti v preneseno besedilo. Čeprav ima oznako »Zunanje sporočanje«, se ta kanal lahko uporablja za skoraj vse namene, ki zahtevajo sprožilce dogodkov v realnem času, ki jih aktivno zagotavlja HALO. Ta ureditev je precej prilagodljiva, ker izbire na "Akcijah" določajo, kateri dogodki HALO prenašajo prek tega kanala.
V načinu HTTP sta niza Nastavi in Ponastavi URLs, ki jih je treba vnesti in oblikovati, kot zahteva želeni ciljni strežnik. Za preverjanje pristnosti lahko uporabite polje Uporabnik in Geslo. Glejte način HTTP spodaj.
V načinu TCP so nizi za nastavitev in ponastavitev le podatki enega samega sporočila, ki je poslano v prejemno vtičnico TCP. Po potrebi jih je mogoče oblikovati glede na destinacijo. Cilj je naveden v poljih Naslov in Vrata. Glejte način TCP spodaj.
Za oba načina je prikazano stanje iz najnovejšega sporočila, ki lahko pomaga pri popravljanju povezave ali drugih težavah. Za prisilno pošiljanje sporočila lahko uporabite gumbe TEST dogodka v pojavnem oknu dejanj:
Globalni vklop/izklop za Nastavitev ali Ponastavitev mora biti Vklopljen, da omogočite te vrste sporočil. Ponastavitev se pogosto ne uporablja, ker je zanimiv le začetek dogodka, vendar je to lahko različno. Vsak dogodek lahko neodvisno določi, ali bo uporabil sporočilo Nastavi ali Ponastavi v pojavnem oknu Dejanja. Gumbi zrkla bodo prikazali grobo predstavitev poslanega po zamenjavi ključnih besed in oblikovanju. Repeat Holdoff lahko uporabite za dušenje pogostih sporočil z zakasnitvijo, preden je mogoče poslati naslednje. To se naredi neodvisno za vsak dogodek. HALO ima vgrajen čas zadrževanja dogodkov 15 sekund, da prepreči hitro ponovno sprožitev dogodkov. Če želite zagotoviti, da se ne pošlje več kot 1 dogodek neke vrste na minuto, lahko nastavite Repeat Holdoff na 60 (sekund).
Podrobnosti srčnega utripa
Prenosi srčnega utripa delujejo na podoben način kot zgoraj, le da ni interakcije s stranjo z dejanji. Namesto tega se prenos srčnega utripa izvaja redno, kot je konfigurirano s poljem Interval. V načinu HTTP sta niza za nastavitev in ponastavitev URLs, ki jih je treba vnesti in oblikovati, kot zahteva želeni ciljni strežnik. Za preverjanje pristnosti lahko uporabite polje Uporabnik in Geslo. Glejte način HTTP spodaj.
Čeprav je primarni namen Heartbeat oddaljeni aplikaciji zagotoviti dokaz življenjske dobe pametnega senzorja HALO, se lahko to sporočilo uporabi tudi za prenos izbranih senzorjev ali informacij o trenutnem stanju dogodka. Bivšiample zgoraj pošlje parameter dolgega niza z URL ki vključujejo ime Halo, večino vrednosti senzorjev in nazadnje Triggered=%ACTIVE%, ki je lahko prazen, ali seznam trenutno sproženih dogodkov.
Način HTTP (in HTTPS).
Nizi za zunanja sporočila in srčni utrip so lahko http: ali https: URLpo potrebi. Pot in parametre lahko po potrebi vnese ciljni strežnik. Ključne besede, kot je %NAME% (ime naprave HALO) ali %EID% (ID dogodka), lahko po potrebi vstavite in bodo zamenjane z ustreznimi podatki, ko bo sporočilo poslano. Za hiter pregled je prikazan seznam pogosto uporabljenih ključnih besed.
The URL pot lahko vsebuje ključne besede in parametre za URL. Parametri so lahko pari NAME=VALUE ali predmet JSON ali oblika po meri, odvisno od ciljnega strežnika. nprampdatoteke za zunanje sporočanje bi vključevale %EID% za označevanje dogodka, ki je sprožil:
- https://server.com/event/%NAME%/%EID%
- https://server.com/event?location=%NAME%&event=%EID%
- https://server.com/event?{“location”:”:%NAME%”,”event”:”%EID%”}
Exampdatoteke za srčni utrip lahko dodajo %ACTIVE% (trenutno sproženi dogodki) ali vrednost senzorja:
- https://server.com/alive?location=%NAME%&Triggered=%ACTIVE%
- https://server.com/event?{“location”:”:%NAME%”,”NH3”:%SENSOR:NH3%}
Vrednosti %SENSOR:…% uporabljajo imena, ki jih najdete v naslovih stolpcev desnega senzorja v dnevniku evtLLLLMMDD.csv files. Običajno so:
Če ima ciljni strežnik namesto zahtev GET prednost HTTP PUT ali POST, lahko dodate predpono URL s PUT: ali POST:. Neodvisno lahko dodate obremenitev JSON, ki je priljubljena pri številnih strežnikih, tako da dodate ključno besedo [JSONBODY], ki ji sledi objekt v obliki JSON. nprample:
PUT:https://server.com/event[JSONBODY]{“lokacija”:”%NAME%”,”event”:”%EID%”}
The URL podpira običajni naslov IP (in IPv6) ter možnosti vrat in uporabniškega gesla ali pa lahko uporabite polji Uporabnik in Geslo, če je to potrebno kot ciljni strežnik za metode preverjanja pristnosti, kot sta Osnovna ali Digest:
https://username:password@123.321.123.321:9876/event…
Način TCP
Nizi za zunanja sporočila in srčni utrip so samo za podatke, saj polji Naslov in Vrata določajo cilj. Naslov podpira imena, IPv4 in IPv6.
Niz je mogoče oblikovati kot zgoraj opisane podatkovne dele sporočil HTTP ali kot zahteva ciljni strežnik.
Exampdatoteke za zunanje sporočanje bi vključevale %EID% za označevanje dogodka, ki je sprožil:
lokacija=%NAME%,event=%EID%
{“lokacija”:”:%NAME%”,”dogodek”:”%EID%”}
Exampdatoteke za srčni utrip lahko dodajo %ACTIVE% (trenutno sproženi dogodki) ali vrednost senzorja:
lokacija=%NAME%&Sproženo=%AKTIVNO%
{“lokacija”:”:%IME%”,”NH3”:%TIPALO:NH3%}
Potrditvena polja v stolpcih »Integration Set« in »Integration Reset« določajo, kateri dogodki sprožijo pošiljanje. Več o nastavitvi dogodkov in dejanj je na voljo v HALO Administrator's Guide.
Dostava sporočil o dogodkih JSON
Nekateri razvijalci raje prejmejo podatke o dogodkih, oblikovane kot industrijski standardni samooznačeni JSON, namesto navadnega besedila ASCII, saj je prvo bolj zanesljivo in lažje razčlenjeno. Na HALO web strani »Sporočila«, lahko posredujete sporočila JSON v nastavitvah »Zunanja sporočila« »Nastavi niz« in »Ponastavi niz« ter v »Sporočilo« »Srčni utrip«.
Examples:
Niz nastavitev nastavitev »Zunanje sporočanje«:
{ “device”:”%NAME%”, “event”:”%EID%”, “alarm”:”yes” }
To bo na navedeni strežnik poslalo eno sporočilo TCP ali UDP JSON, ki bo poročalo o prijaznem imenu naprave, imenu dogodka in o tem, da se je pravkar začel.
Niz za ponastavitev nastavitev »Zunanje sporočanje«:
{ “device”:”%NAME%”, “event”:”%EID%”, “alarm”:”ne” }
To bo poslalo eno samo sporočilo TCP ali UDP JSON navedenemu strežniku, ki bo poročalo o prijaznem imenu naprave, imenu dogodka in o tem, da je stanje zdaj zaustavljeno.
Sporočilo »srčni utrip«:
{ “device”:”%NAME%”, “alive”:”%DATE% %TIME%” }
To bo občasno poslalo sporočilo TCP ali UDP JSON na navedeni strežnik, ki bo poročalo, da je HALO živ ob navedenem času.
Dokumenti / Viri
![]() |
Osnovna programska oprema HALO Smart Sensor API [pdf] Uporabniški priročnik Osnovna programska oprema HALO Smart Sensor API |