Difusiones
La función Difusiones de MobileTogether permite a una o varias soluciones difundir mensajes acerca de un tema. Estos mensajes se envían a través de MobileTogether Server a todas las soluciones MobileTogether conectadas que se hayan suscrito a este tema. Tenga en cuenta que sólo las soluciones MobileTogether pueden participar en las difusiones. Esto es diferente de MQTT, cuyos mensajes se publican a través de un agente MQTT y cualquier dispositivo puede participar, no sólo las soluciones MobileTogether.
Publicar, suscribirse
Publicar y suscribirse a un tema es sencillo y ambas operaciones se activan mediante la acción correspondiente:
•Para publicar un mensaje de difusión, se define la acción Publicar mensaje de difusión. Hay dos opciones de configuración: (i) el tema bajo el cuál se difunden los mensajes; (ii) el texto del mensaje a difundir. Cuando se activa la acción, el mensaje se difunde y se transmite a todas las soluciones de suscriptores conectadas.
•Para que una solución reciba un mensaje de difusión, debe suscribirse al tema correspondiente definido en la acción Adquirir suscripción a un tema de difusión. Una vez activada la acción Adquirir suscripción la solución empezará a recibir los mensajes publicados en el tema suscrito.
•En cambio, la acción Cancelar suscripción a un tema de difusión sirve para que una solución deje de recibir mensajes del tema especificado. Tenga en cuenta que la solución también dejará de recibir mensajes si deja de estar conectada a MobileTogether Server. Si una solución deja de recibir los mensajes de un tema determinado (ya sea por la acción Cancelar suscripción o por una pérdida de conexión) y quiere volver a recibir mensajes de ese tema, tiene que volver a activar la acción Adquirir suscripción.
Nota: | Los mensajes de difusión sólo pueden ser cadenas. |
Acciones al recibir mensajes
Al recibir un mensaje de difusión en una solución, (i) el mensaje se almacena en la variable dinámica $MT_Broadcast de la solución y (ii) se ejecuta la estructura de acciones de AlRecibirDifusión.
Se declara una variable $MT_Broadcast por cada mensaje de difusión recibido. La variable contiene el texto del mensaje recibido y puede utilizarse en la estructura de acciones respectiva. Una vez que la estructura de acciones AlRecibirDifusión ha terminado de ejecutarse, ya no es posible acceder al mensaje contenido en $MT_Broadcast. De modo que si desea utilizar el mensaje recibido en otro momento, debe añadir una acción a la estructura de acciones de AlRecibirDifusión que almacene el mensaje recibido en un nodo de fuente de página. La variable $MT_Broadcast se eliminará tras la ejecución de la estructura de acciones. No obstante, una nueva variable $MT_Broadcast será declarada al recibir el siguiente mensaje de difusión.
La estructura de acciones de AlRecibirDifusión está disponible en dos niveles:
•A nivel de página, en el evento de página AlRecibirDifusión. Puede acceder a la estructura de acciones a través de la propiedad ‘Acciones de página’ (en el panel Estilos y propiedades) o mediante el cuadro de diálogo ‘Acciones de página’ (a través del menú contextual de la página en el diseño).
•A nivel de proyecto, a través de la propiedad del proyecto ‘Acciones de difusión’.
Puede definir las acciones que se deben realizar en cualquiera de estos niveles o en ambos. Si se ha definido una estructura de acciones a nivel de página para la página activa, ésta se ejecutará. En caso contrario, se ejecutará la estructura del proyecto, si es que existe. De todas maneras, si no se ha definido ninguna acción en ninguno de los dos niveles, al recibir un mensaje de difusión no ocurre nada.
Simular acciones al recibir un mensaje
Puede simular qué acciones que se realizan cuando recibe un mensaje de difusión. Pulse la tecla F5 para iniciar la simulación (imagen siguiente).
Para simular los mensajes recibidos, usamos un archivo XML de muestra que por defecto se encuentra en la carpeta de su aplicación MobileTogether Designer. Puede consultar la ruta de este archivo en el cuadro de diálogo Opciones (pestaña Simulación 2). Este archivo contiene datos XML que simulan los mensajes recibidos. Así que puede usarlo para probar la estructura de acciones que se ejecutará al recibir un mensaje.
Nota: | Si el archivo XML de muestra se encuentra en una carpeta protegida contra escritura (como suele ocurrir con las carpetas de aplicaciones de Windows), puede que tenga que abrir MobileTogether Designer con privilegios de administrador. De este modo, podrá guardar los cambios realizados en los datos de muestra (véase más abajo). Para iniciar MobileTogether Designer como administrador, haga clic con el botón derecho en su tecla de acceso rápido en Windows y seleccione el comando correspondiente. |
Inicie el simulador de MobileTogether Designer pulsando la tecla F5. Para abrir el cuadro de diálogo Mensajes en el simulador, use el botón Simular la recepción de un mensaje de la barra de herramientas (en un círculo verde en la imagen anterior).
En el cuadro de diálogo que aparece, tiene las siguientes opciones:
•En el cuadro de diálogo Mensajes (imagen siguiente), los datos mostrados en la tabla se han extraído del archivo XML de muestra. Cada fila representa un mensaje recibido. La columna Contenido contiene el texto del mensaje.
Para simular la recepción de un mensaje en la solución, seleccione una fila de mensajes y haga clic en Enviar y cerrar. La estructura de acciones de la solución se ejecutará con los datos del mensaje seleccionado. También es posible comprobar si las acciones se han ejecutado tal y como deseaba. En el cuadro de diálogo Mensajes (imagen anterior), puede editar las descripciones de los mensajes y eliminar un mensaje seleccionado. Si hace clic en Guardar después de haber realizado los cambios, éstos se guardarán de nuevo en el archivo XML de muestra.
•Los mensajes del archivo XML de muestra también están disponibles en la lista desplegable del botón Simular la recepción de un mensaje en la barra de herramientas. Para simular la recepción de un mensaje, selecciónelo en la lista desplegable. Además, puede grabar un nuevo mensaje activando primero Grabar un mensaje en la lista desplegable de comandos y luego simulando el envío y la recepción de un mensaje. Todos los mensajes que se envíen mientras la grabación esté activada aparecerán en la tabla Mensajes (imagen anterior). Puede modificar las descripciones como lo desee y volver a guardar los mensajes en el archivo XML de muestra.