Această caracteristică este menită să completeze funcționalitățile controlerului tactil sau ale interfeței tactile cu utilizatorul. Nu este menită să le înlocuiască .

Exemple de aplicații:

  • În sălile de clasă și în timpul prelegerilor, se poate utiliza o mică telecomandă pentru a reactiva un dispozitiv din modul standby. De asemenea, poate fi convenabil să utilizați o telecomandă pentru a selecta sursa de intrare pe care doriți să o prezentați.

  • Controlarea vizualizării camerei (panoramare, înclinare și zoom) în situațiile în care nu aveți permisiunea de a utiliza controlerul tactil. De exemplu, în sălile de operație dintr-un spital.

Prezentare generală funcțională

Când un buton este apăsat pe dispozitivul de intrare USB, acesta declanșează o acțiune în cadrul API-ului dispozitivului Cisco. Macrocomenzile sau dispozitivele de control extern de la terți pot fi configurate pentru a detecta aceste acțiuni și a reacționa în consecință. Această funcționalitate este similară modului în care se comportă butoanele de control din sală. În plus, este fezabil să monitorizați aceste acțiuni prin webhookuri sau direct în cadrul unei sesiuni SSH.

Nu este furnizată o bibliotecă preexistentă de acțiuni din care să alegeți. Trebuie să definiți și să stabiliți acțiunile specifice care ar trebui să aibă loc ca răspuns la evenimente. De exemplu:

  • Creșteți volumul dispozitivului Cisco când este apăsată tasta Creștere volum.

  • Puneți dispozitivul Cisco în modul standby atunci când tasta Sleep (Repaus) este apăsată.

Configurații, evenimente și stare

Configurațiile și starea care sunt menționate în acest articol sunt disponibile atât din interfața web locală a dispozitivului, cât și din API-uri. Citiți articolul Configurații dispozitiv pentru informații despre cum să accesați interfața web și să utilizați API-ul.

Când interfața web a dispozitivului este deschisă, faceți clic pe Setări . În secțiunea Configurații, schimbați modul Periferice > DispozitivIntrare pe modul Activat . Suportul pentru dispozitivele de intrare USB de la terți este dezactivat în mod implicit.

Apăsarea și eliberarea unui buton generează un eveniment apăsat și lansat :

 *e UserInterface InputDevice Key Action Key:  *e UserInterface InputDevice Key Action Code:  *e UserInterface InputDevice Key Action Type: Apăsați ** sfârșit *e UserInterface InputDevice Key Action Key:  *e UserInterface InputDevice Key Action Code:  *e UserInterface InputDevice Key Action Type: Lansat ** încheiat 

Pentru a asculta evenimentele, trebuie să înregistrați feedback de la evenimentele InputDevice :

 xFeedback Înregistrare/eveniment/UserInterface/InputDevice ** sfârșit 

Când dispozitivul Cisco detectează perifericul terț, acesta va fi listat în Stare și în Periferice > DispozitivConectat. Este posibil ca dispozitivul terț să fie raportat ca mai multe dispozitive.

Informații suplimentare

Găsiți mai multe informații despre utilizarea unui dispozitiv de intrare terță parte în Ghidul de particularizare . Alegeți cea mai recentă versiune.

Asistența Cisco (TAC) nu acceptă depanarea codului terță parte, inclusiv a macrocomenzilor. Verificați Cisco RoomOS pentru dispozitive de colaborare dacă aveți nevoie de ajutor cu macrocomenzile și codurile terțe. Consultați această pagină pentru mai multe exemple de macrocomenzi și extensii.

Exemplu

În acest exemplu, dorim să vă arătăm cum să utilizați tastele unui dispozitiv de intrare USB terț (în acest caz, o telecomandă) pentru a controla anumite funcții pe un dispozitiv Cisco.

Vă arătăm cum să utilizați butoanele de pe o telecomandă Bluetooth (conectată prin intermediul unui dongle USB) pentru a gestiona funcții precum standby, reglarea volumului și controlul unui dispozitiv cameră Cisco. Puteți dezvolta o macrocomandă care ascultă evenimentele relevante și execută acțiunile corespunzătoare prin intermediul API-ului dispozitivului Cisco.

În exemplul următor, trebuie să introduceți textul care este scris cu font normal. Textul cu caractere cursive este răspunsul primit de la dispozitivul Cisco.

1

Conectați-vă la dispozitivul Cisco prin SSH. Aveți nevoie de un utilizator de administrator local .

2

