Ta funkcija je namenjena dopolnjevanju funkcij krmilnika na dotik ali uporabniškega vmesnika na dotik. Njen namen ni jih nadomestiti .

Primeri uporabe:

  • V učilnicah in med predavanji lahko z majhnim daljinskim upravljalnikom prebudite napravo iz stanja pripravljenosti. z daljinskim upravljalnikom lahko izberete tudi vhodni vir, ki ga želite predstaviti.

  • Upravljanje pogleda kamere (premikanje, nagibanje in povečava) v primerih, ko ne smete uporabljati krmilnika na dotik. Na primer v operacijskih sobah v bolnišnici.

Funkcionalni pregled

Ko pritisnete gumb na vhodni napravi USB, se v vmesniku API naprave Cisco sproži dejanje. Za zaznavanje teh dejanj in ustrezno odzivanje lahko nastavite makroje ali zunanje krmilne naprave tretjih oseb. Ta funkcionalnost je podobna načinu delovanja gumbov In-Room Control. Poleg tega je mogoče ta dejanja spremljati prek spletnih kljuk ali neposredno v seji SSH.

Vnaprej obstoječa knjižnica akcij, med katerimi lahko izbirate, ni na voljo. Opredeliti in določiti morate posebne ukrepe, ki se morajo izvajati kot odziv na dogodke. Na primer:

  • Povečajte glasnost Ciscove naprave, ko pritisnete tipko za povečanje glasnosti.

  • Ko pritisnete tipko Sleep, preklopite Ciscovo napravo v stanje pripravljenosti.

Konfiguracije, dogodki in stanje

Konfiguracije in stanje, ki so omenjeni v tem članku, so na voljo tako v lokalnem spletnem vmesniku naprave kot v vmesnikih API. Za informacije o dostopu do spletnega vmesnika in uporabi vmesnika API preberite članek Device configurations (Konfiguracije naprave) .

Ko se odpre spletni vmesnik naprave, kliknite Settings . V razdelku Configurations spremenite Peripherals > InputDevice Mode v On. Podpora za vhodne naprave USB drugih proizvajalcev je privzeto onemogočena.

S pritiskom in sprostitvijo gumba se ustvarita dogodka Pressed in Released :

 *e Uporabniški vmesnik Ključ vhodne naprave Ključ delovanja:  Koda ukrepa: *e UserInterface InputDevice Key  *e UserInterface InputDevice Key Vrsta ukrepa: *e UserInterface InputDevice Key Pritisnjena ** end *e Uporabniško vmesnik InputDevice Key Ključ Akcija Ključ:  Koda ukrepa: *e UserInterface InputDevice Key:  *e UserInterface InputDevice Key Vrsta akcije: *e UserInterface InputDevice Key Vrsta akcije: Sproščeno ** konec 

Če želite poslušati dogodke, morate registrirati povratne informacije iz dogodkov InputDevice :

 xFeedback Register /event/UserInterface/InputDevice ** end 

Ko naprava Cisco zazna periferno napravo tretje osebe, bo ta navedena pod Status in v Peripherals > ConnectedDevice . O napravi tretje osebe se lahko poroča kot o več napravah.

Dodatne informacije

Več informacij o uporabi vhodne naprave tretje osebe najdete v priročniku Prilagajanje . Izberite najnovejšo različico.

Ciscova podpora (TAC) ne podpira razhroščevanja kode tretjih oseb, vključno z makri. Če potrebujete pomoč pri uporabi makrov in kode tretjih oseb, si oglejte Cisco RoomOS for Collaboration Devices . Več primerov makrov in razširitev najdete na spletni strani .

Primer

V tem primeru vam želimo pokazati, kako uporabiti tipke vhodne naprave USB tretje osebe (v tem primeru daljinskega upravljalnika) za nadzor določenih funkcij v napravi Cisco.

Pokazali vam bomo, kako lahko z gumbi na daljinskem upravljalniku Bluetooth (ki je povezan s ključem USB) upravljate funkcije, kot so stanje pripravljenosti, nastavitev glasnosti in upravljanje naprave s kamero Cisco. Pripravite lahko makro, ki posluša ustrezne dogodke in izvaja ustrezne akcije prek vmesnika API naprave Cisco.

