Software-s-LOGO

תוכנה של HALO Smart Sensor API תוכנה בסיסית

תוכנה-s-HALO-Smart-Sensor-API-Basic-Software-PRODUCT

קָדִימָה

מסמך זה מתאר את קבוצת המתקנים של חיישן החכם Halo הידוע ביחד כ-BASIC API, או ממשק תכנות יישומים. דיון זה מיועד לשימוש על ידי מתכנתים או אינטגרטורים המעוניינים לשלב אחד או יותר חיישני HALO חכמים (HALO) עם רכיבי תוכנה או מערכות של צד שלישי (שאינם IPVideo). באופן כללי, ה-API של HALO נועד להעביר מידע ביעילות מ-HALO דרך רשת Ethernet קונבנציונלית לתוכנית החיצונית. כדי להשיג מטרה זו, ה-API מחולק לשלושה חלקים: חיבור Socket Driven Event, חיבור Socket Heartbeat ונתוני אירועים URL. ממשק BACnet קיים גם הוא ומכוסה במסמך נפרד.

עיצוב API

ה-API תוכנן באמצעות פורמטים סטנדרטיים בתעשייה כגון TCP/IP. HTTP, HTTPS ו-JSON. העיצוב אינו דורש טכניקות או ספריות מיוחדות או קנייניות לשימוש בפיתוח התוכנית או היישום החיצוניים. ה-API גמיש וניתן להגדיר ולתכנת אותו כדי לספק בדיוק את הנתונים הנדרשים ובצורה היעילה ביותר. פרטי הפעולה של כל אחד מהסעיפים לעיל מכוסים בחלקים הבאים של מדריך זה.

הודעות חיצוניות

מתקן זה משמש להעברת התראות או אזעקות ונתוני אירועים לתוכנית חיצונית, מערכת VMS, שרת וכו' כאשר אירוע מופעל (מוגדר). ניתן גם להפעיל הודעות אופציונליות לאותת כאשר אירוע מתנקה (מתאפס). מסירה זו יכולה לבצע לשקע TCP/IP או שרת HTTP/S בזמן אמת. יש מגוון של פרוטוקולים הניתנים להגדרה עם תוכן הניתן להתאמה אישית. אימות והצפנה זמינים.

דוֹפֶק

הודעות פעימות לב נשלחות במרווח שניתן להגדרה (במקום כאשר אירועים מופעלים) כדי לספק הוכחה לזמינות בזמן אמת. יש להם מגוון דומה של יכולות כמו העברת הודעות חיצוניות, אך בדרך כלל יוגדרו כך שיכילו מידע מצב כללי ולא פרטים על אירוע מסוים.

נתוני אירועים URL

מתקן זה זמין רק תחת NDA ויש להשתמש בו רק כאשר התוכנית החיצונית דורשת גישה לכל ערכי האירוע, הספים ודגלי המדינה. נתונים אלה מאוחזרים בדרך כלל על פי דרישה על ידי התוכנית החיצונית אך לא בתדירות גבוהה במיוחד. שיטה זו גורמת בדרך כלל להשהייה מסוימת כאשר נעשה שימוש בקצב סקרים צנוע. קצבי סקרים אופייניים נעים בין פעם לדקה לפעם ב-5 שניות עם קצב מרבי מוחלט של פעם בשנייה. ניתן להשתמש בשיטה זו גם כדי לאחזר נתונים תומכים נוספים כאשר מתקבלת אירוע (התראה).

פרטי הודעות חיצוניות

חלק מה-HALO web חלון קופץ של שילוב ממשק מספק תצורה של חיבור יחיד של צד שלישי שבו ניתן לשלוח ערכים שונים לשקע TCP מרוחק או לשרת HTTP/HTTPS. מחזיקי מקומות (אסימונים) משמשים להוספת ערכים חיים לטקסט המועבר. למרות שכותרתו "הודעות חיצוניות", ערוץ זה יכול לשמש כמעט לכל מטרה הדורשת הפעלת אירועים בזמן אמת, המועברים באופן פעיל על ידי HALO. הסדר זה די גמיש מכיוון שהבחירות ב"פעולות" קובעות אילו אירועי HALO משדרים דרך הערוץ הזה.

