Bonjour,
Je souhaite piloter des équipement depuis une page html mais je ne trouve pas le port à utiliser ou s’il faut activer quelque chose au niveau de mosquito ou ailleurs.
Voici mon code minimal :
<html>
<body>
<script src="https://unpkg.com/mqtt/dist/mqtt.min.js"></script>
<script>
const client = mqtt.connect('ws://192.168.1.86:8080', {username: 'jeedom', password: 'RVch...'});
client.on('connect', () => {console.log('Connecté au serveur MQTT');});
client.on('error', (err) => {console.error('Erreur de connexion:', err);});
client.on('message', (topic, message) => { console.log('Message reçu:', topic, message.toString());});
</script>
</body>
</html>
Si j’utilise ws://192.168.1.86:8080 j’ai ça :
Pour tout autre port (9001, 1883, 8883, …) ou protocole wss j’ai ça :
Donc le seul port qui répond c’est le 8080 mais j’ai un « 101 Switching protocol » que je n’explique pas.
J’ai essayé de modifier la config de mosquito via MQTT Manager en ajoutant ce qui est encadré, sauvegardé, relancé mais ça ne change rien…
Je suis sur Jeedom Luna de base avec JeeZigbee, l’interace web de Zigbee2MQTT répond bien sur http://192.168.1.86:8080/
Memory usage me sort ça si ça peut aider :
/usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel error --socketport 55035 --mqtt_server mqtts://127.0.0.1:8883 --client_key /var/www/html/plugins/mqtt2/data/ssl/client.key --client_crt /var/www/html/plugins/mqtt2/data/ssl/client.crt --ca /var/www/html/plugins/mqtt2/data/ssl/ca.crt --username jeedom --password RVch... --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey 33Kx... --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
Bref si vous avez des pistes pour que cela fonctionne, ni Google, ni ChatGPT ne me donnent plus d’explication