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

התכונה של התקן קלט USB של צד שלישי מתוארת במאמר זה .

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

1

היכנס לחדר או למכשיר השולחן ב-SSH. אתה זקוק למשתמש מנהל מקומי .

2

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

 xConfiguration ציוד היקפי InputDevice מצב: On * * לסיים   אישור  

 

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

 xConfiguration ציוד היקפי InputDevice מצב    * c xConfiguration היקפי InputDevice מצב: על * * לסיים אישור  
3

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

 xFeedback הרשמה/event/userinterface/inputdevice    * * סיים אישור  

 

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

 xFeedback רשימת   /event/userinterface/inputdevice * * סיים אישור  
4

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

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

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

  * e UserInterface InputDevice מקש פעולה מפתח: KEY_ENTER * e UserInterface InputDevice קוד פעולה מפתח: 28 * e UserInterface InputDevice מפתח פעולה סוג: לחץ * * לסיים * e UserInterface מפתח פעולה מפתח: KEY_ENTER * e InputDevice UserInterface מפתח פעולה קוד: 28 * e InputDevice UserInterface מפתח פעולה Type: שוחרר * * לסיום  
5

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

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

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

 const xapi = דרוש (' xapi '); הפונקציה com (command, ארגומנטים = ' ') {xapi. command (פקודה, ארגומנטים); log (command + ' ' + JSON. stringify (ארגומנטים));} יומן פונקציות (אירוע) {console. log (אירוע);} פונקציה מודיעה (הודעה) {xapi. command (' הודעה UserInterface הצגה ', {טקסט: הודעה, משך: 3});} פונקציה cameraControl (מנוע, כיוון, cameraId = ' 1 ') {com (' שיפוע מצלמה ', {' cameraId ': cameraId, [מנוע]: כיוון});} הפונקציה init () {הניחו לstandbyState; הפעל את המצב (' המתנה '). > מדינה = = = ' Off '? שקר: נכון; }); xapi. מצב (' המתנה ', מצב = > {standbyState = state. מדינה = = = ' Off '? שקר: נכון; }); xapi. on (' UserInterface InputDevice מפתח פעולה ', לחץ על = > {if (לחץ). Type = = "לחוץ") {switch (לחץ). Key) {במקרה "KEY_LEFT": cameraControl (' פאן ', ' שמאל '); לשבור; מקרה "KEY_RIGHT": cameraControl (פאן ', ' ימין '); לשבור; מקרה "KEY_UP": cameraControl (' הטיה ', ' למעלה '); לשבור; המקרה "KEY_DOWN": cameraControl (' הטיה ', ' למטה '); הפסקה; ברירת אחר אם (לחץ. Type = = "שוחרר") {switch (לחץ). מפתח) {המקרה "KEY_LEFT": cameraControl (' Pan ', ' Stop '); לשבור; מקרה "KEY_RIGHT": cameraControl (Pan, ' Stop '); לשבור; מקרה "KEY_UP": cameraControl (' הטיה ', ' עצור '); לשבור; מקרה "KEY_DOWN": cameraControl (' הטיה ', ' Stop '); לשבור; מקרה ' KEY_VOLUMEUP ': com (' הגדלת שמע קול '); לשבור; מקרה ' KEY_VOLUMEDOWN ': com (' קול שמע לירידה '); לשבור; KEY_SLEEP ' בטל הפעלת המתנה ': ' הפעל המתנה '); שבור ברירת מחדל: מעבר; } } }); } init ();