In dit artikel
Voorbeeld
Gebruik van invoerapparaten van derden (USB) met Board, Bureau en Room Series
list-menuIn dit artikel
list-menuFeedback?

U kunt een randapparaat van derden USB gebruiken om bepaalde functies op uw apparaat te bedienen, zoals een USB toetsenbord of een Bluetooth® afstandsbediening met een USB programma.

Deze functie is bedoeld als aanvulling op de functionaliteiten van de touch controller of de touch user interface. Het is niet bedoeld om ze te vervangen .

Voorbeelden van toepassingen:

  • In de klas en tijdens colleges kan een kleine afstandsbediening worden gebruikt om vanuit de stand-bymodus een apparaat te activeren. Het kan ook handig zijn om een afstandsbediening te gebruiken om te selecteren welke invoerbron u wilt weergeven.

  • Het beeld van de camera (paneren, kantelen en zoomen) in situaties waarbij u de touch controller niet mag gebruiken. Bijvoorbeeld in operatiezalen in een ziekenhuis.

Overzicht functionele functies

Als op een knop wordt gedrukt op het invoerapparaat USB, wordt er een bewerking geactiveerd binnen Cisco apparaat nr. API. Macro's of externe besturingsapparaten van derden kunnen worden ingesteld om deze handelingen te detecteren en dienovereenkomstig te reageren. Deze functionaliteit is vergelijkbaar met het gedrag van de knoppen voor in-room control. Daarnaast is het haalbaar om deze acties te controleren via webhooks of direct binnen een SSH-sessie.

Er is geen reeds bestaande bibliotheek met acties waaruit u kunt kiezen. U wordt gevraagd om de specifieke acties te definiëren en instellen die moeten plaatsvinden als reactie op de gebeurtenissen. Bijvoorbeeld:

  • Verhoog het volume van apparaatnummer Cisco wanneer u op de toets Volume omhoog drukt.

  • PUT het apparaat Cisco in de stand-bymodus staat wanneer u op de toets Slaapstand drukt.

Configuraties, gebeurtenissen en status

De configuraties en status die in dit artikel worden genoemd, zijn beschikbaar via de lokale webinterface van het apparaat en de API's. Lees het artikel Apparaatconfiguraties voor informatie over het openen van de webinterface en het gebruik van API.

Wanneer de webinterface van het apparaat is geopend, klikt u op Instellingen . Wijzig bij Configuraties de optie Randapparaten> InputDevice Modus in Aan. De ondersteuning voor invoerapparaten van USB derden is standaard uitgeschakeld.

Als u op een knop drukt en los maakt, wordt de gebeurtenis Pressed en een Vrijgegeven gebeurtenis gegenereerd:

 *E Sleutelbewerking gebruikersinterface-invoerApparaat: <naam van de sleutel> *e Gebruikersinterface Invoersleutel Bewerkingscode: <ID van de sleutel> *e Gebruikersinterface invoerSleutel: Ingedrukt ** einde *e Sleutelbewerking gebruikersinterface-invoerApparaat: <naam van de sleutel> *e Sleutelbewerkingscode gebruikersinterface invoerApparaat: <ID van de sleutel> *e Gebruikersinterface invoerDevice bewerking: Vrijgegeven ** einde 

Als u naar gebeurtenissen wilt luisteren, moet u feedback van de InputDevice-gebeurtenissen registreren:

 xFeedback registreren /gebeurtenis/Gebruikersinterface/InvoerApparaat ** einde 

Wanneer het Cisco-apparaat het randapparaat van derden detecteert, wordt dit vermeld onder Status en in Randapparaten > ConnectedDevice . Het apparaat van de derde partij kan worden gerapporteerd als meerdere apparaten.

Meer informatie

Meer informatie over het gebruik van invoerapparaten van derden vindt u in de Aanpassingshandleiding . Kies de meest recente versie.

Cisco support (TAC) ondersteunt geen foutopsporing van code van derden, inclusief macro's. Controleer# Cisco RoomOS voor samenwerkingsapparaten als u hulp nodig hebt met macro's en code van derden. Controleer deze pagina voor meer voorbeelden van macro's en toestelnummers.

Voorbeeld

In dit voorbeeld willen we u laten zien hoe u de toetsen van een USB invoerapparaat van derden kunt gebruiken (in dit geval een externe besturing) om bepaalde functies op een apparaat van Cisco te bedienen.

Wij laten u zien hoe u de knoppen van een Bluetooth afstandsbediening kunt gebruiken (verbonden via een USB de) om functies als stand-by, volume aanpassen en bediening van een Cisco camera apparaat te beheren. U kunt een macro ontwikkelen die naar relevante gebeurtenissen luistert en die overeenkomstige acties uitvoert via de Cisco-apparaat nr. API.