Configurați dispozitivul pentru a permite utilizarea unei telecomenzi USB de la terți.

 Mod dispozitiv de intrare periferice xConfiguration: La ** încheiere OK  

 

Puteți verifica dacă configurația este activată sau dezactivată utilizând această comandă:

 Modul dispozitiv de intrare periferice configurație  *c modul dispozitiv de intrare periferice configurație: La ** încheiere OK  
3

Înregistrați-vă pentru feedback, astfel încât să fim anunțați atunci când butoanele de control de la distanță sunt apăsate și eliberate.

 xFeedback Înregistrare/eveniment/interfață utilizator/inputdevice  ** încheiere OK  

 

Puteți verifica ce feedback-uri este înregistrat dispozitivul pentru utilizarea acestei comenzi:

 xListă de feedback /eveniment/interfață utilizator/inputdevice ** încheiere OK  
4

Apăsați și eliberați un buton de pe telecomandă pentru a verifica dacă înregistrarea feedback-ului funcționează.

Această acțiune generează două evenimente: Apăsat și Eliberat. Dacă apăsați și țineți apăsat un buton, vedeți evenimentul apăsat până când eliberați butonul. Apoi este generat evenimentul Lansat .

Aceste evenimente sunt emise la apăsarea și eliberarea tastei Enter:

  *e Cheie de acţiune UserInterface InputDevice: CHEIE_INTRODUCEȚI *e Cod de acțiune cheie UserInterface InputDevice: 28 *e Tip de acțiune cheie UserInterface InputDevice: Apăsați ** sfârșit *e UserInterface InputDevice Key Action Key (Cheie de acțiune UserInterface InputDevice): CHEIE_INTRODUCEȚI *e Cod de acțiune cheie UserInterface InputDevice: 28 *e Tip de acțiune cheie UserInterface InputDevice: Lansat ** încheiat  
5

Scrieți o macrocomandă care ascultă evenimentele relevante InputDevice și efectuează acțiunile asociate utilizând API-ul dispozitivului.

  • Aduceți la viață butoanele de așteptare, de creștere a volumului și de reducere a volumului. Când macrocomanda vede un eveniment care conține volumeup cheie_, volumedown cheie_sau cheie_sleep, se execută comenzile asociate.

  • Creați o funcție de control a camerei pentru tastele săgeată. Vrem să continuăm să mișcăm camera atât timp cât butonul este apăsat. Când butonul este lansat, mișcarea camerei se oprește. Când macrocomanda vede un eveniment care conține TASTA_stânga, TASTA_dreapta, TASTA sus_sau TASTA_în jos, se execută comenzile asociate.

 const xapi = require('xapi'); function com(command, args='') { xapi.command(command, args); log(command + ' ' + JSON.stringify(args)); } function log(event) { console.log(event); } function notify(message) { xapi.command('UserInterface Message TextLine Display', { text: mesaj, durată: 3 }); } funcție cameraControl (motor, direcție, ID cameră='1') { com('Ramp cameră', { 'CameraId': ID cameră, [motor]: direcție }); } funcție init() { let standbyState; xapi.status.get('Standby').then((state) => {standbyState = state.State === 'Oprit' ? false : true; }); xapi.status.on ('În așteptare', state => { standbyState = state.State === 'Oprit' ? false : true; }); xapi.event.on('UserInterface InputDevice Key Action', press => { if (press.Type == "Apăsat") { switch (press.Key) { case "KEY_LEFT": control cameră ('Pan', 'Stânga'); pauză; caz „TASTĂ_DREAPTA”: control cameră ('Pan', 'Dreapta'); întrerupere; caz „CHEIE_SUS”: control cameră ('Înclinare', 'Sus'); întrerupere; caz „CHEIE_JOS”: control cameră ('Înclinare', 'Jos'); întrerupere; implicit: break; } } else dacă (press.Type == „Eliberat”) { switch (press.Key) { case „KEY_LEFT”: control cameră ('Pan', 'Stop'); pauză; caz „CHEIE_DREAPTA”: control cameră('Pan', 'Stop'); pauză; caz „CHEIE_SUS”: control cameră ('Înclinare', 'Oprire'); întrerupere; caz „CHEIE_JOS”: control cameră ('Înclinare', 'Oprire'); întrerupere; caz 'CHEIE_VOLUME': com („Creștere volum audio”); întrerupere; caz „REDUCERE VOLUM_CHEIE”: com(„Scădere volum audio”); pauză; caz „TASTĂ_REPAUS”: com(standbyState? „Dezactivare standby”: „Activare în așteptare”); întrerupere; implicit: pauză; } } }); } init();