VerneMQ : econnrefused & Webhook exemple

Les webhooks activent les webhooks comme ceci dans votre vernemq.conf.local (.local lorsque l'exécution se fait sur docker, afin que les paramètres au bas du fichier persistent) : plugins.vmq_webhooks = on vmq_webhooks.js_auth_on_register.hook = auth_on_register vmq_webhooks.js_auth_on_register.endpoint = http://container_picockpit:1200/example/path Notez que si votre webhook n'est pas accessible (econnrefused), l'authentification basée sur la base de données échouera également ... ! Si vous obtenez des erreurs comme...

Weiterlesen

envoi d'une réponse statique

En plus du routage et de la redirection, vous pouvez servir des réponses statiques avec Envoy. Dans ce cas, je veux servir une réponse interdite (403) route_config : virtual_hosts : - nom : picockpit domaines : ["picockpit.local:443", "picockpit.local"] routes : - match : { prefix : "/demo" } direct_response : status : 403 body : inline_string : "Interdit". - match : {préfixe : "/"} route : {cluster : target_picockpit} Il peut aussi servir...

Weiterlesen

Python Paho MQTT client websockets certificats auto-signés, howto

L'utilisation de Paho en Python avec des websockets et des certificats auto-signés pour une connexion websocket https:// présente quelques pièges, c'est pourquoi je les aborde ici avec un exemple de code : import ssl import time import paho.mqtt.client as mqtt class PCPMQTTClient : def on_connect(self, client, userdata, flags, rc) : self.connection_status = rc if rc == 0 : self.connected_flag = True self.connection_error_flag...

Weiterlesen

VerneMQ Docker écrase ma configuration

Situation Vous éditez vernemq.conf, pour constater que votre configuration est écrasée par VerneMQ au prochain démarrage (en utilisant le conteneur Docker officiel). Plus précisément, la section avec les listeners à la fin du fichier vous est "imposée". Solution VerneMQ est lancé à l'aide d'un script (start_vernemq). Le script peut être vu ici : https://github.com/vernemq/docker-vernemq/blob/master/bin/vernemq.sh Le...

Weiterlesen

envoy ne se connecte pas à VerneMQ pour MQTT sur websockets, code d'erreur 503

Quelques informations de base pour tous ceux qui rencontrent les mêmes problèmes, et comment les déboguer. Code d'erreur 503 Voici le code d'erreur que je reçois : Erreur pendant l'échange de données WebSocket : Unxpected response code : 503. Définir la journalisation d'envoy sur debug Voici mon docker-compose.yaml pour envoy : version : '3.7' services : envoy : build : context : ./ dockerfile : Dockerfile nom_du_conteneur :...

Weiterlesen

envoy websockets par configuration de route, configuration de test JavaScript

Dans mon article d'hier, j'ai longuement discuté de la configuration et du test d'envoy pour le proxy des websockets. Aujourd'hui je voudrais ajouter quelques informations supplémentaires. syntaxe correcte pour la mise à jour des websockets par route Vous pouvez activer la mise à jour des websockets par route. Pas besoin de l'ajouter globalement : - nom : envoy.http_connection_manager config : #upgrade_configs : # - upgrade_type : websocket ...

Weiterlesen

envoy, docker et websockets - débogage et configuration

Les websockets sont une technologie passionnante, qui vous permet de transformer une connexion HTTP en une connexion binaire persistante de longue durée, que vous pouvez utiliser pour envoyer des messages bidirectionnels. Pour l'anecdote, le protocole MQTT peut être transporté à l'aide de websockets - ce qui est le seul ( ?) moyen pour un client JavaScript livré par le site web, par exemple. En...

Weiterlesen

manière correcte d'instancier le client Paho en JavaScript pour wss (secure websocket)

La documentation de Paho est malheureusement assez fragmentée pour le moment, et certains liens sur le site d'Eclipse ne fonctionnent pas. Voici quelques liens qui fonctionnent (à partir de 05/2019) : https://www.eclipse.org/paho/clients/js/ https://www.eclipse.org/paho/files/jsdoc/index.html https://github.com/eclipse/paho.mqtt.javascript Et voici un site web fantastique par Steve : http://www.steves-internet-guide.com/using-javascript-mqtt-client-websockets/ Il y a un changement de rupture important dans l'espace de noms Paho, où vous aurez des problèmes en utilisant...

Weiterlesen

Comprendre Erlang et Lua / Luerl pour VerneMQ MongoDB auth_on_register hook

Mon objectif / TLDR L'objectif de cet article de blog est d'expliquer comment définir des points de montage personnalisés pour VerneMQ en modifiant le script Lua d'authentification MongoDB (lua/auth/mongodb.lua). La définition d'un point de montage personnalisé est possible avec VerneMQ non seulement en définissant manuellement des points de montage pour des listeners spécifiques (par exemple, des ports), mais aussi de manière programmatique pendant l'autorisation dans votre...

Weiterlesen