Publier un message

Le module Anybus Core nous permet de créer des connexions, des exchanges et des queues, mais ne nous permet pas de publier des messages sur le serveur RabbitMQ. Pour le faire, nous avons besoin d’jouter le module Anybus Publisher. Pour cela, vous pouvez aller dans:

  • Configurations > Module puis l’installer ou
  • Configurations > Configuration > Anybus, cochez les modules à rajouter et Appliquer.

adding_anybus_module

Une fois ce module installé, un sous menu Publishers est apparaît.

Création d’un publisher

Avant de créer notre publisher, nous allons nous connecter au serveur RabbitMQ. Pour cela, allez dans Anybus > General > Connections, sélectionnez la connexion précédemment créée puis cliquez sur le bouton Declare. (Faite la même chose pour la queue et l’exchange à utiliser).

La création d’un Publisher se fait dans Anybus > Publishers > Publishers.

create_publisher_form

Description des champs:

  • Properties: propriétés ajoutés au message
  • Priority: Priorité du message (un nombre entre 0 et 1).
  • Encoding: Encodage
  • Compression: Type de compression des messages (gzip, bzip2, zlib et bzip).
  • Delete message?: Si cette case est cochée, le message est automatique supprimé lorsqu’il est envoyé sur la queue.
  • Content type: Identifiant de format de données sur internet en deux parties. Pour en savoir plus sur les types MIME, cliquez ici
  • Serializer: Format utilisé pour la sérialisation (json, yaml ou pickle)
  • On error: Procédure à suivre en cas d’erreur lors de la publication du message.

Pour les champs suivants, référez-vous à la description fournit lors de la création d’une queue - Connection: - Name: - Exchange: - Routing key: - Binding

Créer et publier un message

Une fois notre publisher configuré, nous pouvons créer et publier un message sur ce publisher. Allez dans Anybus > Publishers > Publisher messages et cliquez sur le bouton créer...

create_publisher_message_form

Renseignez les informations requis et sélectionnez le message (un fichier) à publier. Pour ce test, nous allons publier un fichier fdj.py contenant un script python, qui génère des combinaisons pour certains jeu de la Française Des Jeux

Une fois le message enregistré, il apparait dans la vue liste des messages publiés, avec comme status Draft. Sur la vue formulaire, un lien nous permettant de télécharger le message enregistré est désormais disponible. La prochaine étape consiste donc à publier ce message et pour cela, rien de plus simple: Cliquez sur le bouton Process

after_publish

Notre message est publié...

Pour vérifier si votre message est bien publié sur le serveur RabbitMQ:

  • Connectez-vous à RabbitMq-Server (ci ce n’est pas encore le cas)
  • Affichez la liste des exchanges disponibles
root@anybox:~# rabbitmqctl list_exchanges
Listing exchanges ...
    direct
amq.direct  direct
amq.fanout  fanout
amq.headers headers
amq.match   headers
amq.rabbitmq.log    topic
amq.rabbitmq.trace  topic
amq.topic   topic
demo_anybus_exchange    direct
router  direct
...done.
  • Afficher la liste des queues
root@anybox:~# rabbitmqctl list_queues
Listing queues ...
demo_anybus_queue   1
hello   0
msgs    0
...done.