نوضح لك كيفية استخدام الأزرار الموجودة على جهاز التحكم عن بعد Bluetooth (المتصل من خلال دونجل USB) لإدارة وظائف مثل الاستعداد وضبط مستوى الصوت والتحكم في جهاز كاميرا Cisco. يمكنك تطوير ماكرو يستمع إلى الأحداث ذات الصلة وينفذ الإجراءات المقابلة من خلال API جهاز Cisco.

يتم وصف ميزة جهاز إدخال USB من جهة خارجية في هذه المقالة.

في المثال التالي، يجب إدخال النص المكتوب بالخط العادي. النص المكتوب بخط مائل هو الاستجابة التي تم تلقيها من جهاز Cisco.

1

قم بتسجيل الدخول إلى جهاز Cisco على SSH. تحتاج إلى مستخدم مسؤول محلي .

2

قم بتكوين الجهاز للسماح باستخدام وحدة تحكم عن بعد USB تابعة لجهة خارجية.

 xتكوين الأجهزة الطرفية الإدخالوضع الجهاز: تشغيل  ** نهاية موافق  

 

يمكنك التحقق مما إذا كان التكوين قيد التشغيل أو إيقاف باستخدام هذا الأمر:

 xتكوين الأجهزة الطرفية الإدخالوضع   الجهاز*c xإدخال الأجهزة الطرفية للتكوينوضع الجهاز: تشغيل ** نهاية موافق  
3

سجل للحصول على تعليقات ، حتى يتم إخطارنا عند الضغط على أزرار التحكم عن بعد وتحريرها.

 xFeedback التسجيل / الحدث / واجهة المستخدم / جهاز   الإدخال ** النهاية موافق  

 

يمكنك التحقق من التعليقات التي تم تسجيل الجهاز من أجلها باستخدام هذا الأمر:

 xقائمة ردود الفعل  / الحدث / واجهة المستخدم / جهاز الإدخال ** نهاية موافق  
4

اضغط على زر في جهاز التحكم عن بعد وحرره للتحقق من عمل تسجيل الملاحظات.

ينتج عن هذا الإجراء حدثان: مضغوط ومحرر . إذا ضغطت مع الاستمرار على زر، فسترى الحدث "مضغوط" حتى تحرر الزر. ثم يتم إنشاء الحدث الذي تم إصداره .

يتم إصدار هذه الأحداث عند الضغط على المفتاح Enter وتحريره:

  *ه إدخال واجهة المستخدممفتاح عمل الجهاز: KEY_ENTER *ه إدخال واجهة المستخدمرمز إجراء مفتاح الجهاز: 28 * ه إدخال واجهة المستخدمنوع إجراء مفتاح الجهاز: مضغوط ** نهاية *ه إدخال واجهة المستخدممفتاح إجراء الجهاز: KEY_ENTER * ه إدخال واجهة المستخدم رمز إجراء مفتاح الجهاز: 28 * ه إدخال واجهة المستخدم نوع إجراء مفتاح الجهاز: صدر ** نهاية  
5

اكتب ماكرو يستمع إلى أحداث InputDevice ذات الصلة ، وينفذ الإجراءات المقترنة باستخدام API الجهاز.

  • اجعل أزرار الاستعداد ورفع الصوت وخفض الصوت تنبض بالحياة. عندما يرى الماكرو حدثا يحتوي على KEY_VOLUMEUP أو KEY_VOLUMEDOWN أو KEY_SLEEP، فإنه يقوم بتنفيذ الأوامر ذات الصلة.

  • قم بإنشاء وظيفة التحكم في الكاميرا لمفاتيح الأسهم. نريد الاستمرار في تحريك الكاميرا طالما تم الضغط على الزر. عند تحرير الزر، تتوقف حركة الكاميرا. عندما يرى الماكرو حدثا يحتوي على KEY_LEFT أو KEY_RIGHT أو KEY_UP أو KEY_DOWN، فإنه يقوم بتنفيذ الأوامر ذات الصلة.

 const xapi = require('xapi'); الدالة com(command, args='') { xapi.command(command, args); log(command + ' ' + JSON.stringify(args)); } سجل الدالة(حدث) { console.log(event); } وظيفة الإخطار (الرسالة) { xapi.command('UserInterface message TextLine Display', { النص: رسالة, المدة: 3 }); } وظيفة cameraControl(المحرك, الاتجاه, cameraId='1') { com('Camera Ramp', { '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_LEFT": cameraControl ('Pan', 'Left'); break; case "KEY_RIGHT": cameraControl(', 'Right'); break; case "KEY_UP": cameraControl ("Tilt', 'Up'); break; case "KEY_DOWN": cameraControl('Tilt', 'Down'); break; default: break; } } آخر إذا (اضغط على. اكتب == "تم الإصدار") { التبديل (اضغط على. مفتاح) { الحالة "KEY_LEFT": cameraControl ("عموم" ، "إيقاف") ؛ استراحة ؛ حالة "KEY_RIGHT": cameraControl ("عموم" ، "إيقاف") ؛ استراحة ؛ حالة "KEY_UP": cameraControl ("إمالة" ، "إيقاف") ؛ استراحة ؛ حالة "KEY_DOWN": cameraControl ("إمالة" ، "إيقاف") ؛ استراحة ؛ حالة "KEY_VOLUMEUP": com ("زيادة حجم الصوت") ؛ استراحة ؛ الحالة "KEY_VOLUMEDOWN": com ("انخفاض حجم الصوت") ؛ استراحة. الحالة 'KEY_SLEEP': com (حالة الاستعداد؟ "إلغاء تنشيط الاستعداد": "تنشيط الاستعداد") ؛ كسر; الافتراضي: استراحة. } } }); } init();