דוגמה
list-menuמשוב?

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

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

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

1

היכנס למכשיר Cisco ב- SSH. אתה זקוק למשתמש מנהל מערכת מקומי .

2

הגדר את ההתקן כך שיאפשר שימוש בשלט רחוק USB של צד שלישי.

 xConfiguration ציוד היקפי Inputמצב התקן: מופעל ** סוף אישור  

 

באפשרותך לבדוק אם התצורה מופעלת או כבויה באמצעות פקודה זו:

 xConfiguration ציוד היקפי Inputמצב   מכשיר*c xConfiguration ציוד היקפי Inputמצב התקן: מופעל ** סוף אישור  
3

הירשם לקבלת משוב, כך שנקבל הודעה כאשר לוחצים על לחצני השלט הרחוק ומשחררים אותם.

 xFeedback Register /event/userinterface/inputdevice  ** end OK  

 

באפשרותך לבדוק לאילו פידבקים המכשיר רשום באמצעות פקודה זו:

 xFeedback list /event/userinterface/inputdevice ** end OK  
4

לחץ על לחצן בשלט הרחוק ושחרר אותו כדי לבדוק שרישום המשוב פועל.

פעולה זו יוצרת שני אירועים: לחוץ ושוחרר . אם תלחץ לחיצה ממושכת על לחצן, תראה את האירוע לחוץ עד שתשחרר את הלחצן. לאחר מכן נוצר האירוע Release .

אירועים אלה מונפקים בעת לחיצה ושחרור של מקש Enter:

  *e UserInterface Inputמקש פעולת מקש התקן: KEY_ENTER *e UserInterface InputDevice Key קוד פעולה: 28 *e UserInterface InputDevice Key סוג פעולה: לחוץ ** end *e UserInterface Inputמקש פעולת מקש התקן: KEY_ENTER *e UserInterface InputDevice Key קוד פעולה: 28 *e UserInterface InputDevice Key Action Type: שוחרר ** סוף  
5

כתוב מאקרו שמאזין לאירועי InputDevice הרלוונטיים ומבצע את הפעולות המשויכות באמצעות API של המכשיר.

  • עורר לחיים את לחצני ההמתנה, הגברת עוצמת הקול והנמכת עוצמת הקול. כאשר המאקרו רואה אירוע המכיל KEY_VOLUMEUP, KEY_VOLUMEDOWN או KEY_SLEEP, הוא מבצע את הפקודות הקשורות.

  • צור פונקציית בקרת מצלמה עבור מקשי החצים. אנחנו רוצים להמשיך להזיז את המצלמה כל עוד לוחצים על הכפתור. כאשר הלחצן משתחרר, תנועת המצלמה נעצרת. כאשר המאקרו רואה אירוע המכיל KEY_LEFT, KEY_RIGHT, KEY_UP או KEY_DOWN, הוא מבצע את הפקודות הקשורות.

 const xapi = דרישה('xapi'); הפונקציה com(command, args='') { xapi.command(command, args); log(command + ' + JSON.stringify(args)); } הפונקציה log(event) { console.log(event); } function notify(message) { xapi.command('UserInterface Message TextLine Display', { טקסט: הודעה, משך: 3 }); } פונקציה cameraControl(מנוע, כיוון, cameraId='1') { com('מצלמה רמפה', { 'CameraId': cameraId, [מנוע]: כיוון }); } פונקציה init() { let standbyState; xapi.status.get('Standby').then(((state) => {standbyState = state. מדינה === 'כבוי' ? לא נכון: נכון; }); xapi.status.on('Standby', state => { standbyState = state. מדינה === 'כבוי' ? לא נכון: נכון; }); xapi.event.on('UserInterface InputDevice Key Action', הקש => { if (press. הקלד == "Pressed") { switch (press. מפתח) { מקרה "KEY_LEFT": cameraControl ('פאן', 'שמאל'); הפסקה; מקרה "KEY_RIGHT": cameraControl ('פאן', 'ימין'); הפסקה; מקרה "KEY_UP": cameraControl ('הטיה', 'למעלה'); הפסקה; מקרה "KEY_DOWN": cameraControl ('הטיה', 'מטה'); הפסקה; ברירת מחדל: הפסקה; } } אחרת אם (לחץ. הקלד == "שוחרר") { בורר (לחץ. מפתח) { מקרה "KEY_LEFT": cameraControl ('פאן', 'עצור'); הפסקה; מקרה "KEY_RIGHT": cameraControl ('פאן', 'עצור'); הפסקה; מקרה "KEY_UP": cameraControl ('הטיה', 'עצור'); הפסקה; מקרה "KEY_DOWN": cameraControl ('הטיה', 'עצור'); הפסקה; מקרה 'KEY_VOLUMEUP': com('הגברת עוצמת השמע '); הפסקה; מקרה 'KEY_VOLUMEDOWN': com('הפחתת עוצמת שמע '); הפסקה; מקרה 'KEY_SLEEP': com(מצב המתנה? 'השבתת המתנה': 'הפעלת המתנה'); לשבור; ברירת מחדל: הפסקה; } } }); } init(); 
האם המאמר הועיל לך?
האם המאמר הועיל לך?