תוכנה-s-HALO-Smart-Sensor-API-Basic-Software-FIG-1

במצב HTTP, מחרוזות ההגדרה והאיפוס הן URLs שיש להזין ולעצב כנדרש על ידי שרת היעד הרצוי. ניתן להשתמש בשדה משתמש וסיסמה לצורך אימות. ראה מצב HTTP למטה.

תוכנה-s-HALO-Smart-Sensor-API-Basic-Software-FIG-2

במצב TCP, מחרוזות הגדר ואיפוס הן רק הנתונים של הודעה בודדת שנשלחת לשקע ה-TCP המקבל. ניתן לעצב אותם לפי הצורך לפי היעד. היעד מצוין בשדות כתובת ויציאה. ראה מצב TCP למטה.

תוכנה-s-HALO-Smart-Sensor-API-Basic-Software-FIG-3

עבור כל אחד מהמצבים, מוצג סטטוס מההודעה העדכנית ביותר שיכול לסייע בתיקון חיבור או בעיות אחרות. אתה יכול להשתמש בלחצני בדיקת האירוע בחלון הקופץ 'פעולות' כדי לאלץ הודעה:

תוכנה-s-HALO-Smart-Sensor-API-Basic-Software-FIG-4

הפעלה/כיבוי גלובלית עבור הגדרה או איפוס חייבת להיות פועלת כדי לאפשר סוגי הודעות אלה. לעתים קרובות לא נעשה שימוש באיפוס מכיוון שרק תחילתו של אירוע מעניין, אבל זה יכול להשתנות. כל אירוע יכול לציין באופן עצמאי אם הוא ישתמש בהודעת הסט או ה-Reset בחלון המוקפץ 'פעולות'. כפתורי גלגל העין יציגו ייצוג גס של מה שנשלח לאחר החלפות מילות מפתח ועיצוב. ניתן להשתמש ב-Repeat Holdoff כדי למנוע הודעות תכופות על ידי עיכוב לפני שניתן לשלוח עוד אחת. זה נעשה באופן עצמאי לכל אירוע. ל-HALO זמן החזקה מובנה לאירועים של 15 שניות כדי למנוע הפעלה מהירה מחדש של אירועים. אם רצית להבטיח שלא יישלח יותר מאירוע אחד מסוג כלשהו בדקה, תוכל להגדיר את השהייה חוזרת ל-1 (שניות).

פרטים על פעימות הלב

שידורי Heartbeat פועלים באופן דומה לאמור לעיל, פרט לכך שאין אינטראקציה עם דף הפעולות. במקום זאת, שידור פעימות הלב מתרחש על בסיס קבוע כפי שהוגדר עם השדה Interval, במצב HTTP, מחרוזות ההגדרה והאיפוס הן URLs שיש להזין ולעצב כנדרש על ידי שרת היעד הרצוי. ניתן להשתמש בשדה משתמש וסיסמה לצורך אימות. ראה מצב HTTP למטה.

תוכנה-s-HALO-Smart-Sensor-API-Basic-Software-FIG-5

בעוד שהמטרה העיקרית של Heartbeat היא לספק הוכחה לחייו של חיישן חכם HALO ליישום מרוחק, ניתן להשתמש בהודעה זו גם להעברת חיישנים נבחרים או מידע על מצב האירוע הנוכחי. האקסample לעיל שולח פרמטר מחרוזת ארוכה עם ה- URL שכוללים את השם Halo, רוב ערכי החיישן, ולבסוף Triggered=%ACTIVE% שיכול להיות ריק או רשימה של אירועים המופעלים כעת.

מצב HTTP (ו-HTTPS).

מחרוזות הודעות חיצוניות וקצב הלב יכולות להיות http: או https: URLלפי הצורך. ניתן להזין נתיב ופרמטרים לפי הצורך על ידי שרת היעד. מילות מפתח כמו %NAME% (שם מכשיר HALO) או %EID% (מזהה אירוע) ניתנות להכנסת לפי הצורך והן יוחלפו בנתונים המתאימים כאשר ההודעה תישלח. רשימה של מילות מפתח נפוצות מוצגת לעיון מהיר.
ה 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%”}

