Questa funzione è destinata a integrare le funzionalità del controllo touch o dell'interfaccia utente touch. Non è destinato a sostituirli .

Esempi di applicazioni:

  • Nelle classi e durante le lezioni, è possibile utilizzare un telecomando di piccole dimensioni per riattivare un dispositivo dalla modalità standby. Può anche essere utile utilizzare un telecomando per selezionare quale fonte di input da presentare.

  • Controllo della visualizzazione della videocamera (panoramica, inclinazione e zoom) nelle situazioni in cui non è consentito utilizzare il controllo touch. Ad esempio, nelle sale operativi in una stanza d'albergo.

Panoramica funzionale

Quando viene premuto un pulsante sul dispositivo di input USB, viene attivata un'azione all'interno dell'API del dispositivo Cisco. Le macro o i dispositivi di controllo esterni di terze parti possono essere configurati per rilevare tali azioni e reagire di conseguenza. Questa funzionalità è simile al comportamento dei pulsanti di controllo in sala. Inoltre, è possibile monitorare queste azioni tramite webhook o direttamente all'interno di una sessione SSH.

Non viene fornita una libreria preesistente di azioni tra cui scegliere. È necessario definire e stabilire le azioni specifiche che devono essere eseguite in risposta agli eventi. Ad esempio:

  • Aumentare il volume del dispositivo Cisco quando si preme il tasto Aumento volume.

  • Quando si preme il tasto Sospensione, mettere il dispositivo Cisco in modalità standby.

Configurazioni, eventi e stato

Le configurazioni e lo stato che vengono definiti in questo articolo, sono disponibili sia dall'interfaccia Web locale del dispositivo che dalle API. Leggi l' articolo sulle configurazioni dei dispositivi per informazioni su come accedere all'interfaccia Web e utilizzare l'API.

Quando l'interfaccia Web del dispositivo è aperta, fare clic su Impostazioni. In Configurazioni, modificare Periferiche > Modalità dispositivo di input su Attivato. Il supporto per dispositivi di input USB di terze parti è disabilitato per impostazione predefinita.

Premendo e rilasciando un pulsante viene generato un evento premeto e un evento rilasciato:

 *e UserInterface InputDevice Key Action Key:  *e UserInterface InputDevice Key Action Code:  *e UserInterface InputDevice Key Action Type: Premuto ** end *e UserInterface InputDevice Key Action Key:  *e UserInterface InputDevice Key Action Code:  *e UserInterface InputDevice Key Action Type: Rilasciato ** fine 

Per ascoltare gli eventi, è necessario registrare il feedback dagli eventi InputDevice :

 Registrazione xFeedback /evento/UserInterface/InputDevice ** fine 

Quando il dispositivo Cisco rileva la periferica di terze parti, viene elencato sotto Stato e Periferiche > ConnectedDevice. Il dispositivo di terze parti può essere segnalato come più dispositivi.

Ulteriori informazioni

Per ulteriori informazioni sull'uso di un dispositivo di input di terze parti, fare riferimento alla Guida alla personalizzazione . Scegliere l'ultima versione.

Il supporto Cisco (TAC) non supporta il debug di codice di terze parti, incluse le macro. Controlla Cisco RoomOS per dispositivi di collaborazione se hai bisogno di assistenza con macro e codice di terze parti. Controlla questa pagina per ulteriori esempi di macro ed estensioni.

Esempio

In questo esempio, desideriamo mostrarti come utilizzare i tasti di un dispositivo di input USB di terze parti (in questo caso un telecomando) per controllare determinate funzioni su un dispositivo Cisco.

Viene mostrato come utilizzare i pulsanti su un telecomando Bluetooth (collegato tramite un adattatore USB) per gestire funzioni come standby, regolazione del volume e controllo di una videocamera Cisco. È possibile sviluppare una macro che ascolta gli eventi pertinenti ed esegue le azioni corrispondenti attraverso l'API del dispositivo Cisco.

Nell'esempio seguente, è necessario immettere il testo scritto in carattere normale. Il testo in corsivo corrisponde alla risposta ricevuta dal dispositivo Cisco.

1

Accedere al dispositivo Cisco su SSH. È necessario un utente di amministrazione locale.

