Software-s-LOGO

Программанын HALO Smart Sensor API Негизги Программасы

Программалык камсыздоо-s-HALO-Smart-Sensor-API-Негизги-Программалык-ПРОДУКЦИЯ

Алга

Бул документ жалпысынан BASIC API же Колдонмо программалоо интерфейси катары белгилүү Halo Smart Sensor объектилеринин тобун сүрөттөйт. Бул талкуу бир же бир нече HALO Smart сенсорлорун (HALO) 3-тараптын (IPVideo эмес) программалык компоненттери же тутумдары менен интеграциялоого кызыкдар болгон программисттер же интеграторлор тарабынан колдонууга арналган. Жалпысынан алганда, HALO API тышкы программага кадимки Ethernet тармагы аркылуу HALOдан маалыматты натыйжалуу өткөрүү үчүн арналган. Бул максатка жетүү үчүн API үч бөлүккө бөлүнөт: Окуяга негизделген розеткага туташуу, жүрөктүн согушу розеткасына туташуу жана окуя маалыматтары URL. BACnet интерфейси да бар жана өзүнчө документте камтылган.

API дизайны

API TCP/IP сыяктуу тармактык стандарт форматтарын колдонуу менен иштелип чыккан. HTTP, HTTPS жана JSON. Дизайн тышкы программаны же тиркемени иштеп чыгууда колдонула турган эч кандай атайын же менчик ыкмаларын же китепканаларды талап кылбайт. API ийкемдүү жана талап кылынган маалыматтарды так жана эң натыйжалуу жеткирүү үчүн конфигурацияланышы жана программаланышы мүмкүн. Жогорудагы бөлүмдөрдүн ар биринин ишинин чоо-жайы ушул колдонмонун кийинки бөлүмдөрүндө камтылган.

Тышкы билдирүү

Бул объект Окуя башталганда (орнотулганда) тышкы программага, VMS тутумуна, серверге ж.б. эскертүүлөрдү же сигналдарды жана Окуя маалыматтарын жеткирүү үчүн колдонулат. Кошумча билдирүүлөр Окуя тазаланганда (кайра коюлганда) сигнал берүү үчүн иштетилиши мүмкүн. Бул жеткирүү реалдуу убакытта TCP/IP розеткасына же HTTP/S серверине жүргүзүлүшү мүмкүн. Настройкаланган мазмуну менен конфигурациялануучу протоколдордун бир катар бар. Аутентификация жана шифрлөө жеткиликтүү.

Жүрөктүн согушу

Жүрөктүн согушу тууралуу билдирүүлөр конфигурациялануучу интервалда жөнөтүлөт (Окуялар качан иштетилгенде эмес) жандуу/жеткиликтүүлүгүн далилдөө үчүн. Алар Тышкы Кабарлашуу сыяктуу мүмкүнчүлүктөр диапазонуна ээ, бирок, адатта, белгилүү бир окуя жөнүндө деталдарды эмес, жалпы мамлекеттик маалыматты камтуу үчүн конфигурацияланат.

Окуя маалыматтары URL

Бул объект NDA боюнча гана жеткиликтүү жана тышкы программа Окуянын бардык маанилерине, босоголоруна жана мамлекеттик желектерине кирүүнү талап кылганда гана колдонулушу керек. Бул маалымат көбүнчө тышкы программанын талабы боюнча алынат, бирок өтө жогорку жыштыкта ​​эмес. Бул ыкма жөнөкөй добуш берүүнүн ылдамдыгы колдонулганда, адатта, бир аз кечигүү пайда болот. Добуш берүүнүн типтүү ылдамдыгы секундасына бир жолудан 5 секундасына бир жолуга чейин, абсолюттук максималдуу ылдамдыгы секундасына бир жолу. Бул ыкманы Окуя (эскертүү) алынганда кошумча колдоочу маалыматтарды алуу үчүн да колдонсо болот.

Тышкы Кабарлашуу чоо-жайы

HALOнун бир бөлүмү web Интерфейс Интеграциясынын калкыма терезеси 3-тараптын бирдиктүү туташуусун конфигурациялоону камсыз кылат, мында ар кандай маанилер алыскы TCP розеткасына же HTTP/HTTPS серверине жөнөтүлөт. Орун ээлери (токендер) берилүүчү текстке жандуу маанилерди киргизүү үчүн колдонулат. "Тышкы кабарлашуу" деп белгиленгенине карабастан, бул канал HALO тарабынан жигердүү жеткирилген реалдуу убакытта Окуя триггерлерин талап кылган дээрлик бардык максаттар үчүн колдонулушу мүмкүн. Бул тартип абдан ийкемдүү, анткени “Аракеттердеги” тандоолор бул канал аркылуу кайсы HALO Окуялары өткөрүлөөрүн аныктайт.

Программалык камсыздоо-s-HALO-Smart-Sensor-API-Негизги-Программалык-FIG-1

HTTP режиминде, орнотуу жана кайра орнотуу саптары болуп саналат URLлар каалаган көздөгөн сервер талап кылгандай киргизилиши жана форматталышы керек. Аутентификация үчүн Колдонуучу жана Сырсөз талаасы колдонулушу мүмкүн. Төмөндө HTTP режимин караңыз.

