Proqram təminatının HALO Smart Sensor API Əsas Proqramı
İrəli
Bu sənəd birlikdə BASIC API və ya Tətbiq Proqramlaşdırma İnterfeysi kimi tanınan Halo Smart Sensorunun obyektlər qrupunu təsvir edir. Bu müzakirə bir və ya daha çox HALO Ağıllı Sensorlarını (HALO) 3-cü tərəf (IPVideo olmayan) proqram komponentləri və ya sistemləri ilə inteqrasiya etməkdə maraqlı olan proqramçılar və ya inteqratorlar tərəfindən istifadə üçün nəzərdə tutulub. Ümumiyyətlə, HALO API məlumatı HALO-dan ənənəvi Ethernet şəbəkəsi üzərindən xarici proqrama səmərəli şəkildə ötürmək üçün nəzərdə tutulub. Bu məqsədə nail olmaq üçün API üç hissəyə bölünür: Hadisəyə əsaslanan soket bağlantısı, ürək döyüntüsü yuvası bağlantısı və hadisə məlumatları URL. BACnet interfeysi də mövcuddur və ayrıca sənəddə əhatə olunur.
API Dizaynı
API, TCP/IP kimi sənaye standart formatlarından istifadə etməklə hazırlanmışdır. HTTP, HTTPS və JSON. Dizayn, xarici proqramın və ya tətbiqin işlənib hazırlanmasında istifadə olunan hər hansı xüsusi və ya mülkiyyət texnikası və ya kitabxana tələb etmir. API çevikdir və tam olaraq tələb olunan məlumatları və ən səmərəli şəkildə çatdırmaq üçün konfiqurasiya edilə və proqramlaşdırıla bilər. Yuxarıdakı bölmələrin hər birinin işinin təfərrüatları bu təlimatın aşağıdakı bölmələrində əhatə olunur.
Xarici Mesajlaşma
Bu qurğudan Hadisə işə salındıqda (qurulduğunda) xəbərdarlıqlar və ya həyəcan siqnalları və Hadisə məlumatlarını xarici proqrama, VMS sisteminə, serverə və s. çatdırmaq üçün istifadə olunur. Opsiyonel mesajlar, həmçinin Hadisə təmizləndikdə (sıfırlananda) siqnal vermək üçün aktivləşdirilə bilər. Bu çatdırılma real vaxt rejimində TCP/IP yuvasına və ya HTTP/S serverinə edilə bilər. Özelleştirilebilir məzmunu olan bir sıra konfiqurasiya edilə bilən protokollar var. Doğrulama və şifrələmə mövcuddur.
Ürək döyüntüsü
Canlı/mövcudluğun sübutunu təmin etmək üçün ürək döyüntüsü mesajları konfiqurasiya edilə bilən intervalda (Hadisələrin işə salındığı vaxt əvəzinə) göndərilir. Onlar Xarici Mesajlaşma kimi oxşar imkanlara malikdirlər, lakin adətən konkret hadisə haqqında təfərrüatlar deyil, ümumi vəziyyət məlumatlarını ehtiva etmək üçün konfiqurasiya edilirlər.
Hadisə Məlumatı URL
Bu vasitə yalnız NDA çərçivəsində mövcuddur və yalnız xarici proqram hər hansı və bütün Hadisə dəyərlərinə, həddilərə və dövlət bayraqlarına giriş tələb etdikdə istifadə edilməlidir. Bu məlumatlar ümumiyyətlə xarici proqram tərəfindən tələb əsasında alınır, lakin çox yüksək tezlikdə deyil. Təvazökar səsvermə dərəcəsi istifadə edildikdə bu üsul ümumiyyətlə müəyyən gecikmələrə səbəb olur. Tipik səsvermə dərəcələri saniyədə bir dəfə mütləq maksimum sürətlə dəqiqədə birdən 5 saniyədə birə qədər dəyişir. Bu üsul həmçinin Hadisə (xəbərdarlıq) qəbul edildikdə əlavə dəstəkləyici məlumatların əldə edilməsi üçün istifadə edilə bilər.
Xarici Mesajlaşma təfərrüatları
HALO-nun bir hissəsi web interfeys İnteqrasiya popupı müxtəlif dəyərlərin uzaq TCP yuvasına və ya HTTP/HTTPS serverinə göndərilə biləcəyi tək 3-cü tərəf bağlantısının konfiqurasiyasını təmin edir. Yer tutucular (tokenlər) ötürülən mətnə canlı dəyərlər daxil etmək üçün istifadə olunur. “Xarici Mesajlaşma” etiketinə baxmayaraq, bu kanal HALO tərəfindən aktiv şəkildə çatdırılan real vaxtda Hadisə tetikleyicilerini tələb edən demək olar ki, istənilən məqsəd üçün istifadə edilə bilər. Bu tənzimləmə olduqca çevikdir, çünki “Fəaliyyətlər”dəki seçimlər bu kanal vasitəsilə hansı HALO Hadisələrinin ötürüldüyünü müəyyən edir.
HTTP rejimində Set və Sıfırlama Sətirləridir URLs daxil edilməli və istədiyiniz təyinat serveri tərəfindən tələb olunduğu kimi formatlaşdırılmalıdır. Autentifikasiya üçün İstifadəçi və Parol sahəsi istifadə edilə bilər. Aşağıdakı HTTP rejiminə baxın.
TCP rejimində Set və Sıfırlama Sətirləri yalnız qəbuledici TCP yuvasına göndərilən bir mesajın məlumatlarıdır. Onlar təyinat üçün lazım olduqda formatlana bilər. Təyinat ünvanı Ünvan və Port sahələrində göstərilir. Aşağıdakı TCP rejiminə baxın.
Hər iki rejim üçün əlaqə və ya digər problemləri həll etməyə kömək edə biləcək ən son mesajdakı status göstərilir. Mesajı məcbur etmək üçün Fəaliyyətlər pəncərəsindəki Hadisə TEST düymələrindən istifadə edə bilərsiniz:
Bu tip mesajları aktivləşdirmək üçün Set və ya Sıfırlama üçün Qlobal On/Off Aktiv olmalıdır. Sıfırlama tez-tez istifadə edilmir, çünki yalnız Hadisənin başlanğıcı maraq doğurur, lakin bu, dəyişə bilər. Hər bir Tədbir müstəqil olaraq Fəaliyyətlər pop-up pəncərəsində Set və ya Sıfırlama mesajından istifadə edəcəyini müəyyən edə bilər. Göz alma düymələri açar sözlər dəyişdirildikdən və formatlaşdırıldıqdan sonra göndərilənlərin təxmini təsvirini göstərəcək. Repeat Holdoff başqa bir mesaj göndərilməzdən əvvəl gecikdirməklə tez-tez gələn mesajları dayandırmaq üçün istifadə edilə bilər. Bu, hər bir hadisə üçün müstəqil olaraq həyata keçirilir. HALO, Hadisələrin sürətlə yenidən başlamasının qarşısını almaq üçün 15 saniyəlik hadisələr üçün daxili saxlama müddətinə malikdir. Əgər dəqiqədə 1 növdən çox Hadisənin göndərilməsini təmin etmək istəyirsinizsə, Təkrar Tutma rejimini 60 (saniyə) olaraq təyin edə bilərsiniz.
Ürək döyüntüsü təfərrüatları
Ürək döyüntüsü ötürülməsi yuxarıda göstərilənlərə bənzər şəkildə işləyir, ancaq Fəaliyyətlər səhifəsi ilə heç bir əlaqə yoxdur. Bunun əvəzinə, Ürək döyüntüsü ötürülməsi Interval sahəsi ilə konfiqurasiya edildiyi kimi müntəzəm olaraq baş verir, HTTP rejimində Set və Sıfırlama Sətirləri URLs daxil edilməli və istədiyiniz təyinat serveri tərəfindən tələb olunduğu kimi formatlaşdırılmalıdır. Autentifikasiya üçün İstifadəçi və Parol sahəsi istifadə edilə bilər. Aşağıdakı HTTP rejiminə baxın.
Ürək döyüntüsünün əsas məqsədi HALO Ağıllı Sensorun istifadə müddətini uzaqdan tətbiqə sübut etmək olsa da, bu mesaj seçilmiş sensorları və ya cari Hadisə vəziyyəti məlumatını ötürmək üçün də istifadə edilə bilər. keçmişample yuxarıda ilə uzun simli parametr göndərir URL Buraya Halo adı, sensor dəyərlərinin əksəriyyəti və nəhayət Tətiklənmiş=%AKTİV% boş ola bilər və ya hazırda işə salınmış Hadisələrin siyahısı daxildir.
HTTP (və HTTPS) rejimi
Xarici Mesajlaşma və Ürək döyüntüsü sətirləri http: və ya https ola bilər: URLlazım olduğu kimi. Yol və parametrlər təyinat serveri tərəfindən lazım olduqda daxil edilə bilər. %NAME% (HALO cihaz adı) və ya %EID% (Tədbir id) kimi açar sözlər lazım olduqda daxil edilə bilər və mesaj göndərildikdə müvafiq məlumatla əvəz olunacaq. Tez istinad üçün tez-tez istifadə olunan açar sözlərin siyahısı göstərilir.
The URL yol açar sözlər, həmçinin parametrləri ehtiva edə bilər URL. Parametrlər təyinat serverindən asılı olaraq NAME=VALUE cütləri və ya JSON obyekti və ya fərdi format ola bilər. MəsampXarici Mesajlaşma üçün les tetiklenen Hadisəni göstərmək üçün %EID% daxil olacaq:
- https://server.com/event/%NAME%/%EID%
- https://server.com/event?location=%NAME%&event=%EID%
- https://server.com/event?{“location”:”:%NAME%”,”event”:”%EID%”}
ExampHeartbeat üçün les %ACTIVE% (hazırda tetiklenen Hadisələr) və ya sensor dəyəri əlavə edə bilər:
- https://server.com/alive?location=%NAME%&Triggered=%ACTIVE%
- https://server.com/event?{“location”:”:%NAME%”,”NH3”:%SENSOR:NH3%}
%SENSOR:…% dəyərləri evtYYYYMMDD.csv jurnalında sağ tərəfdəki sensor sütun başlıqlarında olan adlardan istifadə edir files. Onlar adətən:
Əgər təyinat serveri GET sorğuları yerinə HTTP PUT və ya POST-a üstünlük verirsə, siz prefiks edə bilərsiniz URL PUT: və ya POST: ilə. Müstəqil olaraq siz [JSONBODY] açar sözünü və ardınca JSON formatlı obyekti əlavə etməklə bir çox serverlər arasında populyar olan JSON yükünü əlavə edə bilərsiniz. Məsample:
PUT:https://server.com/event[JSONBODY]{“location”:”%NAME%”,”event”:”%EID%”}
The URL tipik IP ünvanını (və IPv6) və port və istifadəçi parol seçimlərini dəstəkləyir və ya Basic və ya Digest kimi autentifikasiya üsulları üçün lazım olduqda İstifadəçi və Parol sahələrindən istifadə edə bilərsiniz:
https://username:password@123.321.123.321:9876/event…
TCP rejimi
Xarici Mesajlaşma və Ürək döyüntüsü sətirləri yalnız məlumat üçündür, çünki Ünvan və Port sahələri təyinatı müəyyən edir. Ünvan adları, IPv4 və IPv6-nı dəstəkləyir.
Sətir yuxarıda təsvir edilən HTTP mesajlarının məlumat hissələri kimi və ya təyinat serverinin tələb etdiyi kimi formatlana bilər.
ExampXarici Mesajlaşma üçün les tetiklenen Hadisəni göstərmək üçün %EID% daxil olacaq:
məkan=%NAME%,hadisə=%EID%
{“yer”:”:%NAME%”,”hadisə”:”%EID%”}
ExampHeartbeat üçün les %ACTIVE% (hazırda tetiklenen Hadisələr) və ya sensor dəyəri əlavə edə bilər:
məkan=%NAME%&Tetiklendi=%AKTİV%
{“yer”:”:%NAME%”,”NH3”:%SENSOR:NH3%}
“İnteqrasiya Dəsti” və “İnteqrasiya Sıfırlaması” sütunlarındakı qeyd qutuları hansı Hadisələrin göndərilməsini tetiklediyini müəyyən edir. Hadisələrin və Fəaliyyətlərin qurulması haqqında daha çox məlumat HALO Administrator Təlimatında mövcuddur.
JSON Hadisə Mesajlarının Çatdırılması
Bəzi tərtibatçılar adi ASCII mətni əvəzinə sənaye standartı öz-özünə etiketlənmiş JSON kimi formatlanmış Hadisə məlumatlarını almağa üstünlük verirlər, çünki birincisi daha etibarlı və daha asan təhlil edilir. HALO haqqında web səhifə “Mesajlaşma” sekmesinde, JSON mesajlarını “Xarici Mesajlaşma” parametrlərində “Sətri təyin et” və “Sətri sıfırla” və “Ürək döyüntüsü” “Mesaj” bölməsində təmin edə bilərsiniz.
Examples:
"Xarici Mesajlaşma" Parametrlər Seti:
{ “cihaz”:”%NAME%”, “hadisə”:”%EID%”, “siqnal”:”bəli” }
Bu, göstərilən serverə uyğun cihaz adını, hadisə adını və onun yeni başladığını bildirən tək TCP və ya UDP JSON mesajı göndərəcək.
"Xarici Mesajlaşma" Parametrləri Sıfırlama Simi:
{ “cihaz”:”%NAME%”, “hadisə”:”%EID%”, “siqnal”:”yox” }
Bu, göstərilən serverə uyğun cihaz adı, hadisə adı və şərtin indi dayandığını bildirən tək TCP və ya UDP JSON mesajı göndərəcək.
"Ürək döyüntüsü" mesajı:
{ “cihaz”:”%NAME%”, “canlı”:”%DATE% %TIME%” }
Bu, vaxtaşırı HALO-nun göstərilən vaxtda canlı olduğunu bildirən TCP və ya UDP JSON mesajını göstərilən serverə göndərəcək.
Sənədlər / Resurslar
![]() |
Proqram təminatının HALO Smart Sensor API Əsas Proqramı [pdf] İstifadəçi təlimatı HALO Smart Sensor API Əsas Proqramı |