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

mongo_orm Exception : missing bson key : publish_acl (Exception)

Lorsque vous étendez vos définitions de champs dans les classes de documents mongo_orm, notamment avec des documents intégrés, vous pouvez rencontrer l'erreur d'exécution suivante ( !): Exception : missing bson key : (Exception) Ce n'est pas une erreur dans votre code - votre code se lève, parce que la structure de la base de données n'est pas comme il s'attend à ce qu'elle soit ....

Weiterlesen

Introduction au protocole SNAP

Introduction S.N.A.P. est un protocole de communication entre plusieurs hôtes connectés. Il fournit : - l'adressage - les drapeaux - la demande ack/nak - la détection d'erreur (différentes méthodes de détection d'erreur disponibles) Il peut être exécuté sur différents supports, y compris RS485. Il est optimisé pour une petite empreinte (ressources de calcul et de mémoire limitées), mais il peut être adapté en fonction de vos besoins. En gros,...

Weiterlesen