Программалык камсыздоо-s-HALO-Smart-Sensor-API-Негизги-Программалык-FIG-2

TCP режиминде Орнотуу жана Калыбына келтирүү саптары кабыл алуучу TCP розеткасына жөнөтүлгөн бир гана билдирүүнүн маалыматтары болуп саналат. Алар көздөгөн жерине жараша форматталышы мүмкүн. Бара турган жер Дарек жана Порт талааларында көрсөтүлөт. Төмөндө TCP режимин караңыз.

Программалык камсыздоо-s-HALO-Smart-Sensor-API-Негизги-Программалык-FIG-3

Ар бир режимде туташууну же башка маселелерди чечүүгө жардам бере турган эң акыркы билдирүүнүн абалы көрсөтүлөт. Кабарды мажбурлоо үчүн Аракеттер калкып чыкма терезесиндеги Event TEST баскычтарын колдонсоңуз болот:

Программалык камсыздоо-s-HALO-Smart-Sensor-API-Негизги-Программалык-FIG-4

Жөндөө же баштапкы абалга келтирүү үчүн глобалдык күйгүзүү/өчүрүү күйгүзүлүшү керек. Баштапкы абалга келтирүү көбүнчө колдонулбайт, анткени Окуянын башталышы гана кызыктырат, бирок ал ар кандай болушу мүмкүн. Ар бир Окуя өз алдынча Аракеттер калкып чыкмасында Орнотуу же Калыбына келтирүү билдирүүсүн колдонорун аныктай алат. Көз алмасынын баскычтары ачкыч сөздөрдү алмаштыруудан жана форматтоодон кийин жөнөтүлгөн нерсенин болжолдуу сүрөттөлүшүн көрсөтөт. Repeat Holdoff тез-тез келген билдирүүлөрдү башкасын жөнөтө электе кечиктирүү үчүн колдонсо болот. Бул окуя боюнча өз алдынча жүргүзүлөт. HALO окуялардын тез кайра башталышынын алдын алуу үчүн 15 секунддук окуялар үчүн камтылган кармап туруу убактысына ээ. Эгерде сиз мүнөтүнө 1 түрдөгү Окуядан ашык эмес жөнөтүлүшүн камсыз кылууну кааласаңыз, Кайталоо кармоону 60 (секунд) кылып койсоңуз болот.

Жүрөктүн кагышы деталдары

Жүрөктүн кагышын берүүлөрү жогорудагыга окшош иштейт, бирок Аракеттер бети менен эч кандай байланыш жок. Анын ордуна, Heartbeat берүү интервал талаасы менен конфигурацияланган үзгүлтүксүз негизде ишке ашат, HTTP режиминде, Орнотуу жана баштапкы абалга келтирүү саптары URLлар каалаган көздөгөн сервер талап кылгандай киргизилиши жана форматталышы керек. Аутентификация үчүн Колдонуучу жана Сырсөз талаасы колдонулушу мүмкүн. Төмөндө HTTP режимин караңыз.

Программалык камсыздоо-s-HALO-Smart-Sensor-API-Негизги-Программалык-FIG-5

Жүрөктүн кагышынын негизги максаты алыскы тиркемеге HALO Smart сенсорунун өмүрүн далилдеп берүү болсо да, бул билдирүү тандалган сенсорлорду же учурдагы Окуя абалынын маалыматын өткөрүү үчүн да колдонулушу мүмкүн. Эксample жогору менен узун сап параметрин жөнөтөт URL ал Halo аталышын, сенсордук маанилердин көпчүлүгүн жана акыркысы бош болушу мүмкүн болгон Triggered=%ACTIVE% же учурда иштетилген Окуялардын тизмесин камтыйт.

HTTP (жана HTTPS) режими

Тышкы Кабарлашуу жана Heartbeat саптары http: же https болушу мүмкүн: URLкерек болсо. Жолду жана параметрлерди көздөгөн серверге керек болсо киргизсе болот. %NAME% (HALO түзмөгүнүн аталышы) же %EID% (окуя идентификатору) сыяктуу ачкыч сөздөр зарылчылыкка жараша киргизилиши мүмкүн жана билдирүү жөнөтүлгөндө тиешелүү маалыматтар менен алмаштырылат. Көбүнчө колдонулган ачкыч сөздөрдүн тизмеси тез маалымдама үчүн көрсөтүлөт.
The URL жол ачкыч сөздөрдү, ошондой эле параметрлерди камтышы мүмкүн URL. Параметрлер NAME=VALUE жуптары же JSON объектиси же көздөгөн серверге жараша ыңгайлаштырылган формат болушу мүмкүн. МисampТышкы Кабарлашуу үчүн les түрткү болгон Окуяны көрсөтүү үчүн %EID% камтыйт:

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

