שליחת בקשות HTTP מהתקני Board, Desk וסדרות Room
list-menuמשוב?
תכונה זו מאפשרת למכשירי Board, Desk או Room Series ליזום ולקבל בקשות HTTP (S) באמצעות שרת HTTP (S). התקנים אלה תומכים בשיטות כגון Post, Put, Patch, Get ו- Delete, המאפשרים אינטראקציות שונות עם השרת.

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

אמצעי אבטחה:

  • כברירת מחדל, תכונת בקשת לקוח HTTP (S) מושבתת. מנהל מערכת חייב לאפשר את התכונה במפורש על-ידי הגדרת HttpClient > מצב למצב מופ על (מצב XConfiguration HttpClient: מופעל).

  • מנהל המערכת יכול למנוע את השימוש ב- HTTP על ידי הגדרת HttpClient > AllowHTTP לשקר ( XConfiguration Http Client Al low HTTP: שקר).

  • מנהל המערכת יכול לציין רשימה של שרתי HTTP (S) שההתקן רשאי לשלוח אליהם נתונים. (ראה את הפקודות XCommand HttpClient לאפשר שם מארח .)

  • מספר בקשות HTTP (S) במקביל מוגבל.

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

רשימת שרתי HTTP (S) מותרים

מנהל המערכת יכול להשתמש בפקודות אלה כדי להגדיר ולתחזק רשימה של עד עשרה שרתי HTTP (S) מותרים (hosts):

  • XCommand HttpClient אפשר להוסיף ביטוי של שם מארח: <Regular expression that matches the host name or IP address of the HTTP (S) server>

  • XCommand HttpClient אפשר שם מארח נקה

  • XCommand HttpClient הרשה רשימת שמות מארח

  • XCommand HttpClient אפשר שם מארח להסיר מזהה: <id of an entry in the list>

אם הרשימה מכילה ערכי שרת, באפשרותך לשלוח בקשות HTTP (S) לשרתים אלה בלבד. עם זאת, אם הרשימה ריקה, באפשרותך לשלוח בקשות לכל שרת HTTP (S).

הבדיקה מול רשימת השרתים המותרים מתבצעת הן בעת שימוש בהעברה לא בטוחה (HTTP) והן בהעברת נתונים מאובטחת (HTTPS).

HTTPS ללא אימות אישור

בעת שליחת בקשות באמצעות HTTPS, המכשיר בודק את האישור של שרת HTTPS כברירת מחדל. אם אישור שרת HTTPS לא נמצא תקף, מתקבלת הודעת שגיאה. המכשיר אינו שולח נתונים לשרת זה.

אנו ממליצים להשתמש ב- HTTPS עם אימות אישור. אם אימות האישורים אינו אפשרי, מנהל המערכת יכול להגדיר את HttpClient > AllowInsecureHTTPS למצב מופעל ( XConfiguration HttpClient AllowInsecureHTTPS: מופעל). זה מאפשר שימוש ב- HTTPS מבלי לאמת את אישור השרת.

שליחת בקשות HTTP (S)

לאחר הפעלת תכונת בקשת לקוח HTTP (S), באפשרותך להשתמש בפקודות הבאות כדי לשלוח בקשות לשרת HTTP (S). <method>הוא פר סם , שים , תיקון , קבל או מחק .

  • XCommand HttpClient [הרשםHTTPS:] [כותרת:] [התגובה:] [התשובותגוף:] [פסק זמן:] כתובת אתר: <Method><True/False> <Header text><Maximum response size><None/PlainText/Base64> <Timeout period><URL to send the request to>

הוספת שדות כותרת היא אופציונלית, וניתן להוסיף עד 20 שדות.

לפר מטר AllowInsecureHTTPS יש השפעה רק אם מנהל המערכת איפשר את השימוש ב- HTTPS מבלי לאמת את אישור השרת. אם כן, באפשרותך לשלוח נתונים לשרת מבלי לאמת את אישור השרת אם הפרמטר מוגדר כ- True . אם תשאיר את הפרמטר בחוץ, או תגדיר אותו ל- Fal se , הנתונים לא יישלחו אם אימות האישור נכשל.

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

השתמש בפר מטר ResultBody כדי להחליט כיצד לעצב את גוף תגובת HTTP מהשרת בתוצאת הפקודה. יש לך שלוש אפשרויות:

  • אין : אל תכלול את גוף תגובת HTTP בתוצאת הפקודה.

  • Base64 : Base64 מקודד את הגוף לפני הכללתו בתוצאה.

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

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

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

דוגמאות

גוף ההודעה הוא JSON בשתי הדוגמאות הללו. זה יכול להיות כל פורמט, תלוי בפורמט הצפוי של השירות שמקבל את ההודעות.

דוגמה 1: בקרת התקני IoT באמצעות HTTP Post

להלן פונקציית מאקרו שמדליקה אור המחובר לגשר Philips Hue:


     function hue_command(data) { var url = 'http://192.0.2.10/api/'ZXlU4tUtQ23Pjbdyl-kiyCjTs0i5ANDEu1ypJq0-/lights/1/state'; var headers = 'Content-Type: application/json'; var command = '{"on":true}'; xapi.command('HttpClient Put', { 'Url': url, 'Header': headers }, command); } 
   

אתה יכול לעשות את אותו הדבר בשורת הפקודה באמצעות ה- API:


     xcommand HttpClient Put Header: "Content-Type: application/json" URL: "http://192.0.2.10/api/'ZXlU4tUtQ23Pjbdyl-kiyCjTs0i5ANDEu1ypJq0-/lights/1/state" {"on":true} . 
   

דוגמה 2: פרסום נתונים לכלי ניטור באמצעות HTTP Post


     xcommand HttpClient Post Header: "Content-Type: application/json" URL: "https://mymonitoringserver.com/service/devicemonitoring" {"Message":"A user reported an issue with this system","systemName":"BoardRoom 4th floor","softwareVersion":"ce9.6.0","softwareReleaseDate":"2018-12-13","videoMonitors":"Dual"} . 
   

מידע נוסף

מצא פרטים נוספים אודות אופן השימוש בבקשות לקוח HTTP במד ריך ההת אמה האישית . בחר את הגרסה האחרונה.

תמיכת סיסקו (TAC) אינה תומכת באגים בקוד של צד שלישי, כולל פקודות מאקרו. אנא בדוק https://roomos.cisco.com אם אתה זקוק לעזרה עם פקודות מאקרו וקוד צד שלישי.

האם המאמר הועיל לך?
האם המאמר הועיל לך?