Paho MQTT Python : appeler proxy_set avant de se connecter
Utilisez l'API proxy_set de Paho pour la connexion MQTT et gardez les identifiants du proxy séparés de l'authentification du broker.
Le client Python de Paho dispose d'une méthode proxy_set documentée. Configurez ce client avant de vous connecter au broker MQTT :
client.proxy_set(proxy_type=socks.SOCKS5,
proxy_addr='203.0.113.10',
proxy_port=1080)Cela suppose qu'un client Paho compatible et la prise en charge SOCKS requise sont déjà disponibles. Le point de terminaison est illustratif. Pour un broker accessible publiquement sur une route proxy publique autorisée, la liste de proxys SOCKS5 propose des candidats d'hôte et de port ; vérifiez que le nœud autorise la destination réelle du broker. La méthode documente les types de proxy pris en charge et fait passer le proxy par PySocks.
Le broker conserve son propre nom d'hôte, son port, ses exigences TLS et son authentification MQTT. Un compte proxy ne devient pas le nom d'utilisateur envoyé au broker. De même, définir les identifiants du broker n'authentifie pas le saut proxy.
Vérifiez le transport de la connexion et les destinations autorisées du proxy lorsque la configuration de la connexion échoue. Un proxy transportant de la navigation web n'autorise pas automatiquement le port TCP d'un broker.
Maintenez la boucle réseau MQTT en fonctionnement comme l'exige l'API Paho après la configuration de la connexion. Établir la route proxy est une étape ; elle n'entraîne pas à elle seule les keepalives, les callbacks et les accusés de réception MQTT.