Alors en demandant gentiment à une IA, elle confirme et donne une approche possible.
Ce serait au niveau de celui qui publie de modifier la manière de publier. Voici une idée de comment implémenter ceci dans notre Nodered.
Le Hic de ce que je peux en déduire c'est que cela va changer la valeur du topic du coup. Il faudrait donc lors de la lecture du topic se débarrasser de l'horodatage inutile pour celui qui lit.
Ce serait au niveau de celui qui publie de modifier la manière de publier. Voici une idée de comment implémenter ceci dans notre Nodered.
Le Hic de ce que je peux en déduire c'est que cela va changer la valeur du topic du coup. Il faudrait donc lors de la lecture du topic se débarrasser de l'horodatage inutile pour celui qui lit.
Citation :Dans MQTT, par défaut, un broker ne renvoie pas un message à tous les abonnés si la valeur du topic reste la même. C’est une fonctionnalité qui permet d’économiser de la bande passante et des ressources.
Cependant, si vous voulez forcer le broker à informer tous les abonnés chaque fois qu’un message est publié, indépendamment du fait que la valeur du topic ait changé ou non, vous pouvez implémenter cette fonctionnalité au niveau de l’éditeur (publisher). L’éditeur peut ajouter un horodatage ou un identifiant unique à chaque message. De cette façon, chaque message sera unique pour le broker et il l’enverra à tous les abonnés.
Voici un exemple de code Javascript (utilisé par Nodered dans un noeud fonction) qui illustre cette approche :
Code :msg.payload = "same message " + Date.now();
return msg;
Dans cet exemple, l’éditeur publie le même message avec un horodatage différent à chaque fois. Ainsi, même si le contenu du message est le même, le broker le considère comme un nouveau message et l’envoie à tous les abonnés.
Jean-Luc