Bonjour,
- N’y aurait-il pas une coquille dans le fichier
/plugins/mqtt2/plugin_info/configuration.phpà la ligne 106 ? Il faudrait :
<div class="form-group mqtt2Mode local docker">
au lieu de :
<div class="form-group mqtt2Mode docker">
afin d’afficher les paramètres de Mosquitto en mode « Broker Local ».
- Lors de l’installation du broker en local, il y a toujours le message suivant qui apparait :

alors qu’il ne devrait apparaitre que dans le mode « Broker Local Docker ».
- Lorsque j’essaie d’installer Mosquitto en local, j’ai le message suivant :

Et le démon ne démarre pas avec l’erreur suivante :
[2022-06-19 17:08:47]INFO : Start mqtt2d
[2022-06-19 17:08:47]INFO : Log level on : debug
[2022-06-19 17:08:47]INFO : Socket port : 55035
[2022-06-19 17:08:47]INFO : MQTT : mqtts://127.0.0.1:8883
[2022-06-19 17:08:47]INFO : Username : --password
[2022-06-19 17:08:47]INFO : Password : --callback
[2022-06-19 17:08:47]INFO : PID file : /tmp/jeedom/mqtt2/deamon.pid
[2022-06-19 17:08:47]INFO : Apikey : xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
[2022-06-19 17:08:47]INFO : Callback : http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php
[2022-06-19 17:08:47]INFO : Cycle : 0.3
[2022-06-19 17:08:47]INFO : Client key : /var/www/html/plugins/mqtt2/data/ssl/client.key
[2022-06-19 17:08:47]INFO : Client crt : /var/www/html/plugins/mqtt2/data/ssl/client.crt
[2022-06-19 17:08:47]INFO : CA : /var/www/html/plugins/mqtt2/data/ssl/ca.crt
[2022-06-19 17:08:48]INFO : Connect to mqtt server
[2022-06-19 17:08:48]DEBUG : HTTP listen on 127.0.0.1 port : 55035 started
[2022-06-19 17:08:48]ERROR : Error on connection to mqtt server : Error: Connection refused: Not authorized
On peut voir que le username et password sont vide dans la commande.
En lancant la commande directement; voici ce que j’obtiens :
root@raspberrypi:~# sudo mosquitto_passwd -U /var/www/html/plugins/mqtt2/core/class/../../data/passwords/passwords
Error reading password file: Not a directory
Il semble qu’il y ait le . '/passwords en trop dans le echo à la ligne 89 du fichier /plugins/mqtt2/core/class/mqtt2.class
echo system::getCmdSudo() . ' mosquitto_passwd -U ' . $path . '/passwords';
shell_exec(system::getCmdSudo() . ' mosquitto_passwd -U ' . $path)
Du coup, en éxécutant la commande suivante, je n’ai pas d’erreur :
root@raspberrypi:~# sudo mosquitto_passwd -U /var/www/html/plugins/mqtt2/core/class/../../data/passwords
root@raspberrypi:~#
Mais le démon ne démarre toujours pas :
[2022-06-19 17:10:23]INFO : Start mqtt2d
[2022-06-19 17:10:23]INFO : Log level on : debug
[2022-06-19 17:10:23]INFO : Socket port : 55035
[2022-06-19 17:10:23]INFO : MQTT : mqtts://127.0.0.1:8883
[2022-06-19 17:10:23]INFO : Username : --password
[2022-06-19 17:10:23]INFO : Password : --callback
[2022-06-19 17:10:23]INFO : PID file : /tmp/jeedom/mqtt2/deamon.pid
[2022-06-19 17:10:23]INFO : Apikey : xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
[2022-06-19 17:10:23]INFO : Callback : http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php
[2022-06-19 17:10:23]INFO : Cycle : 0.3
[2022-06-19 17:10:23]INFO : Client key : /var/www/html/plugins/mqtt2/data/ssl/client.key
[2022-06-19 17:10:23]INFO : Client crt : /var/www/html/plugins/mqtt2/data/ssl/client.crt
[2022-06-19 17:10:23]INFO : CA : /var/www/html/plugins/mqtt2/data/ssl/ca.crt
[2022-06-19 17:10:24]INFO : Connect to mqtt server
[2022-06-19 17:10:24]DEBUG : HTTP listen on 127.0.0.1 port : 55035 started
[2022-06-19 17:10:24]ERROR : Error on connection to mqtt server : Error: Connection refused: Not authorized
Et en regardant en base, on peut voir que les identifiants ont disparus suite à la tentative de démarrage du démon :

Au passage, je vois qu’il y a 2 heures de retard dans les logs du démon MQTT.