Controles de sala


Descripción general

La función de Controles de sala le permite controlar los equipos con capacidad IP de terceros para que el usuario pueda controlar el equipo a través del controlador de Zoom Room. Los administradores pueden crear un perfil de configuración para agregar mensajes de control de IP salientes desde Zoom Room.

Este artículo trata sobre: 

Requisitos previos

Configuración

Habilitación de controles de sala

Antes de poder cargar un Perfil de configuración JSON, la configuración deberá estar habilitada para Zoom Rooms. Esto se puede configurar en cualquier nivel de la jerarquía de Zoom Rooms.

  1. Inicie sesión en el Zoom Web Portal.
  2. Haga clic en Administración de salas y luego seleccione Zoom Rooms.
  3. Haga clic en Editar a la derecha del nombre Zoom Room.
  4. En Dispositivos, active Habilitar Room Controls (azul). 
  5. Haga clic en Crear perfil.
  6. Introduzca la configuración JSON para esta sala.

Escribir un perfil de controles de sala

Inicio

Antes de escribir un Perfil de controles de sala, se requiere algún conocimiento práctico de JSON. Los elementos clave que deben tenerse en cuenta son que JSON es un sistema basado en par clave-valor y que la sintaxis es importante para disponer correctamente el archivo. Para obtener información adicional sobre los aspectos básicos de JSON, consulte un curso de introducción en línea.

En cualquier lenguaje de codificación, hay dispensar cierta cortesía a la siguiente persona que maneje su archivo. Aunque no hay ningún requisito específico al respecto para los controles de sala nativos Zoom Rooms, se recomienda. Para dejar un registro del autor, la versión u otro historial, se puede usar el objeto «about» y se lo puede colocar encima de «adapters».Los Controles de sala no lo analizan, pero se conservarán en el portal.A continuación se muestra un ejemplo de cómo podría aprovecharse eso.

 

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

 

Adaptadores

La configuración de los adaptadores conecta los Controles de sala a los dispositivos. Esta sección es la sección principal para la configuración. Los dispositivos individuales dentro del formato JSON anidado deben seguir un formato similar (este ejemplo está anidado para que sea paralelo al ejemplo de código siguiente):

{
"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"
},
...

Debajo de «methods», se puede usar una sección adicional: «response_filter». El Filtro de Respuesta es una baliza que permite a los Filtros de Respuesta definidos a continuación entender qué conexión escuchar.No hay funciones definidas en esta área. La forma en que un Filtro de respuesta se ajusta a otras secciones se tratará dentro de esas secciones.

Estilos

Los estilos controlan el estilo visual de los elementos de la interfaz. En la actualidad, los ajustes no son extremadamente extensos, por lo que no es algo muy difícil de aprender.

Hay muchos iconos disponibles en la interfaz. Abarcan todo, desde aires acondicionados hasta altavoces. Los iconos de abajo son la lista actual, pero esta lista se amplía regularmente.

DispositivoNombreImagen
aire acondicionadoicon_air_conditioner
TV por cableicon_cable_tv 
micrófono de techoicon_ceiling_mic
cortinaicon_curtain 
Reproductor de DVDicon_dvd_player  
Sistema Xbox/PS4icon_game_console  
HDMIicon_hdmi  
Portátilicon_laptop 
luzicon_light  
proyectoricon_projector 
equipo de bastidor icon_rack_equipment  
antena parabólica icon_satellite_dish  
parlanteicon_speaker 
altavozicon_speakerphone
TVicon_tv
encendidoicon_power
arribaicon_up
abajoicon_down 
fríoicon_cold
calienteicon_hot
secoicon_dry 
vientoicon_wind 

 

Hay tres modificadores principales dentro de los estilos: iconos (como se describió anteriormente), Métodos principales y Visibilidad.

Los iconos son las visualizaciones del sistema. Puede utilizarlos para marcar un dispositivo o para reemplazar el texto vinculado a un botón. En el siguiente ejemplo, hemos definido un dispositivo llamado «ejemplo».

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

Una vez que «ejemplo» se define como un dispositivo, podemos usar esta ID dentro de los estilos. Por ejemplo, la configuración del icono principal de nuestro dispositivo de ejemplo para que sea una luz se hace fácilmente.

"styles": [
"example.icon=icon_light",
"example.main_method=power"
]

También puede observar que dentro de una sola línea, también hemos definido el Método principal para el dispositivo. El Método Principal extrae el comando al que se hace referencia que ha definido en la barra de título del dispositivo, lo que le da una facturación destacada de la siguiente manera:

mceclip0.png

Hemos definido el comando de encendido como el método principal, y así se muestra en la barra superior separada de los otros comandos.

El tercer tipo de estilo es la Visibilidad. La visibilidad le permite al programador definir una función, pero ocultar esa función de la interfaz del usuario por completo. Se puede definir con la misma facilidad:

"example.power.invisible=true"

Seguir el formato de «device.command.invisible=true» permite que este comando se oculte por completo al usuario de salas.  

Reglas

Las reglas son el motor de automatización de los Controles de salas Esta es el área donde se definen las cosas que suceden por sí solas. Por ejemplo, si quisiera que mi pantalla solo estuviera activa cuando una reunión está activa, podría aprovechar «meeting_started» y «meeting_ended» (eventos de Zoom habituales) para que esto ocurra.  

"styles": {
"meeting_started": [
"display.power.on",
"camera.power.wake"
]
),
"meeting_ended": [
"display.power.off"
]
}

Este ejemplo se puede utilizar para reducir el consumo de energía del sistema.

Si un comando por regla no es suficiente, estos comandos se pueden apilar fácilmente. Aunque técnicamente se activan de manera secuencial, se procesan lo suficientemente rápido como para que consideremos estos eventos simultáneos. En mi ejemplo anterior, «camera.power.wake» se agrega debajo de «display.power.on» para activar mi cámara cuando mi pantalla se activa.

Los comandos de Zoom habituales disponibles dentro de las reglas actuales son sencillos:

Nota: El horario de funcionamiento se establece en la página de configuración de Zoom Rooms.

También es sencillo agregar el suyo propio para los Filtros de respuesta. Dentro de la sección de reglas, también puede utilizar los eventos desencadenantes que se describen a continuación para impulsar su propia automatización con entradas externas.

"rules":{
"operation_time_started":[
"light.power.on"
],
"user_customized_event1":[
"light.power.off"
]
}

En este ejemplo, nuestro «user_customized_event1» está apagando nuestra luz controlada. Esto podría estar impulsado por una entrada de un botón o tal vez un sensor de movimiento que se queda inactivo o tal vez incluso un sistema de terceros, como un sistema de reservas que envía a la sala una actualización que indica que ningún usuario se registró para la reunión. La forma en que puede utilizar esta función se ve limitada principalmente por su imaginación.

Filtros de respuesta

Los Filtros de respuesta son un poderoso avance en la funcionalidad de los controles de sala nativos de Zoom Rooms. Estos filtros leen los mensajes que regresan de dispositivos definidos y buscan instantáneamente una frase que coincida. Cuando se identifica esta frase (o expresión) en esa conexión, se desencadena el Evento desencadenante de reglas (descrito anteriormente).

Cada Filtro de respuesta se compone de tres elementos:

Uso de Controles de sala

En el dispositivo del controlador de sala, simplemente pulse el icono Controles de sala para acceder a estas funciones adicionales.

Cuando no está en una reunión, el icono de Controles de sala se puede encontrar en los menús principales.

Durante una reunión, al pulsar el icono en la parte superior derecha del controlador se mostrarán los mismos Controles de sala.

Resolución de problemas

La resolución de problemas es una parte importante en cualquier configuración personalizada. Si bien los Controles de sala pueden ser simples, también son lo suficientemente flexibles como para ser complejos cuando sea necesario. Las secciones siguientes deberían ayudar a resolver posibles obstáculos.

Errores de controles de sala

Código de errorDescripción
No_Config_ErrorEl perfil JSON no se carga en el Web Portal
Json_Syntax_ErrorEl perfil JSON contiene un error de sintaxis
Json_Config_ErrorEl perfil JSON contiene un error de configuración
IP_ErrorHay un problema al conectarse a una dirección IP especificada
IP_Is_PublicLas direcciones IP públicas no están permitidas en este momento
DeviceID_ErrorUna o más ID de dispositivo están configuradas incorrectamente
MethodID_ErrorUno o más métodos están definidos incorrectamente
ParamID_ErrorUno o más parámetros están definidos incorrectamente
IP2SL_Settings_ErrorEl puerto de serie está configurado incorrectamente en GC IP2SL
Empty_Device_ErrorSe llama a uno o más dispositivos sin estar definidos en el perfil JSON
DesconocidoSe ha producido un error desconocido

Archivos de muestra

Estos archivos han sido compilados de varias fuentes y deben utilizarse como punto de partida solamente. Es probable que se requiera alguna modificación para que se adapten a su aplicación.