V naslednjem primeru morate vnesti besedilo, ki je napisano v običajni pisavi. Besedilo v poševnem tisku je odgovor, ki ga je prejela naprava Cisco.

1

Prijavite se v Ciscovo napravo prek SSH. Potrebujete lokalnega uporabnika admin .

2

Napravo konfigurirajte tako, da omogoča uporabo daljinskega upravljalnika USB tretje osebe.

 xKonfiguracija Periferne naprave InputDevice Mode: Na spletni strani ** konec OK  

 

S tem ukazom lahko preverite, ali je konfiguracija vklopljena ali izklopljena:

 xConfiguration Peripherals InputDevice Mode  *c xConfiguration Peripherals InputDevice Mode: Na ** koncu OK  
3

Prijavite se za povratne informacije, da bomo obveščeni o pritisku in sprostitvi gumbov daljinskega upravljalnika.

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

 

S tem ukazom lahko preverite, za katere povratne informacije je naprava registrirana:

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

Pritisnite in sprostite gumb na daljinskem upravljalniku, da preverite, ali registracija povratnih informacij deluje.

To dejanje ustvari dva dogodka: Pritisnjena in Sproščena. Če pritisnete in držite gumb, se prikaže dogodek Pressed , dokler gumba ne spustite. Nato se ustvari dogodek Released .

Ti dogodki se sprožijo ob pritisku in sprostitvi tipke Enter:

  *e Uporabniški vmesnik Ključ vhodne naprave Ključ delovanja: KEY_ENTER *e Uporabniški vmesnik InputDevice Koda akcije tipke: 28 *e UserInterface InputDevice Key Vrsta ukrepa: Pritisnjena ** end *e Uporabniško vmesnik InputDevice Key Ključ Akcija Ključ: KEY_ENTER *e Uporabniški vmesnik InputDevice Koda akcije tipke: 28 *e UserInterface InputDevice Key Vrsta ukrepa: Sproščeno ** konec  
5

Napišite makro, ki posluša ustrezne dogodke InputDevice in izvede povezane akcije z uporabo API naprave.

  • Oživite gumbe za pripravljenost, povečanje in zmanjšanje glasnosti. Ko makro vidi dogodek, ki vsebuje KLAVŠAR_VOLUMEUP, KLAVŠAR_VOLUMEDOWN ali KLAVŠAR_SLEEP, izvede povezane ukaze.

  • Ustvarite funkcijo za nadzor kamere za smerne tipke. Kamero želimo premikati, dokler je gumb pritisnjen. Ko gumb spustite, se premikanje fotoaparata ustavi. Ko makro vidi dogodek, ki vsebuje KLAVŠO_LEVO, KLAVŠO_DESNO, KLAVŠO_UP ali KLAVŠO_DOL, izvede povezane ukaze.

 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: sporočilo, trajanje: 3 }); } funkcija cameraControl(motor, smer, cameraId='1') { com('Camera Ramp', { 'CameraId': cameraId, [motor]: smer }); } function init() { let standbyState; xapi.status.get('Standby').then((state) => {standbyState = state.State === 'Off' ? false : true; }); xapi.status.on('Standby', state => { standbyState = state.State === 'Off' ? false : true; }); xapi.event.on('UserInterface InputDevice Key Action', press => { if (press.Type == "Pressed") { switch (press.Key) { case "KEY_LEFT": cameraControl('Pan', 'Left'); break; case "KEY_RIGHT": cameraControl('Pan', 'Right'); break; case "KEY_UP": cameraControl('Tilt', 'Up'); break; case "KEY_DOWN": cameraControl('Tilt', 'Down'); break; privzeto: prekinitev; } } else if (press.Type == "Released") { switch (press.Key) { case "KEY_LEFT": cameraControl('Pan', 'Stop'); break; case "KEY_RIGHT": cameraControl('Pan', 'Stop'); break; case "KEY_UP": cameraControl('Tilt', 'Stop'); break; case "KEY_DOWN": cameraControl('Tilt', 'Stop'); break; case 'KEY_VOLUMEUP': com('Povečanje glasnosti zvoka'); break; case 'KEY_VOLUMEDOWN': com('Zmanjšanje glasnosti zvoka'); break; case 'KEY_SLEEP': com(standbyState ? "Deaktivirati stanje pripravljenosti" : 'Standby Activate'); break; privzeto: prekinitev; } } }); } init();