2

Configurare il dispositivo per consentire l'uso di dispositivi USB di terze controllo remoto.

 Modalità dispositivo di input periferiche xConfiguration: Il ** termina OK  

 

È possibile controllare se la configurazione è attivata o disattivata utilizzando questo comando:

 xConfiguration Peripherals InputDevice Mode  *c xConfiguration Peripherals InputDevice Mode: Il ** fine OK  
3

Eseguire l'iscrizione per il feedback, in modo da ricevere una notifica quando i controllo remoto clic vengono pressati e rilasciati.

Registrazione
 xFeedback /event/userinterface/inputdevice  ** fine OK  

 

È possibile controllare i feedback per i quali è registrato il dispositivo utilizzando questo comando:

 xFeedback elenco /event/userinterface/inputdevice ** termina OK  
4

Premere e rilasciare un pulsante sul controllo remoto per controllare che l'iscrizione del feedback funzioni.

Questa azione genera due eventi: Premuto e Rilasciato. Se si preme e si tiene premuto un pulsante, viene visualizzato l'evento Pressato fino a quando non si rilascia il pulsante. Quindi viene generato l'evento Rilasciato.

Questi eventi vengono emessi quando si preme e si rilascia il tasto Invio:

  *e Chiave di azione UserInterface InputDevice: CHIAVE_INSERISCI *e Codice azione chiave UserInterface InputDevice: 28 *e Tipo di azione chiave interfaccia utente InputDevice: Premere ** end *e tasto di azione UserInterface InputDevice: CHIAVE_INSERISCI *e Codice azione chiave UserInterface InputDevice: 28 *e Tipo di azione chiave interfaccia utente InputDevice: Rilasciato ** fine  
5

Scrivere una macro in ascolto degli eventi inputDevice rilevanti e scoprire le azioni associate utilizzando l'API del dispositivo.

  • Attivare i pulsanti standby, volume e volume in basso. Quando la macro visualizza un evento contenente KEY_VOLUMEUP, KEY_VOLUMEDOWN o KEY_SLEEP, esegue i comandi correlati.

  • Creare una funzione di controllo videocamera per i tasti freccia. Si desidera continuare a spostare la videocamera finché il pulsante viene premuto. Quando il pulsante viene rilasciato, il movimento della videocamera si interrompe. Quando la macro visualizza un evento contenente KEY_LEFT, KEY_RIGHT, KEY_UP o KEY_DOWN, esegue i comandi correlati.

 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: messaggio, durata: 3 }); } funzione cameraControl (motore, direzione, cameraId='1') { com('Camera Ramp', { 'CameraId': cameraId, [motore]: direction }); } function init() { let standbyState; xapi.status.get('Standby').then((state) => {standbyState = state.State === 'Disattivato' ? false : true; }); xapi.status.on('Standby', stato => { standbyState = state.State === 'Disattivato' ? false : true; }); xapi.event.on('Azione chiave InputDevice UserInterface', press => { if (press.Type == "Premuto") { switch (press.Key) { case "KEY_LEFT": cameraControl('Panoramica', 'Sinistra'); interruzione; caso "CHIAVE_DESTRA": cameraControl('Panoramica', 'Destra'); interruzione; caso "TASTO_SU": cameraControl('Inclinazione', 'Su'); interruzione; caso "TASTO_GIÙ": cameraControl('Inclinazione', 'Giù'); break; default: break; } } else if (press.Type == "Released") { switch (press.Key) { case "KEY_LEFT": cameraControl('Pan', 'Stop'); break; caso "CHIAVE_DESTRA": cameraControl('Pan', 'Stop'); break; caso "TASTO_SU": cameraControl('Tilt', 'Stop'); break; caso "TASTO_GIÙ": cameraControl('Tilt', 'Stop'); break; caso 'KEY_VOLUMEUP': com('Aumento volume audio'); interruzione; caso 'CHIAVE_VOLUMEDOWN': com('Diminuzione volume audio'); interruzione; caso 'CHIAVE_SOSPENSIONE': com(standbyState ? "Disattivazione standby": 'Attivazione standby'); break; predefinito: break; } } }); } init();