Zoom Rooms Native Raumsteuerung
|

Zoom Rooms Native Raumsteuerung

Es bietet Ihnen die Möglichkeit, IP-fähige Geräte von Drittanbietern mit der Raumsteuerungsfunktion zu steuern, sodass der Benutzer diese Geräte über den Zoom Room Controller steuern kann, um es für den Benutzer bequemer zu machen. Damit der Administrator des Zoom-Raums IP-Kontrollnachrichten aus dem Zoom-Raum senden kann, kann ein Konfigurationsprofil erstellt werden.

Voraussetzungen für die Verwendung von Room Controls

  • Ein Zoom Rooms-Programm, das auf macOS, Windows oder einer Zoom Rooms-Appliance mit Version 5.1 oder höher ausgeführt wird, ist erforderlich

  • Ein Gerät, das von einem LAN oder WLAN gesteuert wird, das einem Drittanbieter gehört

So aktivieren Sie die Raumsteuerung

Die Einstellung muss für Zoom Rooms aktiviert werden, damit Sie ein JSON-Konfigurationsprofil hochladen können. Es ist möglich, dies auf jeder Ebene innerhalb der Zoom Rooms-Hierarchie zu konfigurieren, um Ihre Anforderungen zu erfüllen.

  1. Auf das Webportal von Zoom können Sie zugreifen, indem Sie sich anmelden.

  2. Wählen Sie dann unter Raumverwaltung die Option Zoom Rooms aus.

  3. Wenn Sie den Namen des Zoom-Raums sehen, klicken Sie rechts daneben auf Bearbeiten.

  4. Stellen Sie sicher, dass „Raumsteuerung aktivieren“ unter „Geräte“ aktiviert (blau) ist.

  5. Erstellen Sie ein Profil, indem Sie auf die Schaltfläche Profil erstellen klicken.

  6. Die JSON-Konfiguration dieses Raums sollte hier eingegeben werden.

So schreiben Sie ein Raumsteuerungsprofil

Einstieg

Es ist wichtig, ein gutes Verständnis von JSON zu haben, bevor Sie ein Raumsteuerungsprofil schreiben können. Bei JSON sind mehrere wichtige Punkte zu beachten: das auf Schlüssel-Wert-Paaren basierende System und seine Bedeutung für die korrekte Verwendung der Syntax für die zu erstellende Datei. Ich empfehle Ihnen, sich einen Online-Einführungskurs zu JSON anzusehen, um mehr über die Grundlagen zu erfahren.

In jeder Programmiersprache ist es impsinngemäß Erweisen Sie der nächsten Person, die sich mit Ihrer Akte befasst, nachdem Sie sie gesendet haben, eine gewisse Höflichkeit. Zoom Rooms Native Room Controls müssen diese Anforderung nicht erfüllen, es wird jedoch dringend empfohlen, dass sie dies tun. Es ist möglich, das „about“-Objekt zu verwenden, um anstelle des „adapters“-Objekts eine Aufzeichnung des Autors, der Version und anderer historischer Informationen über die Adapter zu hinterlassen. Room Controls parst diese Informationen nicht, aber sie verbleiben im Portal, nachdem sie geparst wurden. Dies kann auf die unten gezeigte Weise genutzt werden.

