Acciones Al Recibir Mensaje
Después de que una solución haya adquirido una suscripción a un tema en un agente, recibirá mensajes publicados por el agente bajo ese tema. Los datos del mensaje (del último mensaje recibido) se guardarán en la fuente de la página $MT_MQTT y se podrá acceder a ellos desde allí. Las acciones que se deben realizar cuando se recibe un mensaje se determinan en dos eventos en uno de estos niveles: (i) un evento a nivel de página para cada página, y (ii) un evento a nivel de solución (proyecto) (puede accederlo a través de la sección Propiedades del proyecto del panel Estilos y propiedades). Si no se ha definido la gestión de evento a nivel de página, se ejecutarán las acciones de evento a nivel de proyecto.
En esta sección, se describe:
•La fuente de página $MT_MQTT
•Los eventos, uno a nivel de página y otro a nivel de solución, que se activan al recibir un mensaje.
Fuente de página $MT_MQTT
La fuente de página $MT_MQTT tiene esta estructura fija:
$MT_MQTT
Raíz
|-- Mensaje
| @tema
| @contenido
Si una solución haya adquirido una suscripción a un tema en un agente en tiempo de ejecución, entonces esta solución recibirá mensajes publicados por el agente bajo ese tema. El número de repeticiones de mensajes que recibe la solución se determina a nivel de Calidad de Servicio especificado en la suscripción.
El último mensaje recibido se guardará en la fuente de página $MT_MQTT, con el cuerpo del mensaje en el nodo $MT_MQTT/Raíz/Mensaje/@contenido y el nombre del tema en el nodo $MT_MQTT/Raíz/Mensaje/@tema. Estos datos del mensaje en la fuente de página ahora serán accesibles para la solución y podrán utilizarse para el procesamiento de datos.
Nota: | MobileTogether convierte automáticamente el contenido de cada mensaje recibido en una cadena hexBinary y la almacena en este formato en el nodo $MT_MQTT/Raíz/Mensaje/@contenido. Use la función mt-hexBinary-to-string para convertir la cadena hexBinary en una cadena de texto. MobileTogether ofrece dos funciones para la conversión entre cadenas hexBinary y cadenas de texto: mt-hexBinary-to-string y mt-string-to-hexBinary. |
Eventos desencadenados al recibir un mensaje
Cuando una solución recibe un mensaje, se activa el evento AlRecibirMQTT. Puede especificar qué acciones se deben realizar cuando se active este evento.
•Si se han definido acciones de evento AlRecibirMQTT a nivel de página, estas acciones se ejecutan cuando la página esté activa y recibe un mensaje.
•Si no se ha definido ninguna acción de evento AlRecibirMQTT a nivel de página, se ejecutará cualquier acción de evento AlRecibirMQTT definida a nivel de proyecto.
Este mecanismo le permite configurar acciones a nivel de proyecto, que pueden activarse para cualquier página activa que no tenga sus propias acciones de evento AlRecibirMQTT a nivel de página.