Software-s-LOGO

Software-ul HALO Smart Sensor API Software de bază

Software-s-HALO-Smart-Sensor-API-Basic-Software-PRODUCT

Redirecţiona

Acest document descrie grupul de facilități ale senzorului inteligent Halo, cunoscut colectiv sub numele de API-ul de bază sau interfața de programare a aplicațiilor. Această discuție este destinată utilizării de către programatori sau integratori care sunt interesați să integreze unul sau mai mulți senzori HALO Smart (HALO) cu componente sau sisteme software terță parte (non-IPVideo). În general, API-ul HALO este destinat să transfere informații în mod eficient de la HALO printr-o rețea Ethernet convențională la programul extern. Pentru a atinge acest obiectiv, API-ul este împărțit în trei secțiuni: Conexiune la socket determinată de evenimente, Conexiune la soclu Heartbeat și Date despre evenimente URL. Interfața BACnet este, de asemenea, prezentă și acoperită într-un document separat.

Design API

API-ul este proiectat folosind formate standard din industrie, cum ar fi TCP/IP. HTTP, HTTPS și JSON. Designul nu necesită nicio tehnică sau bibliotecă specială sau proprietară pentru a fi utilizate în dezvoltarea programului sau aplicației externe. API-ul este flexibil și poate fi configurat și programat pentru a furniza exact datele necesare și în cel mai eficient mod. Detaliile privind funcționarea fiecăreia dintre secțiunile de mai sus sunt acoperite în următoarele secțiuni ale acestui ghid.

Mesaje Externe

Această facilitate este utilizată pentru a furniza alerte sau alarme și date despre evenimente către un program extern, sistem VMS, server etc. atunci când un eveniment este declanșat (este setat). Mesajele opționale pot fi, de asemenea, activate pentru a semnala atunci când un eveniment se șterge (este resetat). Această livrare se poate face către un socket TCP/IP sau un server HTTP/S în timp real. Există o gamă de protocoale configurabile cu conținut personalizabil. Sunt disponibile autentificarea și criptarea.

Bătăile inimii

Mesajele Heartbeat sunt trimise la un interval configurabil (în loc de când sunt declanșate evenimentele) pentru a oferi dovada live/disponibilității. Ele au o gamă similară de capabilități ca și mesajele externe, dar ar fi de obicei configurate pentru a conține informații generale de stare, mai degrabă decât detalii despre un anumit eveniment.

Date eveniment URL

Această facilitate este disponibilă numai în baza unei NDA și ar trebui utilizată numai atunci când programul extern necesită acces la toate valorile, pragurile și semnalizatoarele de stat ale evenimentului. Aceste date sunt, în general, preluate la cerere de către programul extern, dar nu la o frecvență foarte mare. Această metodă are în general o anumită latență atunci când este utilizată o rată de sondare modestă. Ratele de sondare tipice variază de la o dată pe minut la o dată la 5 secunde, cu o rată maximă absolută de o dată pe secundă. Această metodă poate fi folosită și pentru a prelua date suplimentare de susținere atunci când este primit un eveniment (alertă).

Detalii despre mesaje externe

O secțiune a HALO web Interfața pop-up de integrare oferă configurarea unei singure conexiuni terță parte, unde diferite valori pot fi trimise la un socket TCP la distanță sau un server HTTP/HTTPS. Suporturile de loc (jetoane) sunt folosite pentru a insera valori live în textul transmis. Deși este etichetat „Mesaje externă”, acest canal poate fi folosit în aproape orice scop care necesită declanșări de evenimente în timp real, furnizate în mod activ de HALO. Acest aranjament este destul de flexibil, deoarece selecțiile de pe „Acțiuni” determină ce evenimente HALO transmit prin acest canal.

Software-s-HALO-Smart-Sensor-API-Basic-Software-FIG-1

În modul HTTP, șirurile Set și Reset sunt URLs care trebuie introduse și formatate conform cerințelor serverului de destinație dorit. Un câmp Utilizator și Parolă poate fi folosit pentru autentificare. Vedeți modul HTTP de mai jos.

Software-s-HALO-Smart-Sensor-API-Basic-Software-FIG-2