ExampHeartbeat үчүн les %ACTIVE% (учурда иштетилген Окуялар) же сенсор маанисин кошушу мүмкүн:

  • https://server.com/alive?location=%NAME%&Triggered=%ACTIVE%
  • https://server.com/event?{“location”:”:%NAME%”,”NH3”:%SENSOR:NH3%}
    %SENSOR:…% маанилери evtYYYYMMDD.csv журналындагы оң жактагы сенсор тилкелеринин аталыштарында табылган аталыштарды колдонот. fileс. Алар адатта:

Программалык камсыздоо-s-HALO-Smart-Sensor-API-Негизги-Программалык-FIG-6

Эгер көздөгөн сервер GET суроо-талаптарынын ордуна HTTP PUT же POSTту жактырса, сиз префикс URL PUT: же POST: менен. Өз алдынча, сиз [JSONBODY] ачкыч сөзүн жана андан кийин JSON форматталган объектти кошуу менен көптөгөн серверлерде популярдуу болгон JSON пайдалуу жүгүн кошо аласыз. Мисampле:
PUT:https://server.com/event[JSONBODY]{“location”:”%NAME%”,”event”:”%EID%”}
The URL типтүү IP дарегин (жана IPv6) жана порт жана колдонуучунун сырсөз варианттарын колдойт, же эгерде керек болсо, Basic же Digest сыяктуу аутентификация ыкмалары үчүн көздөгөн сервер болушу керек болсо, Колдонуучу жана Сырсөз талааларын колдоно аласыз:
https://username:password@123.321.123.321:9876/event

TCP режими

Тышкы Кабарлашуу жана Heartbeat саптары жөн гана маалымат үчүн, анткени Дарек жана Порт талаалары көздөгөн жерди аныктайт. Дарек аттар, IPv4 жана IPv6 колдойт.
Сапты жогоруда сүрөттөлгөн HTTP билдирүүлөрүнүн маалымат бөлүктөрү сыяктуу же көздөгөн сервер талап кылгандай форматтаса болот.
ExampТышкы Кабарлашуу үчүн les түрткү болгон Окуяны көрсөтүү үчүн %EID% камтыйт:
жайгашкан жер=%NAME%,окуя=%EID%
{“location”:”:%NAME%”,”event”:”%EID%”}
ExampHeartbeat үчүн les %ACTIVE% (учурда иштетилген Окуялар) же сенсор маанисин кошушу мүмкүн:
жайгашкан жер=%NAME%&Триггерленген=%ACTIVE%
{“Location”:”:%NAME%”,”NH3”:%SENSOR:NH3%}

Программалык камсыздоо-s-HALO-Smart-Sensor-API-Негизги-Программалык-FIG-7

"Интеграциялоо топтому" жана "Интеграцияны кайра орнотуу" тилкелериндеги белгилөө кутучалары кайсы Окуялардын жөнөтүлүүсүн аныктайт. Окуяларды жана аракеттерди орнотуу боюнча көбүрөөк маалымат HALO администраторунун колдонмосунда жеткиликтүү.

JSON Event Messages жеткирүү
Кээ бир иштеп чыгуучулар жөнөкөй ASCII текстине караганда, өнөр жай стандарты өз алдынча белгиленген JSON катары форматталган Окуя маалыматтарын алууну каалашат, анткени биринчиси ишенимдүү жана оңой талданат. HALO боюнча web беттеги "Кабарлашуу" өтмөгүндө, сиз JSON билдирүүлөрүн "Тышкы билдирүүлөр" жөндөөлөрүндө "Сапты орнотуу" жана "Сапты кайра орнотуу" жана "Жүрөктүн согушу" "Кабар" менен камсыз кыла аласыз.

Examples:
"Тышкы кабарлашуу" Орнотуулар саптары:

{ “түзмөк”:”%NAME%”, “окуя”:”%EID%”, “ойготкуч”:”ооба” }
Бул көрсөтүлгөн серверге бир TCP же UDP JSON билдирүүсүн жөнөтөт, анда ыңгайлуу түзмөктүн аталышы, окуянын аталышы жана ал жаңы эле башталган.

"Тышкы кабарлашуу" Орнотууларын баштапкы абалга келтирүү саптары:
{ “түзмөк”:”%NAME%”, “окуя”:”%EID%”, “ойготкуч”:”жок” }
Бул көрсөтүлгөн серверге бир TCP же UDP JSON билдирүүсүн жөнөтөт, анда ыңгайлуу түзмөктүн аталышы, окуянын аталышы жана шарт азыр токтогон.

"Жүрөктүн согушу" билдирүүсү:
{ “түзмөк”:”%NAME%”, “тирүү”:”%DATE% %TIME%” }
Бул мезгил-мезгили менен TCP же UDP JSON билдирүүсүн көрсөтүлгөн серверге жөнөтүп, HALO көрсөтүлгөн убакта тирүү экенин билдирет.

Документтер / Ресурстар

Программанын HALO Smart Sensor API Негизги Программасы [pdf] Колдонуучунун колдонмосу
HALO Smart Sensor API Негизги Программасы

Шилтемелер

Комментарий калтырыңыз

Сиздин электрондук почта дарегиңиз жарыяланбайт. Талап кылынган талаалар белгиленген *