સોફ્ટવેરનું HALO સ્માર્ટ સેન્સર API બેઝિક સોફ્ટવેર
આગળ
આ દસ્તાવેજ હેલો સ્માર્ટ સેન્સરની સુવિધાઓના જૂથનું વર્ણન કરે છે જે સામૂહિક રીતે BASIC API અથવા એપ્લિકેશન પ્રોગ્રામિંગ ઇન્ટરફેસ તરીકે ઓળખાય છે. આ ચર્ચા એવા પ્રોગ્રામર્સ અથવા ઇન્ટિગ્રેટર્સ દ્વારા ઉપયોગ માટે બનાવાયેલ છે જેઓ એક અથવા વધુ HALO સ્માર્ટ સેન્સર્સ (HALO) ને તૃતીય પક્ષ (નોન-IPVideo) સોફ્ટવેર ઘટકો અથવા સિસ્ટમો સાથે એકીકૃત કરવામાં રસ ધરાવે છે. સામાન્ય રીતે, HALO API નો હેતુ પરંપરાગત ઈથરનેટ નેટવર્ક પર 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 ઇવેન્ટ્સ પ્રસારિત થાય છે.
HTTP મોડમાં, સેટ અને રીસેટ સ્ટ્રીંગ્સ છે URLs કે જે ઇચ્છિત ગંતવ્ય સર્વર દ્વારા આવશ્યકતા મુજબ દાખલ અને ફોર્મેટ કરેલ હોવું જોઈએ. પ્રમાણીકરણ માટે વપરાશકર્તા અને પાસવર્ડ ફીલ્ડનો ઉપયોગ કરી શકાય છે. નીચે HTTP મોડ જુઓ.
TCP મોડમાં, સેટ અને રીસેટ સ્ટ્રીંગ્સ એ માત્ર એક સંદેશનો ડેટા છે જે પ્રાપ્ત કરનાર TCP સોકેટને મોકલવામાં આવે છે. તેઓ ગંતવ્ય દ્વારા જરૂરી ફોર્મેટ કરી શકાય છે. ગંતવ્ય સરનામું અને પોર્ટ ફીલ્ડમાં ઉલ્લેખિત છે. નીચે TCP મોડ જુઓ.
કોઈપણ મોડ માટે, સૌથી તાજેતરના સંદેશમાંથી સ્ટેટસ પ્રદર્શિત થાય છે જે કનેક્શન અથવા અન્ય સમસ્યાઓને ઠીક કરવામાં મદદ કરી શકે છે. તમે સંદેશને દબાણ કરવા માટે ક્રિયાઓ પોપઅપ પર ઇવેન્ટ ટેસ્ટ બટનોનો ઉપયોગ કરી શકો છો:
તે પ્રકારના સંદેશાઓને સક્ષમ કરવા માટે સેટ અથવા રીસેટ માટે વૈશ્વિક ચાલુ/બંધ ચાલુ હોવું આવશ્યક છે. રીસેટનો વારંવાર ઉપયોગ થતો નથી કારણ કે માત્ર ઇવેન્ટની શરૂઆત જ રસ ધરાવે છે, પરંતુ તે બદલાઈ શકે છે. દરેક ઇવેન્ટ સ્વતંત્ર રીતે સ્પષ્ટ કરી શકે છે કે તે ક્રિયા પોપઅપ પર સેટ અથવા રીસેટ સંદેશનો ઉપયોગ કરશે કે કેમ. આંખની કીકી બટનો કીવર્ડ અવેજી અને ફોર્મેટિંગ પછી શું મોકલવામાં આવે છે તેનું રફ પ્રતિનિધિત્વ પ્રદર્શિત કરશે. પુનરાવર્તિત હોલ્ડઓફનો ઉપયોગ અન્ય એક મોકલવામાં આવે તે પહેલાં વિલંબ કરીને વારંવાર આવતા સંદેશાઓને થ્રોટલ કરવા માટે કરી શકાય છે. આ ઘટના દીઠ સ્વતંત્ર રીતે કરવામાં આવે છે. HALO પાસે 15 સેકન્ડની ઇવેન્ટ્સ માટે બિલ્ટ-ઇન હોલ્ડ ટાઇમ છે જેથી ઇવેન્ટના ઝડપી રિટ્રિગરિંગને અટકાવી શકાય. જો તમે એ સુનિશ્ચિત કરવા માંગતા હો કે પ્રતિ મિનિટ 1 થી વધુ ઇવેન્ટ મોકલવામાં ન આવે, તો તમે પુનરાવર્તિત હોલ્ડઓફને 60 (સેકંડ) પર સેટ કરી શકો છો.
હૃદયના ધબકારા વિગતો
હાર્ટબીટ ટ્રાન્સમિશન ઉપરના જેવી જ રીતે કાર્ય કરે છે સિવાય કે ક્રિયાઓ પૃષ્ઠ સાથે કોઈ ક્રિયાપ્રતિક્રિયા નથી. તેના બદલે, હ્રદયના ધબકારા ટ્રાન્સમિશન નિયમિત ધોરણે ઈન્ટરવલ ફીલ્ડ સાથે રૂપરેખાંકિત થાય છે, HTTP મોડમાં, સેટ અને રીસેટ સ્ટ્રીંગ્સ છે. URLs કે જે ઇચ્છિત ગંતવ્ય સર્વર દ્વારા આવશ્યકતા મુજબ દાખલ અને ફોર્મેટ કરેલ હોવું જોઈએ. પ્રમાણીકરણ માટે વપરાશકર્તા અને પાસવર્ડ ફીલ્ડનો ઉપયોગ કરી શકાય છે. નીચે HTTP મોડ જુઓ.
જ્યારે હાર્ટબીટનો પ્રાથમિક હેતુ રિમોટ એપ્લિકેશનને HALO સ્માર્ટ સેન્સરના જીવનનો પુરાવો આપવાનો છે, ત્યારે આ સંદેશનો ઉપયોગ પસંદ કરેલ સેન્સર અથવા વર્તમાન ઇવેન્ટ સ્ટેટ માહિતીને પ્રસારિત કરવા માટે પણ થઈ શકે છે. માજીampઉપર le સાથે લાંબી સ્ટ્રિંગ પેરામીટર મોકલે છે URL જેમાં હાલો નામ, મોટાભાગની સેન્સર વેલ્યુ અને છેલ્લે ટ્રિગરેડ=%ACTIVE% જે ખાલી હોઈ શકે છે અથવા હાલમાં ટ્રિગર થયેલી ઘટનાઓની સૂચિનો સમાવેશ થાય છે.
HTTP (અને HTTPS) મોડ
બાહ્ય મેસેજિંગ અને હાર્ટબીટ સ્ટ્રીંગ http: અથવા https: હોઈ શકે છે. URLs જરૂર મુજબ. ગંતવ્ય સર્વર દ્વારા જરૂરિયાત મુજબ પાથ અને પરિમાણો દાખલ કરી શકાય છે. %NAME% (HALO ઉપકરણ નામ) અથવા %EID% (ઇવેન્ટ id) જેવા કીવર્ડ્સ જરૂરિયાત મુજબ દાખલ કરી શકાય છે અને જ્યારે સંદેશ મોકલવામાં આવે ત્યારે સંબંધિત ડેટા સાથે બદલવામાં આવશે. સામાન્ય રીતે ઉપયોગમાં લેવાતા કીવર્ડ્સની સૂચિ ઝડપી સંદર્ભ માટે બતાવવામાં આવે છે.
આ URL પાથ કીવર્ડ્સ તેમજ પેરામીટર્સ સમાવી શકે છે URL. પેરામીટર્સ NAME=VALUE જોડીઓ અથવા JSON ઑબ્જેક્ટ અથવા ગંતવ્ય સર્વરના આધારે કસ્ટમ ફોર્મેટ હોઈ શકે છે. ઉદાampબાહ્ય સંદેશા માટેના લેસમાં ટ્રિગર થયેલી ઇવેન્ટ સૂચવવા માટે %EID% શામેલ હશે:
- https://server.com/event/%NAME%/%EID%
- https://server.com/event?location=%NAME%&event=%EID%
- https://server.com/event?{“location”:”:%NAME%”,”event”:”%EID%”}
Exampહાર્ટબીટ માટે લેસ % ACTIVE% (હાલમાં ટ્રિગર થયેલ ઇવેન્ટ્સ) અથવા સેન્સર મૂલ્ય ઉમેરી શકે છે:
- https://server.com/alive?location=%NAME%&Triggered=%ACTIVE%
- https://server.com/event?{“location”:”:%NAME%”,”NH3”:%SENSOR:NH3%}
%સેન્સર:…% મૂલ્યો evtYYYYMMDD.csv લોગમાં જમણી બાજુના સેન્સર કૉલમ હેડિંગમાં મળેલા નામોનો ઉપયોગ કરે છે files તેઓ સામાન્ય રીતે છે:
જો ગંતવ્ય સર્વર GET વિનંતીઓને બદલે HTTP PUT અથવા POST પસંદ કરે છે, તો તમે URL PUT: અથવા POST: સાથે. સ્વતંત્ર રીતે, તમે JSON પેલોડ ઉમેરી શકો છો જે JSON ફોર્મેટ કરેલ ઑબ્જેક્ટ દ્વારા અનુસરવામાં આવેલ [JSONBODY] કીવર્ડ ઉમેરીને ઘણા સર્વર્સમાં લોકપ્રિય છે. ઉદાampલે:
PUT:https://server.com/event[JSONBODY]{“location”:”%NAME%”,”event”:”%EID%”}
આ URL લાક્ષણિક IP સરનામું (અને IPv6) અને પોર્ટ અને વપરાશકર્તા-પાસવર્ડ વિકલ્પોને સપોર્ટ કરે છે, અથવા તમે મૂળભૂત અથવા ડાયજેસ્ટ જેવી પ્રમાણીકરણ પદ્ધતિઓ માટે ગંતવ્ય સર્વર તરીકે જો જરૂરી હોય તો વપરાશકર્તા અને પાસવર્ડ ક્ષેત્રોનો ઉપયોગ કરી શકો છો:
https://username:password@123.321.123.321:9876/event…
TCP મોડ
એક્સટર્નલ મેસેજિંગ અને હાર્ટબીટ સ્ટ્રિંગ માત્ર ડેટા માટે છે કારણ કે એડ્રેસ અને પોર્ટ ફીલ્ડ્સ ગંતવ્યનો ઉલ્લેખ કરે છે. સરનામું નામો, IPv4 અને IPv6 ને સમર્થન આપે છે.
સ્ટ્રિંગ ઉપર વર્ણવેલ HTTP સંદેશાઓના ડેટા ભાગોની જેમ અથવા ગંતવ્ય સર્વર દ્વારા આવશ્યકતા મુજબ ફોર્મેટ કરી શકાય છે.
Exampબાહ્ય સંદેશા માટેના લેસમાં ટ્રિગર થયેલી ઇવેન્ટ સૂચવવા માટે %EID% શામેલ હશે:
સ્થાન=%NAME%, ઘટના=%EID%
{“સ્થાન”:”:%NAME%”,”ઇવેન્ટ”:”%EID%”}
Exampહાર્ટબીટ માટે લેસ % ACTIVE% (હાલમાં ટ્રિગર થયેલ ઇવેન્ટ્સ) અથવા સેન્સર મૂલ્ય ઉમેરી શકે છે:
સ્થાન=%NAME%&Triggered=%ACTIVE%
{“સ્થાન”:”:%NAME%”,”NH3”:%સેન્સર:NH3%}
"ઇન્ટિગ્રેશન સેટ" અને "ઇન્ટિગ્રેશન રીસેટ" કૉલમમાં ચેકબૉક્સ નક્કી કરે છે કે કઈ ઇવેન્ટ્સ મોકલવાનું ટ્રિગર કરે છે. ઇવેન્ટ્સ અને એક્શન્સના સેટઅપ પર વધુ HALO એડમિનિસ્ટ્રેટર્સ ગાઇડમાં ઉપલબ્ધ છે.
JSON ઇવેન્ટ સંદેશાઓની ડિલિવરી
કેટલાક વિકાસકર્તાઓ સાદા ASCII ટેક્સ્ટને બદલે ઇન્ડસ્ટ્રી સ્ટાન્ડર્ડ સેલ્ફ-લેબલવાળા JSON તરીકે ફોર્મેટ કરેલ ઇવેન્ટ ડેટા પ્રાપ્ત કરવાનું પસંદ કરે છે કારણ કે પહેલાનું વધુ વિશ્વસનીય અને વધુ સરળતાથી વિશ્લેષિત છે. HALO પર web પેજ "મેસેજિંગ" ટેબ પર, તમે "બાહ્ય મેસેજિંગ" સેટિંગ્સ "સેટ સ્ટ્રિંગ" અને "રીસેટ સ્ટ્રિંગ" અને "હાર્ટબીટ" "મેસેજ" માં JSON સંદેશાઓ આપી શકો છો.
Exampલેસ:
"બાહ્ય મેસેજિંગ" સેટિંગ્સ સેટ સ્ટ્રીંગ:
{ “ઉપકરણ”:”%NAME%”, “ઇવેન્ટ”:”%EID%”, “અલાર્મ”:”હા” }
આ મૈત્રીપૂર્ણ ઉપકરણનું નામ, ઇવેન્ટનું નામ અને તે હમણાં જ શરૂ થયું હોવાની જાણ કરતા ઉલ્લેખિત સર્વરને એક TCP અથવા UDP JSON સંદેશ મોકલશે.
"બાહ્ય મેસેજિંગ" સેટિંગ્સ રીસેટ સ્ટ્રીંગ:
{ “ઉપકરણ”:”%NAME%”, “ઇવેન્ટ”:”%EID%”, “અલાર્મ”:”ના” }
આ મૈત્રીપૂર્ણ ઉપકરણ નામ, ઇવેન્ટનું નામ અને સ્થિતિ હવે બંધ થઈ ગઈ છે તેની જાણ કરતા ઉલ્લેખિત સર્વરને એક TCP અથવા UDP JSON સંદેશ મોકલશે.
"હૃદયના ધબકારા" સંદેશ:
{ “ઉપકરણ”:”%NAME%”, “જીવંત”:”%DATE% %TIME%” }
આ સમયાંતરે નિર્દિષ્ટ સર્વરને TCP અથવા UDP JSON સંદેશ મોકલશે જે દર્શાવે છે કે HALO સૂચવેલ સમયે જીવંત છે.
દસ્તાવેજો / સંસાધનો
![]() |
સોફ્ટવેરનું HALO સ્માર્ટ સેન્સર API બેઝિક સોફ્ટવેર [પીડીએફ] વપરાશકર્તા માર્ગદર્શિકા HALO સ્માર્ટ સેન્સર API મૂળભૂત સોફ્ટવેર |