In het volgende voorbeeld moet u de tekst invoeren die in een normaal lettertype is geschreven. Cursief is het antwoord dat is ontvangen van het apparaat Cisco.

1

Meld u aan bij Cisco-apparaat op SSH. U hebt een lokale beheerder nodig.

2

Configureer het apparaat zo dat het gebruik van een afstandsbediening van USB derden mogelijk is.

 Modus Invoer xConfiguratierandapparatuur:  Aan** ok  

U kunt met de volgende opdracht controleren of de configuratie is in- of uitgeschakeld:

 xConfiguratie randapparaten InputDevice Modus  *c x-configuratierandapparatuur InputDevice Modus: Aan ** einde OK  
3

Registreren voor feedback, zodat we op de hoogte worden gesteld wanneer de knoppen voor de afstandsbediening worden ingedrukt en losgelaten.

 xFeedback register /gebeurtenis/userinterface/invoerapparaat  ** end OK  

U kunt met de volgende opdracht controleren voor welke feedback het apparaat is geregistreerd:

 xFeedback-lijst /gebeurtenis/gebruikersinterface/invoerapparaat ** einde OK  
4

Druk op de afstandsbediening op een knop om te controleren of feedbackregistratie ook werkt.

Deze bewerking genereert twee gebeurtenissen: Pressed en Vrijgegeven. Als u een knop ingedrukt houdt, wordt de gebeurtenis Ingedrukt weergegeven totdat u de knop loslaat. Vervolgens wordt de gebeurtenis Vrijgegeven gegenereerd.

Deze gebeurtenissen worden uitgegeven wanneer u de Enter-toets indrukt en losgeeft:

  *E Gebruikersinterface Sleutelbewerkingssleutel inputDevice: KEY_ENTER *e Gebruikersinterface Sleutelbewerkingscode InvoerDevice: 28 *e Gebruikersinterface Sleutelbewerkingstype InputDevice: Gedrukt ** einde *e Gebruikersinterface invoerSleutel: KEY_ENTER *e Gebruikersinterface InvoerSleutel Bewerking: 28 *e Gebruikersinterface-invoerSleutelactie: 28 *e Gebruikersinterface-invoerSleuteltoets: Vrijgegeven ** einde  
5

Schrijf een macro die luistert naar de relevante InputDevice-gebeurtenissen en voert de bijbehorende acties uit met de API van het apparaat.

  • Breng de knoppen stand-by, volume omhoog en Volume omlaag tot leven. Wanneer de macro een gebeurtenis ziet die KEY_VOLUMEUP, KEY_VOLUMEDOWN of KEY_SLEEP bevat, voert de macro de gerelateerde opdrachten uit.

  • Maak een camerabediening voor de pijltoetsen. We willen de camera blijven bewegen zolang de knop wordt ingedrukt. Wanneer de knop loskomt, stopt de beweging van de camera. Wanneer de macro een gebeurtenis ziet met KEY_LEFT, KEY_RIGHT, KEY_UP of KEY_DOWN, voert de macro de gerelateerde opdrachten uit.

 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', { Tekst: message, duration: 3 }); function cameraControl(motor, direction, cameraId='1') { com('Camera Ramp', { 'CameraId': cameraId, [motor]: richting }); } function init() { stand-byStatus; xapi.status.get('Stand-by').then(status) => {stand-byState = status. Staat === 'Uit' ? onwaar: waar; }); xapi.status.on('Stand-by', status => { stand-byStatus = status. Staat === 'Uit' ? onwaar: waar; }); xapi.event.on('UserInterface InputDevice Key Action', druk op => { if (druk op. Type == "Pressed") { switch (press. Toets) { case "KEY_LEFT": cameraControle('Pan', 'Links'), pauze; case "KEY_RIGHT": cameraControle('Pan', 'Rechts'); pauze; case "KEY_UP": cameraControle('Kantelen', 'Omhoog'), pauze; case "KEY_DOWN": cameraControl('Kantelen', 'Omlaag'); pauze; standaard: pauze; } else if (druk op. Type == "Vrijgegeven") { switch (druk op. Sleutel) { case "KEY_LEFT": cameraControle('Pan', 'Stop'); break; case "KEY_RIGHT": cameraControle('Pan', 'Stop'); break; case "KEY_UP": cameraControl('Tilt', 'Stop'), break; case "KEY_DOWN": cameraControl('Tilt', 'Stop'); break; case 'KEY_VOLUMEUP': com('Audio Volume Verhogen'), pauze; case 'KEY_VOLUMEDOWN': com('Audio Volume Verlagen'); pauze; case 'KEY_SLEEP': com(stand-byStatus? 'Stand-by Deactiveren' : 'Stand-by geactiveerd'); Breken; standaardwaarde: pauze; } } }); } init(); 
Vond u dit artikel nuttig?
Vond u dit artikel nuttig?