În modul TCP, șirurile Set și Reset sunt doar datele unui singur mesaj care este trimis către socket-ul TCP de primire. Ele pot fi formatate după cum este necesar de destinație. Destinația este specificată în câmpurile Adresă și Port. Consultați modul TCP de mai jos.

Software-s-HALO-Smart-Sensor-API-Basic-Software-FIG-3

Pentru oricare dintre moduri, este afișată starea celui mai recent mesaj care poate ajuta la remedierea conexiunii sau a altor probleme. Puteți folosi butoanele TEST pentru evenimente din fereastra pop-up Acțiuni pentru a forța un mesaj:

Software-s-HALO-Smart-Sensor-API-Basic-Software-FIG-4

Global On/Off pentru Setare sau Resetare trebuie să fie Activat pentru a activa aceste tipuri de mesaje. Adesea, resetarea nu este utilizată, deoarece doar declanșarea unui eveniment este de interes, dar aceasta poate varia. Fiecare eveniment poate specifica în mod independent dacă va folosi mesajul Set sau Reset din fereastra pop-up Acțiuni. Butoanele globului ocular vor afișa o reprezentare aproximativă a ceea ce este trimis după înlocuirea cuvintelor cheie și formatarea. Repeat Holdoff poate fi folosit pentru a reduce mesajele frecvente prin amânarea înainte ca altul să poată fi trimis. Acest lucru se face independent pe eveniment. HALO are un timp de reținere încorporat pentru evenimente de 15 secunde pentru a preveni redeclanșarea rapidă a evenimentelor. Dacă doriți să vă asigurați că nu este trimis mai mult de 1 eveniment de un tip pe minut, puteți seta Repeat Holdoff la 60 (secunde).

Detalii ale bătăilor inimii

Transmisiile Heartbeat funcționează într-un mod similar cu cel de mai sus, cu excepția faptului că nu există nicio interacțiune cu pagina Acțiuni. În schimb, transmisia Heartbeat are loc în mod regulat, așa cum este configurat cu câmpul Interval. În modul HTTP, șirurile Set și Reset sunt URLs care trebuie introduse și formatate conform cerințelor serverului de destinație dorit. Un câmp Utilizator și Parolă poate fi folosit pentru autentificare. Vedeți modul HTTP de mai jos.

Software-s-HALO-Smart-Sensor-API-Basic-Software-FIG-5

În timp ce scopul principal al Heartbeat este de a oferi o dovadă a vieții unui senzor inteligent HALO unei aplicații de la distanță, acest mesaj poate fi folosit și pentru a transmite senzorii selectați sau informații despre starea evenimentului curent. Fostulampchiul de mai sus trimite un parametru șir lung cu URL care includ numele Halo, majoritatea valorilor senzorului și, în sfârșit, Triggered=%ACTIVE% care ar putea fi goală sau o listă de evenimente declanșate în prezent.

Modul HTTP (și HTTPS).

Sirurile de mesaje externe și Heartbeat pot fi http: sau https: URLs după cum este necesar. Calea și parametrii pot fi introduși după cum este necesar de către serverul de destinație. Cuvinte cheie precum %NAME% (numele dispozitivului HALO) sau %EID% (ID eveniment) pot fi inserate după cum este necesar și vor fi înlocuite cu datele respective atunci când mesajul este trimis. O listă de cuvinte cheie utilizate frecvent este afișată pentru referință rapidă.
The URL calea poate conține cuvinte cheie, precum și parametrii pentru URL. Parametrii pot fi perechi NAME=VALUE sau un obiect JSON sau un format personalizat, în funcție de serverul de destinație. Exampfișierele pentru mesaje externe ar include %EID% pentru a indica evenimentul care a declanșat:

  • https://server.com/event/%NAME%/%EID%
  • https://server.com/event?location=%NAME%&event=%EID%
  • https://server.com/event?{“location”:”:%NAME%”,”event”:”%EID%”}