Examples for Heartbeat עשוי להוסיף %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-Basic-Software-FIG-6

אם שרת היעד מעדיף HTTP PUT או POST במקום בקשות GET, אתה יכול לשים קידומת של URL עם PUT: או POST:. באופן עצמאי, אתה יכול להוסיף מטען JSON שהוא פופולרי בקרב שרתים רבים על ידי הוספת מילת המפתח [JSONBODY] ואחריה אובייקט בפורמט JSON. לְשֶׁעָבַרampעל:
PUT:https://server.com/event[JSONBODY]{"location":"%NAME%","event":"%EID%"}
ה URL תומך בכתובת IP טיפוסית (ו-IPv6) ואפשרויות יציאה וסיסמת משתמש, או שאתה יכול להשתמש בשדות המשתמש והסיסמה במידת הצורך להיות שרת היעד עבור שיטות אימות כמו Basic או Digest:
https://username:password@123.321.123.321:9876/event

מצב TCP

מחרוזות הודעות חיצוניות ו- Heartbeat מיועדות רק לנתונים מכיוון שהשדות כתובת ויציאה מציינים את היעד. הכתובת תומכת בשמות, IPv4 ו- IPv6.
ניתן לעצב את המחרוזת כמו חלקי הנתונים של הודעות HTTP שתוארו לעיל, או כנדרש על ידי שרת היעד.
Exampהודעות עבור הודעות חיצוניות יכללו %EID% כדי לציין את האירוע שהפעיל:
location=%NAME%,event=%EID%
{"location":":%NAME%","event":"%EID%"}
Examples for Heartbeat עשוי להוסיף %ACTIVE% (אירועים המופעלים כעת) או ערך חיישן:
location=%NAME%&Triggered=%ACTIVE%
{"location":":%NAME%","NH3":%SENSOR:NH3%}

תוכנה-s-HALO-Smart-Sensor-API-Basic-Software-FIG-7

תיבות סימון בעמודות "ערכת אינטגרציה" ו"איפוס אינטגרציה" קובעות אילו אירועים מפעילים שליחה. מידע נוסף על ההגדרה של אירועים ופעולות זמין במדריך למנהלי HALO.

מסירת הודעות אירוע JSON
חלק מהמפתחים מעדיפים לקבל נתוני אירוע המעוצבים כ-JSON עם תווית עצמית בתעשייה במקום טקסט ASCII רגיל מכיוון שהראשון מנותח בצורה מהימנה יותר וקלה יותר. על ה-HALO web בדף הכרטיסייה "הודעות", אתה יכול לספק הודעות JSON בהגדרות "הגדר מחרוזת" ו"איפוס מחרוזת" בהגדרות "הגדר מחרוזת" וב"דופק" "הודעה".

Examples:
מחרוזת הגדרת הגדרות "הודעות חיצוניות":

{ "device":"%NAME%", "event":"%EID%", "alarm":"yes" }
פעולה זו תשלח הודעת TCP או UDP JSON יחידה לשרת שצוין המדווחת על שם המכשיר הידידותי, שם האירוע וכי הוא רק התחיל.

מחרוזת איפוס הגדרות "הודעות חיצוניות":
{ "device":"%NAME%", "event":"%EID%", "alarm":"no" }
פעולה זו תשלח הודעת TCP או UDP JSON יחידה לשרת שצוין המדווחת על שם המכשיר הידידותי, שם האירוע וכי המצב נעצר כעת.

הודעת "פעימת לב":
{ "device":"%NAME%", "alive":"%DATE% %TIME%" }
זה ישלח מעת לעת הודעת TCP או UDP JSON לשרת שצוין המדווחת שה-HALO חי בזמן המצוין.

מסמכים / משאבים

תוכנה של HALO Smart Sensor API תוכנה בסיסית [pdfמדריך למשתמש
תוכנה בסיסית של HALO Smart Sensor API

הפניות

השאר תגובה

כתובת האימייל שלך לא תפורסם. שדות חובה מסומנים *