Dasturiy ta'minot-s-LOGO

HALO Smart Sensor API asosiy dasturiy ta'minoti

Dasturiy ta'minot-s-HALO-Smart-Sensor-API-Basic-dasturiy ta'minot-MAHSULOT

Oldinga

Ushbu hujjat birgalikda BASIC API yoki amaliy dasturlash interfeysi sifatida tanilgan Halo Smart Sensor qurilmalari guruhini tavsiflaydi. Ushbu munozara bir yoki bir nechta HALO Smart Sensorlarini (HALO) uchinchi tomon (IPVideo bo'lmagan) dasturiy komponentlari yoki tizimlari bilan birlashtirishga qiziqqan dasturchilar yoki integratorlar tomonidan foydalanish uchun mo'ljallangan. Umuman olganda, HALO API an'anaviy Ethernet tarmog'i orqali HALO'dan ma'lumotni tashqi dasturga samarali o'tkazish uchun mo'ljallangan. Ushbu maqsadga erishish uchun API uchta bo'limga bo'lingan: Voqealarga asoslangan rozetkaga ulanish, yurak urishi rozetkasiga ulanish va voqea ma'lumotlari URL. BACnet interfeysi ham mavjud va alohida hujjatda qamrab olingan.

API dizayni

API TCP/IP kabi sanoat standart formatlari yordamida ishlab chiqilgan. HTTP, HTTPS va JSON. Dizayn tashqi dastur yoki dasturni ishlab chiqishda foydalanish uchun maxsus yoki xususiy texnika yoki kutubxonalarni talab qilmaydi. API moslashuvchan va kerakli ma'lumotlarni aniq va eng samarali tarzda etkazib berish uchun sozlanishi va dasturlashtirilishi mumkin. Yuqoridagi bo'limlarning har birining ishlashi tafsilotlari ushbu qo'llanmaning keyingi bo'limlarida yoritilgan.

Tashqi xabarlar

Ushbu vosita Hodisa ishga tushirilganda (o'rnatilgan) tashqi dasturga, VMS tizimiga, serverga va hokazolarga ogohlantirishlar yoki signallarni va Voqea ma'lumotlarini etkazib berish uchun ishlatiladi. Voqea oʻchirilganda (qayta tiklanganda) signal berish uchun ixtiyoriy xabarlar ham yoqilishi mumkin. Ushbu yetkazib berish real vaqtda TCP/IP soketiga yoki HTTP/S serveriga amalga oshirilishi mumkin. Sozlanishi mumkin bo'lgan tarkibga ega bir qator sozlanishi protokollar mavjud. Autentifikatsiya va shifrlash mavjud.

Yurak urishi

Yurak urishi haqidagi xabarlar jonli/mavjudligini isbotlash uchun sozlanishi mumkin bo'lgan intervalda (Hodisalar ishga tushirilganda o'rniga) yuboriladi. Ular tashqi xabarlar kabi bir xil imkoniyatlarga ega, lekin odatda ma'lum bir hodisa haqidagi tafsilotlarni emas, balki umumiy holat ma'lumotlarini o'z ichiga olgan holda sozlanadi.

Voqea ma'lumotlari URL

Ushbu imkoniyat faqat NDA ostida mavjud va faqat tashqi dastur har qanday va barcha Voqealar qiymatlari, chegaralari va davlat bayroqlariga kirishni talab qilganda ishlatilishi kerak. Ushbu ma'lumotlar odatda tashqi dastur tomonidan talab bo'yicha olinadi, lekin juda yuqori chastotada emas. Bu usul, odatda, oddiy ovoz berish tezligidan foydalanilganda biroz kechikishga olib keladi. Oddiy ovoz berish tezligi daqiqada bir martadan 5 soniyada bir martagacha, mutlaq maksimal tezligi soniyada bir marta. Ushbu usuldan Voqea (ogohlantirish) olinganda qo'shimcha qo'llab-quvvatlovchi ma'lumotlarni olish uchun ham foydalanish mumkin.

Tashqi xabarlar tafsilotlari

HALO ning bir qismi web Interfeys Integratsiya qalqib chiquvchi oynasi bitta uchinchi tomon ulanishining konfiguratsiyasini ta'minlaydi, bu erda turli qiymatlar masofaviy TCP soketiga yoki HTTP/HTTPS serveriga yuborilishi mumkin. Joy egalari (tokenlar) uzatilgan matnga jonli qiymatlarni kiritish uchun ishlatiladi. “Tashqi xabarlar” deb belgilangan boʻlsa-da, bu kanal HALO tomonidan faol ravishda yetkazib beriladigan real vaqtda Voqealar tetiklarini talab qiladigan deyarli har qanday maqsadda ishlatilishi mumkin. Ushbu tartib juda moslashuvchan, chunki "Amallar" dagi tanlovlar qaysi HALO hodisalari ushbu kanal orqali uzatilishini aniqlaydi.

Dasturiy ta'minot-s-HALO-Smart-Sensor-API-Basic-dasturiy ta'minot-FIG-1

HTTP rejimida o'rnatish va tiklash satrlari URLs kerakli maqsad server talab qilganidek kiritilishi va formatlanishi kerak. Autentifikatsiya qilish uchun foydalanuvchi va parol maydonidan foydalanish mumkin. Quyidagi HTTP rejimiga qarang.

Dasturiy ta'minot-s-HALO-Smart-Sensor-API-Basic-dasturiy ta'minot-FIG-2

TCP rejimida o'rnatish va tiklash satrlari faqat qabul qiluvchi TCP soketiga yuboriladigan bitta xabarning ma'lumotlaridir. Ular manzilga kerak bo'lganda formatlanishi mumkin. Belgilangan manzil Manzil va Port maydonlarida ko'rsatilgan. Quyida TCP rejimiga qarang.

Dasturiy ta'minot-s-HALO-Smart-Sensor-API-Basic-dasturiy ta'minot-FIG-3

Ikkala rejimda ham eng so'nggi xabardagi holat ko'rsatiladi, bu ulanish yoki boshqa muammolarni hal qilishga yordam beradi. Xabarni majburlash uchun siz Harakatlar qalqib chiquvchi oynasidagi Voqea TEST tugmalaridan foydalanishingiz mumkin:

Dasturiy ta'minot-s-HALO-Smart-Sensor-API-Basic-dasturiy ta'minot-FIG-4

Ushbu turdagi xabarlarni yoqish uchun o'rnatish yoki qayta o'rnatish uchun Global yoqish/o'chirish yoqilgan bo'lishi kerak. Qayta tiklash ko'pincha ishlatilmaydi, chunki faqat Voqeaning boshlanishi qiziqish uyg'otadi, lekin u farq qilishi mumkin. Har bir Voqea mustaqil ravishda "Amallar" qalqib chiquvchi oynasida "O'rnatish" yoki "Qayta o'rnatish" xabaridan foydalanishini belgilashi mumkin. Ko'z olmasining tugmalari kalit so'zlarni almashtirish va formatlashdan keyin yuborilgan narsalarning taxminiy tasvirini ko'rsatadi. Repeat Holdoff tez-tez yuboriladigan xabarlarni boshqa xabar yuborilishidan oldin kechiktirish orqali kamaytirish uchun ishlatilishi mumkin. Bu har bir tadbir uchun mustaqil ravishda amalga oshiriladi. HALO hodisalarni tezda qayta ishga tushirishni oldini olish uchun 15 soniyalik voqealar uchun o'rnatilgan ushlab turish vaqtiga ega. Agar siz daqiqada 1 tadan ko'p bo'lmagan hodisa yuborilishiga ishonch hosil qilishni istasangiz, takrorlashni ushlab turishni 60 (soniya) ga o'rnatishingiz mumkin.

Yurak urishi tafsilotlari

Yurak urishi uzatishlari yuqoridagiga o'xshash ishlaydi, bundan tashqari, Harakatlar sahifasi bilan o'zaro aloqa yo'q. Buning o'rniga, yurak urishini uzatish Interval maydoni bilan sozlanganidek muntazam ravishda amalga oshiriladi, HTTP rejimida o'rnatish va tiklash satrlari URLs kerakli maqsad server talab qilganidek kiritilishi va formatlanishi kerak. Autentifikatsiya qilish uchun foydalanuvchi va parol maydonidan foydalanish mumkin. Quyidagi HTTP rejimiga qarang.

Dasturiy ta'minot-s-HALO-Smart-Sensor-API-Basic-dasturiy ta'minot-FIG-5

Heartbeat-ning asosiy maqsadi HALO Smart Sensorning uzoqdagi ilovaga ishlash muddatini isbotlash bo'lsa-da, bu xabar tanlangan sensorlar yoki joriy hodisa holati ma'lumotlarini uzatish uchun ham ishlatilishi mumkin. sobiqample yuqoridagi bilan uzun satr parametrini yuboradi URL Halo nomi, sensor qiymatlarining ko'pchiligi va oxirgi marta bo'sh bo'lishi mumkin bo'lgan Triggered=%ACTIVE% yoki hozirda ishga tushirilgan hodisalar ro'yxatini o'z ichiga oladi.

HTTP (va HTTPS) rejimi

Tashqi xabarlar va yurak urishi satrlari http: yoki https bo'lishi mumkin: URLkerak bo'lganda. Yo'l va parametrlar kerakli server tomonidan kiritilishi mumkin. %NAME% (HALO qurilma nomi) yoki %EID% (voqea identifikatori) kabi kalit so‘zlar kerak bo‘lganda kiritilishi mumkin va xabar yuborilganda tegishli ma’lumotlar bilan almashtiriladi. Tezkor ma'lumot olish uchun tez-tez ishlatiladigan kalit so'zlar ro'yxati ko'rsatilgan.
The URL yo'l kalit so'zlarni, shuningdek, parametrlarni o'z ichiga olishi mumkin URL. Parametrlar NAME=VALUE juftliklari yoki JSON obyekti yoki maqsad serverga qarab maxsus format bo‘lishi mumkin. MasalanampTashqi xabarlar uchun les ishga tushirilgan hodisani ko'rsatish uchun %EID% ni o'z ichiga oladi:

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

ExampHeartbeat uchun les% ACTIVE% (hozirda ishga tushirilgan hodisalar) yoki sensor qiymatini qo'shishi mumkin:

  • https://server.com/alive?location=%NAME%&Triggered=%ACTIVE%
  • https://server.com/event?{“location”:”:%NAME%”,”NH3”:%SENSOR:NH3%}
    %SENSOR:…% qiymatlari evtYYYYMMDD.csv jurnalidagi o‘ng tomondagi sensor ustun sarlavhalarida joylashgan nomlardan foydalanadi. files. Ular odatda:

Dasturiy ta'minot-s-HALO-Smart-Sensor-API-Basic-dasturiy ta'minot-FIG-6

Agar maqsad server GET so'rovlari o'rniga HTTP PUT yoki POST ni afzal ko'rsa, prefiksni qo'yishingiz mumkin URL PUT: yoki POST: bilan. Mustaqil ravishda siz [JSONBODY] kalit soʻzini va keyin JSON formatlangan obyektni qoʻshish orqali koʻplab serverlar orasida mashhur boʻlgan JSON foydali yukini qoʻshishingiz mumkin. Masalanampga:
PUT:https://server.com/event[JSONBODY]{“location”:”%NAME%”,”event”:”%EID%”}
The URL odatiy IP-manzil (va IPv6) va port va foydalanuvchi-parol opsiyalarini qo'llab-quvvatlaydi yoki agar kerak bo'lsa, Basic yoki Digest kabi autentifikatsiya usullari uchun maqsad server bo'lish uchun Foydalanuvchi va Parol maydonlaridan foydalanishingiz mumkin:
https://username:password@123.321.123.321:9876/event

TCP rejimi

Tashqi xabarlar va yurak urishi satrlari faqat ma'lumotlar uchun mo'ljallangan, chunki Manzil va Port maydonlari maqsadni belgilaydi. Manzil IPv4 va IPv6 nomlarini qo'llab-quvvatlaydi.
Satr yuqorida tavsiflangan HTTP xabarlarining maʼlumotlar qismlari yoki maqsad server talab qilganidek formatlanishi mumkin.
ExampTashqi xabarlar uchun les ishga tushirilgan hodisani ko'rsatish uchun %EID% ni o'z ichiga oladi:
joy=%NAME%,voqea=%EID%
{“joy”:”:%NAME%”,”voqea”:”%EID%”}
ExampHeartbeat uchun les% ACTIVE% (hozirda ishga tushirilgan hodisalar) yoki sensor qiymatini qo'shishi mumkin:
joy=%NAME%&Triggered=%ACTIVE%
{“joylashuv”:”:%NAME%”,”NH3”:%SENSOR:NH3%}

Dasturiy ta'minot-s-HALO-Smart-Sensor-API-Basic-dasturiy ta'minot-FIG-7

"Integratsiya to'plami" va "Integratsiyani qayta tiklash" ustunlaridagi belgilash katakchalari qaysi hodisalar jo'natilishini belgilaydi. Voqealar va harakatlarni sozlash bo'yicha ko'proq ma'lumotni HALO administrator qo'llanmasida topishingiz mumkin.

JSON voqea xabarlarini yetkazib berish
Ba'zi ishlab chiquvchilar oddiy ASCII matni o'rniga sanoat standarti o'z-o'zidan yorliqli JSON sifatida formatlangan hodisa ma'lumotlarini olishni afzal ko'rishadi, chunki birinchisi ishonchliroq va osonroq tahlil qilinadi. HALOda web sahifaning “Xabarlar” yorlig‘ida siz JSON xabarlarini “Tashqi xabarlar” sozlamalarida “Stringni o‘rnatish” va “Stringni tiklash” va “Yurak urishi” “Xabar” bo‘limida taqdim etishingiz mumkin.

Examples:
"Tashqi xabarlar" sozlamalari qatori:

{ “qurilma”:”%NAME%”, “voqea”:”%EID%”, “signal”:”ha” }
Bu ko'rsatilgan serverga mos qurilma nomi, voqea nomi va u endigina boshlangani haqida xabar beruvchi bitta TCP yoki UDP JSON xabarini yuboradi.

"Tashqi xabarlar" sozlamalarini tiklash qatori:
{ “qurilma”:”%NAME%”, “voqea”:”%EID%”, “signal”:”yo‘q” }
Bu ko'rsatilgan serverga qulay qurilma nomi, voqea nomi va shart endi to'xtatilgani haqida xabar beruvchi bitta TCP yoki UDP JSON xabarini yuboradi.

"Yurak urishi" xabari:
{ “qurilma”:”%NAME%”, “jonli”:”%DATE% %TIME%” }
Bu vaqti-vaqti bilan belgilangan serverga TCP yoki UDP JSON xabarini yuboradi, bu ko'rsatilgan vaqtda HALO tirikligi haqida xabar beradi.

Hujjatlar / manbalar

HALO Smart Sensor API asosiy dasturiy ta'minoti [pdf] Foydalanuvchi uchun qoʻllanma
HALO Smart Sensor API asosiy dasturi

Ma'lumotnomalar

Fikr qoldiring

Sizning elektron pochta manzilingiz nashr etilmaydi. Majburiy maydonlar belgilangan *