El complemento Administrador de MQTT le permite conectar Jeedom a un corredor MQTT existente o instalar uno localmente o bajo Docker usando el complemento Gestión de Docker.
Este complemento es capaz de combinar varias funciones :
Servir de base para otros complementos para todo lo relacionado con MQTT.
Sirva en modo “independiente” creando comandos de acción/información para enviar/recibir mensajes en MQTT.
Controla Jeedom desde otro equipo MQTT (Nodado por ejemplo). El complemento puede impulsar comandos y retransmitir todos los eventos de Jeedom en MQTT.
Después de instalar y activar el complemento, la instalación de dependencias debería comenzar a menos que la administración automática haya sido deshabilitada de antemano. En este caso, tendrás que hacer clic en el botón Reanimar para iniciar esta fase de instalación.
Para comenzar a configurar el complemento, es necesario seleccionar el modo de conexión al broker entre las 3 opciones posibles :
Corredor local : El corredor Mosquitto se instala directamente en la máquina que aloja Jeedom (modo por defecto).
Agente local de Docker : El bróker Mosquitto se instala y configura automáticamente en un contenedor Docker usando el plugin oficial Gestión de Docker.
INFORMACIÓN
En este modo, la instalación puede tardar varios minutos.
Corredor remoto : En el caso del uso de un corredor ya existente, es suficiente completar su dirección (ejemplo : ‘‘mqtt://192.168.1.10:1883`).
Una vez instalado el bróker Mosquitto (si es necesario), puedes continuar con la configuración :
Autenticación: Puede especificar usuarios / contraseña para la conexión :
En modo local puede ingresar un nombre de usuario:password
por línea, cada par de identificadores tendrá acceso válido al corredor. Si no hay un identificador, Jeedom crea uno automáticamente.
En modo standalone es suficiente poner en la primera línea el identificador de pareja :contraseña
para Jeedom (ejemplo : si el nombre de usuario es jeedom
y la contraseña mqtt
, debes ingresar jeedom
:mqtt’’).
IMPORTANTE
La autenticación es obligatoria en modo local. Después de la adición, se debe reiniciar Jeedom para que esto surta efecto.
Tema raíz de Jeedom : Asunto raíz para enviar un comando a Jeedom o al que devuelve eventos. Atención, solo es posible poner 1 o 2 niveles como máximo.
Transmitir todos los eventos : Marque la casilla para enviar todos los eventos de comando de Jeedom en MQTT.
Plantilla de publicación : Formateo de la publicación de eventos de Jeedom * (etiquetas posibles : ‘‘#value#,
#humanName#,
#unit#,
#name#,
#type#,
#subtype#’’)*.
Complementos de suscriptor : Lista de complementos suscritos al complemento MQTT Manager en el formulario complemento (tema)
.
Es posible crear equipos MQTT directamente en el complemento.
Debe indicar el tema raíz del equipo (prueba
por ejemplo), tenga cuidado, el tema raíz no puede tener más de 2 niveles (exe nivel1/nivel2
), dependiendo del tipo de comandos :
Por ejemplo, si pones
toto/1
, todos los mensajes sobre el tematest/toto/1
se escribirán automáticamente en el comando en cuestión. El sistema es capaz de gestionar campos tipo json, en este caso hay que ponertoto/1/key1
ototo/1/key1/key2
para bajar un nivel.
Por ejemplo, si coloca
toto/2
con el mensajeplop
, cada clic en el comando enviará el mensajeplop
al tematest/toto/2
.
INFORMACIÓN
En los comandos de tipo acción, puede usar las etiquetas
#slider#
,#color#
,#message#
o#select#
que se reemplazará automáticamente por su valor al ejecutar el comando (según su subtipo). Por otro lado, si el mensaje es del tipojson
, debes agregarle el prefijojson
::’’.
IMPORTANTE
El tema
jeedom
está reservado (esto se puede cambiar en la configuración), así que no envíe nada más que comandos para conducir jeedom
Es posible pilotar Jeedom a través de MQTT. Aquí están los diferentes temas posibles asumiendo que el tema raíz es jeedom
(para adaptar si ha modificado la configuración por defecto) :
jeedom / cmd / set /#cmd_id#'' : le permite ejecutar el comando con el id
#cmd_id#. Puede pasar los parámetros en el mensaje como campos
json` dependiendo del subtipo del comando, por ejemplo:
{control deslizante : 50}
.{seleccionar : 1}
.{valor : "cuco ", fecha y hora : "12/12/2021 10:30:00" }
.jeedom / cmd / get /#cmd_id#'' : solicitar el valor del comando con id
#cmd_id#. Jeedom devolverá
jeedom/cmd/value/#cmd_id#`con el valor de comando en el mensaje.
jeedom / cmd / event /#cmd_id#'' : evento bajo comando con id
#cmd_id# con un mensaje
json` que contiene información diferente, incluido el valor del comando.2 opciones posibles para desinstalar el broker Mosquitto presente localmente en la máquina :
Corredor bajo Docker : Primero, usa el comando Borrar Equipo mqtt2_mosquitto
del complemento Gestión de Docker (Complementos > Programación > Gestión de Docker). A continuación, puede eliminar todo este equipo.
Corredor local : A continuación, debe utilizar el botón rojo Desinstalar Mosquito desde la página de configuración general del plugin.
El complemento puede descubrir automáticamente varios tipos de módulos. Para hacer esto, solo necesita autorizar el descubrimiento automático en la página principal del complemento y reiniciar el demonio.
IMPORTANTE
Para los módulos tipo tasmota es absolutamente necesario que la configuración completa del tema sea
%topic%/%prefix%/
En la fuente Jeedom (la que envía la información) debes ir a la configuración del complemento y hacer clic en “Información MQTT” en el nivel de “Transmisión local Mqtt” y luego copiar lo que se muestra en la ventana que aparece. En el Jeedom de destino (el que recibe) debes hacer clic en “Recibir” en el nivel de “Transmisión local Mqtt” y pegar la información copiada justo antes.
Es posible gracias al complemento transmitir comandos entre dos Jeedom (este sistema está dedicado a reemplazar jeelink), aquí se explica cómo configurarlo :
Luego solo tienes que regresar al jeedom aún en la configuración del complemento y hacer “Enviar descubrimiento”
IMPORTANTE
Esta configuración supone que los jeedoms están conectados al mismo mosquito brocker. Si no puede hacer esto, deberá configurar uno de los dos mosquitos para que envíe los valores de los temas deseados a otro mosquito (ver el siguiente capítulo) o utilizar el modo de asistencia que hará todo por usted
IMPORTANTE
Si cambia el valor del campo “Plantilla de publicación” (vacío de forma predeterminada), la detección automática no creará los pedidos correctos; en este caso, depende de usted adaptar la configuración
IMPORTANTE
Si usaste el asistente de transmisión local no necesitas seguir esta parte, Jeedom ya ha hecho todo por ti
Es posible vincular temas entre varios mosquitto, aquí está la configuración para agregar en mosquitto. La configuración sólo debe realizarse en uno de los brocker mosquitto :
’’’’’’’’ connection #NOM_CONNEXION# address #REMOTE_ADDRESS#:#REMOTE_PORT# topic # both 0 #LOCAL_TOPIC#/ #REMOTE_TOPIC#/ cleansession true notifications false remote_clientid #REMOTE_CLIENT_ID# remote_username #REMOTE_USERNAME# remote_password #REMOTE_PASSWORD# local_username #LOCAL_USERNAME# local_password #LOCAL_PASSWORD# start_type automatic ‘’’’’’’’
Ejemplo: desea enviar equipo de jeedom_2 a jeedom_1 teniendo :
Aquí está la configuración que se debe agregar en jeedom_2 (parámetro mosquito) :
’’’’’’’’ connection jeedom_1 address 192.168.1.45:1883 topic # both 0 jeedom_2/ jeedom_2/ cleansession true notifications false remote_clientid jeedom_2 remote_username jeedom remote_password password_1 local_username jeedom local_password password_2 start_type automatic ‘’’’’’’’
NOTA
- ’‘#NOM_CONNEXION#’’ : puede ser lo que quieras y no importa. Puedes, por ejemplo, hacer name_jeedom_source-name_jeedom_target
- ’‘#REMOTE_CLIENT_ID#’’ : tampoco importa, solo tienes que poner una cadena unica
- ’‘#LOCAL_TOPIC#’’ : nombre del tema local a menudo será “tema raíz de Jeedom” del jeedom local
- ’‘#REMOTE_TOPIC#’’ : El nombre del tema local a menudo será “tema raíz de Jeedom” del jeedom remoto
IMPORTANTE
Por desgracia, los identificadores (“nombre de usuario” y “contraseña”) están disponibles en la página de configuración del complemento en “Autenticación” en el formato “nombre de usuario”:’‘password’’
IMPORTANTE
Sólo debes hacer esto si tu Jeedom no está en las mismas redes locales. Si haces esto con dos Jeedom en las mismas redes locales tendrás problemas de rendimiento, confiabilidad y pérdidas en caso de una interrupción de Internet (o mantenimiento de la nube de Jeedom)). En resumen, esta configuración debe utilizarse como último recurso
Para vincular Jeedom a través de Internet, existen varias posibilidades: puede implementar un mosquito con un host en la nube o abrir uno de sus mosquitos en Internet (tenga cuidado con la seguridad, en caso de un problema, Jeedom no se hace responsable)). O utilice el servicio en la nube Jeedom (el único caso cubierto en esta documentación).
IMPORTANTE
El servicio en la nube Jeedom no está abierto a los usuarios, pero primero debemos asegurarnos de que todas las pruebas de carga y confiabilidad estén bien
Para utilizar el servicio en la nube de Jeedom es muy simple, en el Jeedom fuente (el que envía la información) solo tienes que ir a la configuración del complemento y hacer clic en “Enviar” en el nivel “nube de Jeedom”, luego debes anotar “Identificador de nube Jeedom”. Luego vaya al Jeedom de destino (el que recibe la información) y en la configuración del complemento haga clic en “Recibir” e indique “Cloud ID” de la fuente (recuperado en el paso anterior)).
Eso es todo, todo lo que tiene que hacer es verificar el equipo que se transmitirá en el Jeedom de origen y luego hacer clic en “Enviar descubrimiento” en la configuración del complemento de Jeedom de origen.
IMPORTANTE
El servicio en la nube de Jeedom solo funciona con Jeedom vinculado a la misma cuenta de mercado, no es posible transmitir información entre Jeedom en diferentes cuentas de mercado
Después de una actualización de los paquetes del sistema (apt) o de una actualización desatendida, ya nada funciona
La actualización del paquete mosquitto restablece el archivo de servicio a los valores predeterminados y, por lo tanto, mosquitto ya no apunta al archivo de configuración correcto. Para corregir esto, es muy simple, simplemente reinicie la instalación de mosquitto desde la página de configuración del complemento.