Piranti Lunak HALO Smart Sensor API Piranti Lunak Dasar
Maju
Dokumen iki njlèntrèhaké klompok fasilitas Sensor Halo Smart sing dikenal sacara kolektif minangka BASIC API, utawa Antarmuka Pemrograman Aplikasi. Dhiskusi iki dimaksudaké kanggo nggunakake programer utawa integrator sing kasengsem ing nggabungake siji utawa luwih HALO Smart Sensors (HALOs) karo pihak 3rd (non-IPVideo) komponen software utawa sistem. Umumé, API HALO dimaksudaké kanggo nransfer informasi kanthi efisien saka HALO liwat jaringan Ethernet konvensional menyang program eksternal. Kanggo nggayuh tujuan iki, API dipérang dadi telung bagean: Sambungan Soket Didorong Acara, Sambungan Soket Detak Jantung, lan Data Acara URL. Antarmuka BACnet uga ana lan dijamin ing dokumen sing kapisah.
Desain API
API dirancang nggunakake format standar industri kayata TCP/IP. HTTP, HTTPS, lan JSON. Desain kasebut ora mbutuhake teknik utawa perpustakaan khusus utawa eksklusif kanggo digunakake ing pangembangan program utawa aplikasi eksternal. API iku fleksibel lan bisa diatur lan diprogram kanggo ngirim persis data sing dibutuhake lan kanthi cara sing paling efisien. Rincian operasi saben bagean ndhuwur wis dijamin ing bagean ngisor pandhuan iki.
Pesen eksternal
Fasilitas iki digunakake kanggo ngirim tandha utawa weker lan data Event menyang program external, sistem VMS, server, etc.. nalika Event wis micu (diset). Pesen opsional uga bisa diaktifake kanggo menehi tandha nalika Acara wis dibusak (direset). Pangiriman iki bisa digawe menyang soket TCP/IP utawa server HTTP/S ing wektu nyata. Ana sawetara protokol sing bisa dikonfigurasi kanthi konten sing bisa disesuaikan. Otentikasi lan enkripsi kasedhiya.
Detak jantung
Pesen deg-degan dikirim ing interval sing bisa dikonfigurasi (tinimbang nalika Acara dipicu) kanggo menehi bukti urip / kasedhiyan. Dheweke duwe macem-macem kabisan kaya Pesen Eksternal nanging biasane dikonfigurasi kanggo ngemot informasi negara umum tinimbang rincian babagan acara tartamtu.
Data Acara URL
Fasilitas iki mung kasedhiya ing NDA lan mung kudu digunakake nalika program eksternal mbutuhake akses menyang kabeh nilai Acara, ambang, lan bendera negara. Data iki umume dijupuk ing dikarepake dening program external nanging ora ing frekuensi dhuwur banget. Cara iki umume entuk sawetara latensi nalika tingkat polling moderat digunakake. Tarif polling sing umum kisaran saka sapisan saben menit nganti sapisan saben 5 detik kanthi tingkat maksimal mutlak sapisan saben detik. Cara iki uga bisa digunakake kanggo njupuk data ndhukung tambahan nalika acara (tandha) ditampa.
Rincian Pesen eksternal
Bagean saka HALO web antarmuka Integrasi nyembul nyedhiyakake kanggo konfigurasi sambungan pihak 3rd siji ngendi macem-macem nilai bisa dikirim menyang soket TCP remot utawa HTTP / server HTTPS. Placeholder (token) digunakake kanggo nglebokake nilai urip menyang teks sing dikirim. Sanajan diwenehi label "Pesen Eksternal," saluran iki bisa digunakake kanggo meh kabeh tujuan sing mbutuhake pemicu Acara wektu nyata, dikirim kanthi aktif dening HALO. Pengaturan iki cukup fleksibel amarga pilihan ing "Tindakan" nemtokake Acara HALO sing dikirim liwat saluran iki.
Ing mode HTTP, Set lan Reset Strings yaiku URLs sing kudu dilebokake lan diformat kaya sing dibutuhake dening server tujuan sing dikarepake. Lapangan Panganggo lan Sandi bisa digunakake kanggo otentikasi. Deleng mode HTTP ing ngisor iki.
Ing mode TCP, Set lan Reset Strings mung data saka pesen siji sing dikirim menyang soket TCP panampa. Bisa diformat kaya sing dibutuhake dening tujuan. Tujuan kasebut ditemtokake ing kolom Alamat lan Port. Waca Mode TCP ing ngisor iki.
Kanggo salah siji mode, status saka pesen paling anyar ditampilake sing bisa mbantu ndandani sambungan utawa masalah liyane. Sampeyan bisa nggunakake tombol TEST Acara ing popup Tindakan kanggo meksa pesen:
Global On/Off kanggo Setel utawa Reset kudu Aktif kanggo ngaktifake jinis pesen kasebut. Reset asring ora digunakake amarga mung wiwitan acara sing menarik, nanging bisa beda-beda. Saben Acara bisa nemtokake manawa bakal nggunakake pesen Setel utawa Reset ing popup Tindakan. Tombol eyeball bakal nampilake perwakilan kasar saka apa sing dikirim sawise substitusi tembung kunci lan format. Baleni Holdoff bisa digunakake kanggo nyepetake pesen sing asring kanthi tundha sadurunge dikirim liyane. Iki rampung independen saben Event. HALO duwe wektu ditahan kanggo acara 15 detik kanggo nyegah kedadeyan maneh kanthi cepet. Yen sampeyan pengin mesthekake ora luwih saka 1 Acara saka jinis dikirim saben menit, sampeyan bisa nyetel Baleni Holdoff kanggo 60 (detik).
Rincian deg-degan
Transmisi Detak Jantung nduweni fungsi sing padha karo ing ndhuwur kajaba ora ana interaksi karo kaca Tindakan. Nanging, transmisi Detak Jantung dumadi kanthi rutin kaya sing dikonfigurasi karo lapangan Interval, Ing mode HTTP, Set lan Reset Strings minangka URLs sing kudu dilebokake lan diformat kaya sing dibutuhake dening server tujuan sing dikarepake. Lapangan Panganggo lan Sandi bisa digunakake kanggo otentikasi. Deleng mode HTTP ing ngisor iki.
Nalika tujuan utama Detak Jantung yaiku menehi bukti urip Sensor Pinter HALO menyang aplikasi remot, pesen iki uga bisa digunakake kanggo ngirim sensor sing dipilih utawa informasi kahanan Acara saiki. mantanample ndhuwur ngirim parameter string dawa karo URL sing kalebu jeneng Halo, mayoritas nilai sensor, lan pungkasan Triggered =% AKTIF% kang bisa kosong utawa dhaptar Events saiki micu.
Mode HTTP (lan HTTPS).
Senar Pesen Eksternal lan Detak Jantung bisa dadi http: utawa https: URLs minangka needed. Path lan paramèter bisa dilebokake yen perlu dening server tujuan. Tembung kunci kaya %NAME% (jeneng piranti HALO) utawa %EID% (id Acara) bisa dilebokake yen perlu lan bakal diganti karo data sing gegandhengan nalika pesen dikirim. Dhaptar tembung kunci sing umum digunakake ditampilake kanggo referensi cepet.
Ing URL path bisa ngemot tembung kunci uga paramèter menyang URL. Parameter kasebut bisa uga NAME=VALUE pasangan utawa obyek JSON, utawa format khusus gumantung saka server tujuan. Examples kanggo Olahpesen Eksternal bakal kalebu %EID% kanggo nunjukake Acara sing micu:
- 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 bisa nambah %ACTIVE% (Acara sing saiki dipicu) utawa nilai sensor:
- https://server.com/alive?location=%NAME%&Triggered=%ACTIVE%
- https://server.com/event?{“location”:”:%NAME%”,”NH3”:%SENSOR:NH3%}
Nilai %SENSOR:…% nggunakake jeneng sing ditemokake ing judhul kolom sensor sisih tengen ing log evtYYYYMMDD.csv files. Padha biasane:
Yen server tujuan luwih milih HTTP PUT utawa POST tinimbang njaluk panjaluk GET, sampeyan bisa prefix ing URL karo PUT: utawa POST:. Kanthi mandiri, sampeyan bisa nambah payload JSON sing populer karo akeh server kanthi nambahake tembung kunci [JSONBODY] diikuti karo obyek format JSON. Example:
PUT:https://server.com/event[JSONBODY]{“lokasi”:”%NAME%”,”acara”:”%EID%”}
Ing URL ndhukung alamat IP khas (lan IPv6) lan opsi port lan pangguna-sandi, utawa sampeyan bisa nggunakake kolom Panganggo lan Sandi yen perlu dadi server tujuan kanggo metode otentikasi kaya Basic utawa Digest:
https://username:password@123.321.123.321:9876/event…
Mode TCP
Senar Pesen Eksternal lan Detak Jantung mung kanggo data amarga kolom Alamat lan Port nemtokake tujuan. Alamat ndhukung jeneng, IPv4 lan IPv6.
String bisa diformat kaya bagean data saka pesen HTTP sing diterangake ing ndhuwur, utawa kaya sing dibutuhake dening server tujuan.
Examples kanggo Olahpesen Eksternal bakal kalebu %EID% kanggo nunjukake Acara sing micu:
lokasi=%NAME%,acara=%EID%
{“lokasi”:”:%NAME%”,”acara”:”%EID%”}
Examples for Heartbeat bisa nambah %ACTIVE% (Acara sing saiki dipicu) utawa nilai sensor:
lokasi=%NAME%&Dipicu=%AKTIF%
{“lokasi”:”:%NAME%”,”NH3”:%SENSOR:NH3%}
Kothak centhang ing kolom "Set Integrasi" lan "Reset Integrasi" nemtokake Acara sing bakal dikirim. Luwih lengkap babagan persiyapan Acara lan Tindakan kasedhiya ing Pandhuan Administrator HALO.
Pangiriman Pesen Acara JSON
Sawetara pangembang luwih seneng nampa data Acara sing diformat minangka JSON kanthi label standar industri tinimbang teks ASCII biasa amarga sing sadurunge luwih dipercaya lan luwih gampang diurai. Ing HALO web tab "Pesen", sampeyan bisa nyedhiyakake pesen JSON ing setelan "Pesen Eksternal" "Setel String" lan "Reset String" lan ing "Detak Jantung" "Pesen."
Examples:
Setelan "Pesen Eksternal" Setel String:
{ “piranti”:”%NAME%”, “acara”:”%EID%”, “weker”:”ya” }
Iki bakal ngirim pesen TCP utawa UDP JSON siji menyang server sing ditemtokake nglaporake jeneng piranti sing ramah, jeneng acara lan sing lagi wae diwiwiti.
Setelan "Pesen Eksternal" Reset String:
{ “piranti”:”%NAME%”, “acara”:”%EID%”, “weker”:”ora” }
Iki bakal ngirim pesen TCP utawa UDP JSON siji menyang server sing ditemtokake nglaporake jeneng piranti sing ramah, jeneng acara lan kondisi kasebut saiki wis mandheg.
Pesen "Detak Jantung":
{ “piranti”:”%NAME%”, “urip”:”%DATE% %TIME%” }
Iki bakal ngirim pesen TCP utawa UDP JSON kanthi periodik menyang server sing ditemtokake sing nglaporake manawa HALO urip ing wektu sing dituduhake.
Dokumen / Sumber Daya
![]() |
Piranti Lunak HALO Smart Sensor API Piranti Lunak Dasar [pdf] Pandhuan pangguna HALO Smart Sensor API Piranti Lunak Dasar |