Exampfișierele pentru Heartbeat ar putea adăuga %ACTIVE% (Evenimente declanșate în prezent) sau o valoare a senzorului:

  • https://server.com/alive?location=%NAME%&Triggered=%ACTIVE%
  • https://server.com/event?{“location”:”:%NAME%”,”NH3”:%SENSOR:NH3%}
    Valorile %SENSOR:…% folosesc numele găsite în anteturile coloanelor senzorului din dreapta din jurnalul evtYYYYMMDD.csv files. Acestea sunt de obicei:

Software-s-HALO-Smart-Sensor-API-Basic-Software-FIG-6

Dacă serverul de destinație preferă HTTP PUT sau POST în loc de solicitările GET, puteți prefix URL cu PUT: sau POST:. În mod independent, puteți adăuga o sarcină utilă JSON, care este populară pentru multe servere, adăugând cuvântul cheie [JSONBODY] urmat de un obiect formatat JSON. Examppe:
PUT:https://server.com/event[JSONBODY]{“location”:”%NAME%”,”event”:”%EID%”}
The URL acceptă adresa IP tipică (și IPv6) și opțiunile de port și parolă utilizator, sau puteți utiliza câmpurile Utilizator și Parolă, dacă este necesar, pentru a fi serverul de destinație pentru metode de autentificare precum Basic sau Digest:
https://username:password@123.321.123.321:9876/event

Modul TCP

Sirurile de mesaje externe și Heartbeat sunt doar pentru date, deoarece câmpurile Adresă și Port specifică destinația. Adresa acceptă nume, IPv4 și IPv6.
Șirul poate fi formatat ca porțiunile de date ale mesajelor HTTP descrise mai sus sau conform cerințelor serverului de destinație.
Exampfișierele pentru mesaje externe ar include %EID% pentru a indica evenimentul care a declanșat:
locație=%NAME%,eveniment=%EID%
{“location”:”:%NAME%”,”event”:”%EID%”}
Exampfișierele pentru Heartbeat ar putea adăuga %ACTIVE% (Evenimente declanșate în prezent) sau o valoare a senzorului:
locație=%NAME%&Declanșată=%ACTIVE%
{“location”:”:%NAME%”,”NH3”:%SENSOR:NH3%}

Software-s-HALO-Smart-Sensor-API-Basic-Software-FIG-7

Casetele de selectare din coloanele „Set de integrare” și „Resetare integrare” determină ce evenimente declanșează trimiterea. Mai multe despre configurarea evenimentelor și acțiunilor sunt disponibile în Ghidul administratorului HALO.

Livrarea mesajelor de eveniment JSON
Unii dezvoltatori preferă să primească date despre evenimente formatate ca JSON autoetichetat standard din industrie, mai degrabă decât text simplu ASCII, deoarece primul este mai fiabil și mai ușor de analizat. Pe HALO web din fila „Mesaje”, puteți furniza mesaje JSON în setările „Mesaje externe” „Setare șir” și „Resetați șirul” și în „Bătăi inimii” „Mesaj”.

Examples:
Setări „Messagerie externă” Setează șirul:

{ „dispozitiv”:”%NAME%”, „eveniment”:”%EID%”, „alarma”:”da” }
Acest lucru va trimite un singur mesaj TCP sau UDP JSON către serverul specificat, raportând numele prietenos al dispozitivului, numele evenimentului și că tocmai a început.

Setări „Messagerie externă” Resetare șir:
{ „dispozitiv”:”%NAME%”, „eveniment”:”%EID%”, „alarma”:”nu” }
Aceasta va trimite un singur mesaj TCP sau UDP JSON către serverul specificat, raportând numele prietenos al dispozitivului, numele evenimentului și că starea s-a oprit.

Mesaj „Bătăi inimii”:
{ „device”:”%NAME%”, „alive”:”%DATE% %TIME%” }
Aceasta va trimite periodic un mesaj TCP sau UDP JSON către serverul specificat, raportând că HALO este activ la ora indicată.

Documente/Resurse

Software-ul HALO Smart Sensor API Software de bază [pdfGhid de utilizare
Software de bază HALO Smart Sensor API

Referințe

Lasă un comentariu

Adresa ta de e-mail nu va fi publicată. Câmpurile obligatorii sunt marcate *