From 9d646bad605010732c945c5e249956626a46dd29 Mon Sep 17 00:00:00 2001 From: RSd108 Date: Thu, 3 Jun 2021 12:44:58 +0200 Subject: [PATCH 1/4] Use client identifier --- sources/inverter-mqtt/mqtt-init.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sources/inverter-mqtt/mqtt-init.sh b/sources/inverter-mqtt/mqtt-init.sh index e9e6197..bd823d3 100755 --- a/sources/inverter-mqtt/mqtt-init.sh +++ b/sources/inverter-mqtt/mqtt-init.sh @@ -15,6 +15,7 @@ registerTopic () { -p $MQTT_PORT \ -u "$MQTT_USERNAME" \ -P "$MQTT_PASSWORD" \ + -i "voltronic_8a39d0c8faf1" \ -t "$MQTT_TOPIC/sensor/"$MQTT_DEVICENAME"_$1/config" \ -m "{ \"name\": \""$MQTT_DEVICENAME"_$1\", @@ -30,6 +31,7 @@ registerInverterRawCMD () { -p $MQTT_PORT \ -u "$MQTT_USERNAME" \ -P "$MQTT_PASSWORD" \ + -i "voltronic_8a39d0c8faf1" \ -t "$MQTT_TOPIC/sensor/$MQTT_DEVICENAME/config" \ -m "{ \"name\": \""$MQTT_DEVICENAME"\", From a3957d0326733c344697d89335e4c70d3983fe94 Mon Sep 17 00:00:00 2001 From: RSd108 Date: Thu, 3 Jun 2021 12:46:01 +0200 Subject: [PATCH 2/4] Use client identifier --- sources/inverter-mqtt/mqtt-push.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/sources/inverter-mqtt/mqtt-push.sh b/sources/inverter-mqtt/mqtt-push.sh index 5b1002c..cf8a044 100755 --- a/sources/inverter-mqtt/mqtt-push.sh +++ b/sources/inverter-mqtt/mqtt-push.sh @@ -14,6 +14,7 @@ pushMQTTData () { -p $MQTT_PORT \ -u "$MQTT_USERNAME" \ -P "$MQTT_PASSWORD" \ + -i "voltronic_8a39d0c8faf1" \ -t "$MQTT_TOPIC/sensor/"$MQTT_DEVICENAME"_$1" \ -m "$2" From 5ba1072099769164e19dbc199d757c14ec4cbfee Mon Sep 17 00:00:00 2001 From: RSd108 Date: Thu, 3 Jun 2021 12:47:37 +0200 Subject: [PATCH 3/4] Use client identifier --- sources/inverter-mqtt/mqtt-subscriber.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/inverter-mqtt/mqtt-subscriber.sh b/sources/inverter-mqtt/mqtt-subscriber.sh index f30ce27..982b282 100755 --- a/sources/inverter-mqtt/mqtt-subscriber.sh +++ b/sources/inverter-mqtt/mqtt-subscriber.sh @@ -13,4 +13,4 @@ do echo "Incoming request send: [$rawcmd] to inverter." /opt/inverter-cli/bin/inverter_poller -r $rawcmd; -done < <(mosquitto_sub -h $MQTT_SERVER -p $MQTT_PORT -u "$MQTT_USERNAME" -P "$MQTT_PASSWORD" -t "$MQTT_TOPIC/sensor/$MQTT_DEVICENAME" -q 1) +done < <(mosquitto_sub -h $MQTT_SERVER -p $MQTT_PORT -u "$MQTT_USERNAME" -P "$MQTT_PASSWORD" -i "voltronic_8a39d0c8faf1" -t "$MQTT_TOPIC/sensor/$MQTT_DEVICENAME" -q 1) From 037ce5f37b84ea5c06f3371152a40f252e828ba9 Mon Sep 17 00:00:00 2001 From: RSd Date: Thu, 3 Jun 2021 14:47:59 +0200 Subject: [PATCH 4/4] Make the clientid configurable --- config/mqtt.json | 1 + sources/inverter-mqtt/mqtt-init.sh | 5 +++-- sources/inverter-mqtt/mqtt-push.sh | 3 ++- sources/inverter-mqtt/mqtt-subscriber.sh | 3 ++- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/config/mqtt.json b/config/mqtt.json index c6d29be..ded9488 100644 --- a/config/mqtt.json +++ b/config/mqtt.json @@ -5,6 +5,7 @@ "devicename": "voltronic", "username": "", "password": "", + "clientid": "voltronic_bd8041d0cdf131a6ba4e5b3360b8bc5a", "influx": { "enabled": "false", "host": "http://[INFLUX_IP_OR_URL]:8086", diff --git a/sources/inverter-mqtt/mqtt-init.sh b/sources/inverter-mqtt/mqtt-init.sh index bd823d3..a08fbb9 100755 --- a/sources/inverter-mqtt/mqtt-init.sh +++ b/sources/inverter-mqtt/mqtt-init.sh @@ -8,6 +8,7 @@ MQTT_TOPIC=`cat /etc/inverter/mqtt.json | jq '.topic' -r` MQTT_DEVICENAME=`cat /etc/inverter/mqtt.json | jq '.devicename' -r` MQTT_USERNAME=`cat /etc/inverter/mqtt.json | jq '.username' -r` MQTT_PASSWORD=`cat /etc/inverter/mqtt.json | jq '.password' -r` +MQTT_CLIENTID=`cat /etc/inverter/mqtt.json | jq '.clientid' -r` registerTopic () { mosquitto_pub \ @@ -15,7 +16,7 @@ registerTopic () { -p $MQTT_PORT \ -u "$MQTT_USERNAME" \ -P "$MQTT_PASSWORD" \ - -i "voltronic_8a39d0c8faf1" \ + -i $MQTT_CLIENTID \ -t "$MQTT_TOPIC/sensor/"$MQTT_DEVICENAME"_$1/config" \ -m "{ \"name\": \""$MQTT_DEVICENAME"_$1\", @@ -31,7 +32,7 @@ registerInverterRawCMD () { -p $MQTT_PORT \ -u "$MQTT_USERNAME" \ -P "$MQTT_PASSWORD" \ - -i "voltronic_8a39d0c8faf1" \ + -i $MQTT_CLIENTID \ -t "$MQTT_TOPIC/sensor/$MQTT_DEVICENAME/config" \ -m "{ \"name\": \""$MQTT_DEVICENAME"\", diff --git a/sources/inverter-mqtt/mqtt-push.sh b/sources/inverter-mqtt/mqtt-push.sh index cf8a044..e931de0 100755 --- a/sources/inverter-mqtt/mqtt-push.sh +++ b/sources/inverter-mqtt/mqtt-push.sh @@ -8,13 +8,14 @@ pushMQTTData () { MQTT_DEVICENAME=`cat /etc/inverter/mqtt.json | jq '.devicename' -r` MQTT_USERNAME=`cat /etc/inverter/mqtt.json | jq '.username' -r` MQTT_PASSWORD=`cat /etc/inverter/mqtt.json | jq '.password' -r` + MQTT_CLIENTID=`cat /etc/inverter/mqtt.json | jq '.clientid' -r` mosquitto_pub \ -h $MQTT_SERVER \ -p $MQTT_PORT \ -u "$MQTT_USERNAME" \ -P "$MQTT_PASSWORD" \ - -i "voltronic_8a39d0c8faf1" \ + -i $MQTT_CLIENTID \ -t "$MQTT_TOPIC/sensor/"$MQTT_DEVICENAME"_$1" \ -m "$2" diff --git a/sources/inverter-mqtt/mqtt-subscriber.sh b/sources/inverter-mqtt/mqtt-subscriber.sh index 982b282..4901edb 100755 --- a/sources/inverter-mqtt/mqtt-subscriber.sh +++ b/sources/inverter-mqtt/mqtt-subscriber.sh @@ -6,6 +6,7 @@ MQTT_TOPIC=`cat /etc/inverter/mqtt.json | jq '.topic' -r` MQTT_DEVICENAME=`cat /etc/inverter/mqtt.json | jq '.devicename' -r` MQTT_USERNAME=`cat /etc/inverter/mqtt.json | jq '.username' -r` MQTT_PASSWORD=`cat /etc/inverter/mqtt.json | jq '.password' -r` +MQTT_CLIENTID=`cat /etc/inverter/mqtt.json | jq '.clientid' -r` while read rawcmd; do @@ -13,4 +14,4 @@ do echo "Incoming request send: [$rawcmd] to inverter." /opt/inverter-cli/bin/inverter_poller -r $rawcmd; -done < <(mosquitto_sub -h $MQTT_SERVER -p $MQTT_PORT -u "$MQTT_USERNAME" -P "$MQTT_PASSWORD" -i "voltronic_8a39d0c8faf1" -t "$MQTT_TOPIC/sensor/$MQTT_DEVICENAME" -q 1) +done < <(mosquitto_sub -h $MQTT_SERVER -p $MQTT_PORT -u "$MQTT_USERNAME" -P "$MQTT_PASSWORD" -i $MQTT_CLIENTID -t "$MQTT_TOPIC/sensor/$MQTT_DEVICENAME" -q 1)