Diffusion
La fonction de diffusion de MobileTogether permet à une ou plusieurs solutions de diffuser les messages vers un chapitre. Ces messages sont délivrés via MobileTogether Server vers toutes les solutions MobileTogether connectées qui ont été abonnées à ce chapitre. Notez que seules les solutions MobileTogether peuvent participer dans les diffusions. Ceci est différent que MQTT, là où les messages sont publiés via un broker MQTT et tout appareil - pas seulement des solutions MobileTogether - peuvent participer.
Publier, abonner
Publier et abonner est très direct et chaque fonction est atteinte en déclenchant son action respective :
•Pour publier un message de diffusion, l’action Publier Message de diffusion est définie. Elle a deux paramètres : (i) le chapitre sous lequel les messages sont diffusés; (ii) le texte du message à diffuser. Quand l’action est déclenchée, le message est diffusé et sera délivré à toutes les solutions d’abonnés connectées.
•Pour recevoir un message de diffusion, une solution doit être abonnée dans le chapitre pertinent — définie dans l’action S’abonner au chapitre Diffusion. Une fois que l’action S’abonner a été déclenchée, la solution commencera à recevoir des messages publiés dans le chapitre abonné.
•L’action Se désabonner du chapitre Diffusion vous permet d’arrêter une solution qui reçoit des messages d’un chapitre spécifié. Notez que la réception des messages s’arrêtera si une solution n’est plus connectée à MobileTogether Server. Au cas où une solution arrête de recevoir des messages d’un chapitre donné - soit en raison d'une action Se désabonner ou d’une connexion perdue - alors une action S’abonner vers ce chapitre doit être déclenchée pour que la solution puisse de nouveau recevoir des messages de ce chapitre.
Note : | les messages de diffusion doivent être des strings. |
Actions sur Réception de Message
Quand un message de diffusion est reçu dans une solution, (i) le message est stocké dans $MT_Broadcast variable dynamique de la solution et (ii) l’arborescence de l’action de OnBroadcastReceive est exécutée.
Une variable $MT_Broadcast est déclarée pour chaque message de diffusion reçu. Elle contient du texte du message reçu et peut être utilisée dans l’arborescence de l’action de ce message reçu. Le message qui se trouve dans $MT_Broadcast ne peut pas être accédé une fois que l’arborescence de l’action OnBroadcastReceive a terminé l’exécution. Donc si vous voulez utiliser le message reçu à un moment ultérieur, vous devriez ajouter une action à l’arborescence de l’action OnBroadcastReceive qui store le message reçu dans un nœud de source de page. Une fois que l’arborescence de l’action a été exécutée, la variable $MT_Broadcast n’existera plus. Une nouvelle variable $MT_Broadcast sera déclarée quand le prochain message de diffusion est reçu.
L’arborescence de l’action de OnBroadcastReceive est disponible à deux niveaux :
•Au niveau de la page, à l’événement de page OnBroadcastReceive. L’arborescence de l’action est accédée soit via la propriété des Actions de page (dans le volet Styles & Propriétés) ou via le dialogue Actions de page (via le menu contextuel de la page dans le design).
•Au niveau du projet, via la propriété des Actions de diffusion des propriétés du projet.
Vous pouvez définir les actions à réaliser à un de ces niveaux ou aux deux niveaux. Si une arborescence de l’action a été définie au niveau de la page pour la page active, alors celle-ci est exécutée. Autrement, l’arborescence de l’action au niveau du projet est exécutée - si une telle arborescence existe. Si aucune action n’a été définie à un des niveaux, alors rien ne se passe quand un message de diffusion est reçu.
Simuler des actions sur réception du message
Vous pouvez simuler ce qui se passe quand un message Diffusion est reçu. Appuyez sur F5 pour démarrer le simulateur (capture d’écran ci-dessous).
Pour simuler les messages reçus, nous utilisons un fichier échantillon XML qui est situé par défaut dans votre dossier d’application MobileTogether Designer. Voir le dialogue des Options (onglet Simulation 2) pour le chemin de fichier vers ce fichier. Ce fichier contient des données XML qui stimulent les messages reçus. De cette manière, vous pouvez l’utiliser pour tester l’arborescence d’action qui sera exécutée quand un message est obtenu.
Note : | si le fichier échantillon XML se trouve dans un dossier protégé contre l’écriture (qui est souvent le cas avec les dossiers d’application Windows), vous allez éventuellement devoir ouvrir MobileTogether Designer avec des privilèges d’administrateur. Ceci vous permettrait d’enregistrer les modifications aux données échantillons (pour voir lesquelles, voir ci-dessous). Pour commencer comme administrateur MobileTogether Designer, cliquez avec la touche de droite sur son raccourci dans Windows et sélectionnez la commande pour commencer comme administrateur. |
Lancez le simulateur MobileTogether Designer en appuyant sur F5. Dans le simulateur, utilisez le bouton de la barre d’outils Simuler Réception de Message (encerclé en vert dans la capture d’écran ci-dessus) pour ouvrir le dialogue des Messages.
Dans le dialogue qui apparaît, vous pouvez faire la chose suivante :
•Dans le dialogue des Messages (capture d’écran ci-dessous), les données affichées dans la table du dialogue sont les données dans le fichier échantillon XML. Chaque ligne représente un message reçu. La colonne Contenu contient le texte du message.
Pour simuler la réception dans la solution, sélectionnez une ligne de message et cliquez sur Envoyer et fermer. L’arborescence de l’action de la solution sera exécutée avec de données du message sélectionné et vous pouvez vérifier si les actions ont été exécutées comme vous le vouliez. Dans le dialogue des Messages (capture d'écran ci-dessus), vous pouvez éditer les descriptions des messages et également supprimer un message sélectionné. Si vous cliquez sur Enregistrer après avoir réalisé les modifications, celles-ci seront enregistrées de retour dans le fichier échantillon XML.
•Les messages depuis un fichier échantillon XML sont aussi disponibles dans la liste déroulante du bouton Simuler Réception de Message de la barre d’outils. Sélectionnez un message dans la liste déroulante pour simuler sa réception. De plus, vous pouvez enregistrer un nouveau message en activant Enregistrer un message dans la liste déroulante des commandes, puis en simulant l’envoi et la réception d’un message. Peu importe quels messages sont envoyés tandis que l’enregistrement est activé dans la table des Messages (capture d’écran ci-dessus). Vous pouvez modifier les descriptions tel que requis et enregistrer les messages de retour dans le fichier échantillon XML.