Tarkvara HALO Smart Sensor API põhitarkvara
Edasi
See dokument kirjeldab Halo Smart Sensori seadmete rühma, mida nimetatakse ühiselt BASIC API-ks või rakenduste programmeerimisliideseks. See arutelu on mõeldud kasutamiseks programmeerijatele või integraatoritele, kes on huvitatud ühe või mitme HALO nutika anduri (HALO) integreerimisest kolmanda osapoole (mitte-IPVideo) tarkvarakomponentide või süsteemidega. Üldiselt on HALO API mõeldud teabe tõhusaks edastamiseks HALO-st tavapärase Etherneti võrgu kaudu välisele programmile. Selle eesmärgi saavutamiseks on API jagatud kolmeks osaks: sündmustepõhine pesaühendus, südamelöögi pesaühendus ja sündmuse andmed URL. BACneti liides on samuti olemas ja seda käsitletakse eraldi dokumendis.
API disain
API on loodud kasutades tööstusharu standardseid vorminguid, nagu TCP/IP. HTTP, HTTPS ja JSON. Disain ei nõua välise programmi või rakenduse arendamiseks mingeid erilisi või patenteeritud tehnikaid ega teeke. API on paindlik ning seda saab konfigureerida ja programmeerida nii, et see edastaks täpselt vajalikke andmeid ja kõige tõhusamal viisil. Kõigi ülaltoodud jaotiste toimimise üksikasju käsitletakse selle juhendi järgmistes osades.
Väline sõnumside
Seda võimalust kasutatakse hoiatuste või häirete ja sündmuste andmete edastamiseks välisesse programmi, VMS-süsteemi, serverisse jne, kui sündmus käivitatakse (seaditakse). Samuti saab lubada valikulised teated, mis annavad märku, kui sündmus kustutatakse (lähtestatakse). Seda saab edastada reaalajas TCP/IP-pesasse või HTTP/S-serverisse. Seal on hulk kohandatava sisuga konfigureeritavaid protokolle. Autentimine ja krüptimine on saadaval.
Südamelöögid
Südamelöögiteateid saadetakse konfigureeritava intervalli järel (selle asemel, et käivitada sündmused), et tõendada reaalajas/kättesaadavust. Neil on sarnased võimalused nagu välisel sõnumivahetusel, kuid need on tavaliselt konfigureeritud nii, et need sisaldaksid üldist olekuteavet, mitte konkreetse sündmuse üksikasju.
Sündmuse andmed URL
See funktsioon on saadaval ainult NDA alusel ja seda tuleks kasutada ainult siis, kui väline programm nõuab juurdepääsu mis tahes sündmuste väärtustele, lävedele ja olekulippudele. Tavaliselt hangib väline programm need andmed nõudmisel alla, kuid mitte väga sageli. Selle meetodiga kaasneb üldiselt teatav latentsus, kui kasutatakse tagasihoidlikku küsitlussagedust. Tüüpilised küsitlussagedused on vahemikus üks kord minutis kuni üks kord 5 sekundi jooksul, absoluutse maksimummääraga üks kord sekundis. Seda meetodit saab kasutada ka täiendavate tugiandmete hankimiseks sündmuse (hoiatuse) vastuvõtmisel.
Välised sõnumside üksikasjad
HALO osa web Liidese integreerimise hüpikaken võimaldab konfigureerida ühe kolmanda osapoole ühenduse, kus saab saata erinevaid väärtusi TCP kaugpesasse või HTTP/HTTPS-serverisse. Kohahoidjaid (märke) kasutatakse elavate väärtuste sisestamiseks edastatavasse teksti. Kuigi sellel on silt „Väline sõnumside”, saab seda kanalit kasutada peaaegu kõigil eesmärkidel, mis nõuavad reaalajas sündmuste käivitajaid, mida HALO aktiivselt edastab. See paigutus on üsna paindlik, kuna valikud "Toimingud" määravad, millised HALO sündmused selle kanali kaudu edastavad.
HTTP-režiimis on stringid Määra ja lähtesta URLs, mis tuleb soovitud sihtserveri poolt soovitud viisil sisestada ja vormindada. Autentimiseks saab kasutada välja Kasutaja ja Parool. Vaadake allpool HTTP-režiimi.
TCP-režiimis on seadistus- ja lähtestusstringid ainult ühe sõnumi andmed, mis saadetakse vastuvõtvale TCP-pesale. Neid saab sihtkoha vajaduse järgi vormindada. Sihtkoht on määratud väljadel Aadress ja Port. Vaadake allpool TCP-režiimi.
Mõlema režiimi puhul kuvatakse olek viimasest sõnumist, mis võib aidata ühenduse või muude probleemide lahendamisel. Sõnumi sundimiseks võite kasutada hüpikaknas Toimingud nuppe Event TEST:
Seda tüüpi sõnumite lubamiseks peab seadistamise või lähtestamise jaoks olema globaalne sisse/välja lülitatud. Lähtestumist sageli ei kasutata, kuna huvi pakub ainult sündmuse algus, kuid see võib erineda. Iga sündmus saab iseseisvalt määrata, kas see kasutab hüpikaknas Toimingud teadet Määra või Lähtesta. Silmamuna nupud kuvavad umbkaudse esituse sellest, mis saadetakse pärast märksõnade asendamist ja vormindamist. Funktsiooni Repeat Holdoff saab kasutada sagedaste sõnumite vähendamiseks, viivitades enne uue saatmist. Seda tehakse iga sündmuse kohta iseseisvalt. HALO-l on sündmuste jaoks sisseehitatud 15-sekundiline ooteaeg, et vältida sündmuste kiiret taaskäivitamist. Kui soovite tagada, et minutis ei saadetaks rohkem kui 1 teatud tüüpi sündmust, võite seada Repeat Holdoff väärtuseks 60 (sekundit).
Südamelöögi üksikasjad
Südamelöögi edastused toimivad sarnaselt ülaltooduga, välja arvatud see, et lehel Toimingud puudub suhtlus. Selle asemel toimub südamelöökide edastamine regulaarselt, nagu on konfigureeritud väljaga Intervall. HTTP-režiimis on stringid Määra ja lähtesta URLs, mis tuleb soovitud sihtserveri poolt soovitud viisil sisestada ja vormindada. Autentimiseks saab kasutada välja Kasutaja ja Parool. Vaadake allpool HTTP-režiimi.
Kuigi Heartbeat'i esmane eesmärk on anda kaugrakendusele tõend HALO Smart Sensori eluea kohta, saab seda teadet kasutada ka valitud andurite või sündmuse hetkeoleku teabe edastamiseks. Endineampülaltoodud le saadab pika stringi parameetri koos URL mis sisaldavad Halo nime, enamikku anduri väärtustest ja lõpuks Triggered=%ACTIVE%, mis võib olla tühi või hetkel käivitatud sündmuste loend.
HTTP (ja HTTPS) režiim
Välised sõnumivahetuse ja südamelöögi stringid võivad olla http: või https: URLs vastavalt vajadusele. Sihtserver saab vastavalt vajadusele sisestada tee ja parameetrid. Märksõnu nagu %NAME% (HALO seadme nimi) või %EID% (sündmuse ID) saab sisestada vastavalt vajadusele ja need asendatakse sõnumi saatmisel vastavate andmetega. Kiireks viitamiseks kuvatakse sagedamini kasutatavate märksõnade loend.
The URL tee võib sisaldada nii märksõnu kui ka parameetreid URL. Sõltuvalt sihtserverist võivad parameetrid olla NAME=VALUE paarid või JSON-objekt või kohandatud vorming. NtampVälise sõnumivahetuse les sisaldaks %EID%, mis näitab sündmust, mis käivitas:
- https://server.com/event/%NAME%/%EID%
- https://server.com/event?location=%NAME%&event=%EID%
- https://server.com/event?{“location”:”:%NAME%”,”event”:”%EID%”}
ExampLes for Heartbeat võib lisada %ACTIVE% (praegu käivitatud sündmused) või anduri väärtuse:
- https://server.com/alive?location=%NAME%&Triggered=%ACTIVE%
- https://server.com/event?{“location”:”:%NAME%”,”NH3”:%SENSOR:NH3%}
Väärtused %SENSOR:…% kasutavad evtYYYYMMDD.csv logi parempoolsete andurite veergude pealkirjades leiduvaid nimesid files. Tavaliselt on need:
Kui sihtserver eelistab GET-päringute asemel HTTP PUT-i või POST-i, saate selle eesliite lisada URL koos PUT: või POST:. Sõltumatult saate lisada JSON-i kasuliku koormuse, mis on paljude serverite jaoks populaarne, lisades märksõna [JSONBODY], millele järgneb JSON-vormingus objekt. Ntample:
PUT:https://server.com/event[JSONBODY]{“asukoht”:”%NAME%”,”sündmus”:”%EID%”}
The URL toetab tüüpilisi IP-aadressi (ja IPv6) ning pordi ja kasutaja parooli valikuid või võite vajaduse korral kasutada välju Kasutaja ja Parool olla autentimismeetodite (nt Basic või Digest) sihtserver:
https://username:password@123.321.123.321:9876/event…
TCP režiim
Välised sõnumivahetuse ja südamelöögi stringid on mõeldud ainult andmete jaoks, kuna väljad Aadress ja Port määravad sihtkoha. Aadress toetab nimesid, IPv4 ja IPv6.
Stringi saab vormindada nagu ülalkirjeldatud HTTP-sõnumite andmeosi või sihtserveri nõudeid.
ExampVälise sõnumivahetuse les sisaldaks %EID%, mis näitab sündmust, mis käivitas:
asukoht=%NAME%, sündmus=%EID%
{"asukoht":":%NAME%","sündmus":"%EID%"}
ExampLes for Heartbeat võib lisada %ACTIVE% (praegu käivitatud sündmused) või anduri väärtuse:
asukoht=%NAME%&käivitatud=%ACTIVE%
{"asukoht":":%NAME%","NH3":%SENSOR:NH3%}
Märkeruudud veergudes „Integratsioonikomplekt” ja „Integratsiooni lähtestamine” määravad, millised sündmused käivitavad saatmise. Lisateavet sündmuste ja toimingute seadistamise kohta leiate HALO administraatori juhendist.
JSON-i sündmuste sõnumite kohaletoimetamine
Mõned arendajad eelistavad saada sündmuste andmeid, mis on vormindatud tööstusstandardi isemärgistatud JSON-vormingus, mitte tavalise ASCII-tekstina, kuna esimest on usaldusväärsem ja lihtsam sõeluda. HALO peal web lehe vahekaardil „Sõnumid”, saate esitada JSON-sõnumeid „Välise sõnumivahetuse” seadetes „Määra string” ja „Lähtesta string” ning jaotises „Heartbeat” „Message”.
Exampvähem:
"Välise sõnumivahetuse" seadete string:
{ "seade":"%NAME%", "sündmus":"%EID%", "alarm":"jah" }
See saadab määratud serverisse ühe TCP- või UDP JSON-sõnumi, mis annab teada seadme sõbralikust nimest, sündmuse nimest ja sellest, et see just algas.
"Välise sõnumivahetuse" seadete lähtestusstring:
{ "seade":"%NAME%", "sündmus":"%EID%", "alarm":"ei" }
See saadab määratud serverisse ühe TCP- või UDP JSON-sõnumi, mis annab teada seadme sõbralikust nimest, sündmuse nimest ja sellest, et tingimus on nüüd peatunud.
Sõnum "Südamelöögid":
{ "seade":"%NAME%", "elus":"%DATE% %TIME%" }
See saadab määratud serverisse perioodiliselt TCP- või UDP JSON-sõnumi, teatades, et HALO on näidatud ajal elus.
Dokumendid / Ressursid
![]() |
Tarkvara HALO Smart Sensor API põhitarkvara [pdfKasutusjuhend HALO Smart Sensor API põhitarkvara |