{
"about": {
"type": "Medium Conference A",
"version": "v1.2.4",
"design_ref": "\\files\MediumConfA",
"created": "Mon, 21 Oct 2020 16:35:52 GMT"
},

Adapter

Sobald die Adapter eingerichtet sind, können Room Controls mit Geräten verbunden werden. Es gibt mehrere Abschnitte in diesem Abschnitt, die konfiguriert werden können, um die besten Ergebnisse zu erzielen. Im gesamten verschachtelten JSON-Format sollte jedes Gerät innerhalb der Hierarchie einem ähnlichen Format folgen (dieses Beispiel ist verschachtelt, damit es mit dem folgenden verglichen werden kann):

{
"adapters": (
            {
            "model": "iTachIP2SL",
            "ip": "(IP_ADDRESS)",
            "uuid": "GlobalCache_(UNIT_MAC_ADDRESS)",
            "ports": (
                     {
                     "id": "sl_sharp_tv",
                     "name": "Sharp Display",
                     "settings": {
                     "baud_rate": "38400",
                     "flow_control": "FLOW_NONE",
                     "parity": "PARITY_NO"
                     },
                     "methods": (
                                {
                                "id": "power",
                                "name": "Power",
                                "command": "POWR000%\\x0D",
                                "params": (
                                          {
                                          "id": "displayOn",
                                          "name": "On",
                                          "value": "0001"
                                          },
                                          {
                                          "id": "displayOff",
                                          "name": "Off",
                                          "value": "0000"
                                          }
                                          ),
                                "type": "actions" 
                                },
...

Der Abschnitt response_filter befindet sich im Abschnitt „methods“ einer Methode. Ein Antwortfilter ist ein Beacon, das durch die unten definierten Antwortfilter identifiziert, auf welche Verbindung im Netzwerk zu lauschen ist. In diesem Bereich sind keine Funktionen definiert. Antwortfilter werden in den entsprechenden Abschnitten besprochen, wie sie in andere Abschnitte des Buches passen.

Stile

Ihre Schnittstellenelemente sind optisch gestylt durch die Verwendung von Stilen. Es muss nicht viel angepasst werden, daher ist es nicht sehr schwierig herauszufinden, wie es geht.

In der Benutzeroberfläche des Programms steht eine Vielzahl von Symbolen zur Verfügung. Es gibt eine große Auswahl an Produkten in diesen Kategorien, wie z. B. Klimaanlagen und Freisprechtelefone. Zusätzlich zu den unten aufgeführten Symbolen gibt es weitere, die der Liste regelmäßig hinzugefügt werden.

Gerät Name Bild
Klimaanlage icon_air_conditioner
Kabelfernsehen icon_cable_tv
Deckenmikrofon icon_ceiling_mic
Vorhang icon_curtain
DVD Spieler icon_dvd_player
Xbox/PS4-System icon_game_console
HDMI icon_hdmi
Laptop icon_laptop
Licht Symbol_Licht
Beamer icon_projector
Rack-Ausrüstung icon_rack_equipment
Satellitenschüssel icon_satellite_dish
Lautsprecher icon_speaker
Freisprecheinrichtung icon_speakerphone
Fernseher icon_tv
Leistung icon_power
hoch icon_up
runter icon_down
kalt icon_kalt
heiß icon_hot
trocken icon_dry
Wind icon_wind

Unter den primären Modulatoren innerhalb von Stilen gibt es insbesondere drei: Symbole (wie oben besprochen), die Hauptmethoden und die Sichtbarkeit des Stils.

Ein Symbol ist eine visuelle Darstellung des Systems als Ganzes. Diese Markierungen können entweder zur Identifizierung eines Geräts oder als Ersatz für den Text auf einer Schaltfläche verwendet werden. Aus dem folgenden Beispiel ist ersichtlich, dass wir in unserem Code ein Gerät mit dem Namen „example“ definiert haben.

{
"adapters": (
            {
            "model": "ExternalControlSystem",
            "ip": "tcp://(USER_IP_ADDRESS):(USER_PORT)",
            "ports": (
                     {
                     "id": "example",
                     "name": "Example Device",
                     "methods": (
...

Wir können die ID für das Gerät „Beispiel“ innerhalb der Stile verwenden, sobald wir es als Gerät definiert haben. Unser Beispielgerät kann einfach so eingestellt werden, dass es ein Lichtsymbol als Hauptsymbol hat.

"styles": (
          "example.icon=icon_light",
          "example.main_method=power"
          )

Die Hauptmethode des Geräts wurde ebenfalls in einer einzigen Zeile definiert, was Sie möglicherweise auch haben bemerkte. Als ein Ergebnis von Main Methode wird dem referenzierten Befehl, den Sie definiert haben, eine prominente Abrechnung zugewiesen:

Oben sind mehrere Befehle aufgelistet Balken, aber Der Power-Befehl ist der Hauptbefehl, daher wird er getrennt von den anderen Befehlen in der oberen Leiste angezeigt.

Zusätzlich zu den ersten beiden Arten von Stilen, Sichtweite ist der dritte. Programmierer können Funktionen erstellen, die vollständig von der Benutzeroberfläche verborgen sind, indem sie die Sichtbarkeitsfunktion in Visual Basic verwenden Skript. So einfach es definiert werden kann, lässt es sich wie folgt zusammenfassen:

"example.power.invisible=true"

Dieser Befehl kann vollständig vor dem Rooms-Benutzer verborgen werden, wenn Sie dem Format „device.command.invisible=true“ folgen, um diesen Befehl vollständig vor ihnen zu verbergen.

Regeln

Room Controls basiert auf dem Konzept von Regeln, die der Motor der Automatisierung sind. In diesem Bereich ist es möglich, Dinge zu definieren, die ohne externe Eingaben von selbst auftreten. Ich könnte zum Beispiel „meeting_started“ und „meeting_ended“ (vorhandene Zoom-Ereignisse) verwenden, um meine Anzeige nur dann aktiv zu machen, wenn eine Besprechung aktiv ist, sodass ich meine Anzeige nur sehen könnte, wenn eine Besprechung aktiv ist.

"rules": {
          "meeting_started": (
                             "display.power.on",
                             "camera.power.wake"
                             )
          ),
          "meeting_ended": (
                           "display.power.off"
                           )
          }

Anhand dieses Beispiels können Sie den Stromverbrauch Ihres Systems erheblich reduzieren.

Die Befehle können einfach gestapelt werden, wenn die Anzahl der Befehle für jede Regel nicht ausreicht. Obwohl diese Ereignisse nacheinander ausgelöst werden, werden sie schnell genug verarbeitet, sodass wir sie als gleichzeitige Ereignisse betrachten. Ich habe „camera.power.wake“ unter dem Wert „display.power.on“ in meinem obigen Beispiel hinzugefügt, um sicherzustellen, dass meine Kamera aktiviert wird, wenn das Display in meinem Beispiel aufwacht.

Innerhalb der heutigen Regeln gibt es einige Zoom-Befehle, die auf Lager verfügbar sind:

Notiz: Mit den Zoom Rooms-Einstellungen können Sie die Betriebszeiten festlegen.

Die Antwortfilter können auch angepasst werden. Zusätzlich zu den unten besprochenen Trigger-Ereignissen können Sie auch den Regelabschnitt verwenden, um Ihre eigenen Prozesse zu automatisieren.

"rules":{
        "operation_time_started":(
                                "light.power.on"
                                ),
        "user_customized_event1":(
                                "light.power.off"
                                 )
         }

Das „user_customized_event1“ in diesem Beispiel schaltet das von unserem Benutzer gesteuerte Licht aus. Damit der Raum aktualisiert werden kann, könnte dies durch eine Eingabe von einer Taste oder durch einen inaktiven Bewegungssensor gesteuert werden, oder der Raum könnte sogar von einem Drittsystem wie einem Buchungssystem aktualisiert werden, das dem Raum eine Aktualisierung sendet, die keine Benutzer haben sich für das Meeting eingecheckt. In Bezug auf die Verwendung dieser Funktion sind Ihrer Vorstellungskraft die einzigen Grenzen gesetzt.

Antwort Filter

Die nativen Raumsteuerungen von Zoom Rooms enthalten Antwortfilter – eine leistungsstarke neu Funktion, die die Funktionalität von Zoom Rooms erweitert. Ein Filter liest Nachrichten, die von einem definierten Gerät zurückgesendet werden, und sucht dann sofort nach einem Satz, der mit der Nachricht übereinstimmt. Es gibt ein Regelauslöseereignis, das immer dann ausgelöst wird, wenn der auf der Verbindung bereitgestellte Satz (oder Ausdruck) identifiziert wird (oben beschrieben).

Jeder Antwortfilter besteht aus drei Elementen:

  • “Name”: Es gibt einen Verweis auf diesen Namen im Abschnitt „ports“ des Abschnitts „methods“. Wenn dieser Name im Bereich „Ports“ erscheint, umfasst der Antwortfilter diese Verbindung

  • „filter_regex“: Antwortfilter versuchen, Regex (oder reguläre Ausdrücke) basierend auf den Zeichen, die sie in der Antwort finden, abzugleichen. „trigger_event“ wird aktiviert, wenn die Übereinstimmung eintritt

  • “auslösendes Ereignis”: Regelabschnitte verwenden das Trigger-Ereignis. Ein Trigger-Ereignis in Regeln wird ausgelöst, wenn „filter_regex“ aktiviert wird

So verwenden Sie Raumsteuerungen

Über das Raumsteuerungssymbol auf dem Controller von Zoom Rooms haben Sie Zugriff auf diese zusätzlichen Funktionen.

Außerhalb der Besprechungszeiten können Sie über das Hauptmenü auf die Raumsteuerung zugreifen.

Sie können auf die Raumsteuerung eines Meetings zugreifen, indem Sie auf das Symbol oben rechts im Steuerungsfenster tippen.

Fehlerbehebung

Benutzerdefinierte Konfigurationen erfordern eine Fehlerbehebung. Das Raumsteuerungssystem kann je nach Situation einfach oder komplex sein. Sie können mögliche Hindernisse beheben, indem Sie die folgenden Abschnitte lesen.

Raumsteuerungsfehler

Fehlercode Beschreibung
No_Config_Error Das Webportal lädt kein JSON-Profil
Json_Syntax_Error Im JSON-Profil wurde ein Fehler gefunden
Json_Config_Error Bei der Konfiguration des JSON-Profils ist ein Fehler aufgetreten
IP_Fehler Die angegebene IP-Adresse ist nicht erreichbar
IP_ist_öffentlich Derzeit sind öffentliche IP-Adressen nicht zulässig
DeviceID_Error Die Geräte-ID eines oder mehrerer Geräte wurde falsch eingestellt
Methoden-ID_Fehler Eine oder mehrere Methoden sind falsch definiert
ParamID_Error Einige Parameter wurden falsch definiert
IP2SL_Settings_Error Der serielle Anschluss am GC IP2SL ist falsch konfiguriert
Empty_Device_Error Im JSON-Profil wurden einige Geräte aufgerufen, die nicht im Profil definiert waren
Unbekannt Es scheint, dass ein unbekannter Fehler aufgetreten ist

Probe Dateien

Wir haben diese Dateien aus verschiedenen Quellen zusammengestellt, sie sollten jedoch nur als Referenz dienen. Abhängig von Ihrer Anwendung müssen Sie möglicherweise einige Änderungen vornehmen, damit es funktioniert.

  • Generisch Dateien

    • Zoom Room Control JSON-Profil

    • Zoom Room Control JSON-Profil mit zusätzlichen Kommentaren

    • Generisches Beleuchtungs-JSON-Profil (Relay)

    • Generisches Beleuchtungs-JSON-Profil (seriell)

  • Avocor

  • Mittelatlantik

  • Shure

Similar Posts