Merge pull request #539 from JonasArnold/develop

added possibility to configure login data for mqtt broker
This commit is contained in:
Bastian Schroll 2022-03-14 11:02:20 +01:00 committed by GitHub
commit e057a8b132
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 1 deletions

View file

@ -5,6 +5,7 @@
##### Added
- Functionality to fill coordinate values in POC data structure (lat, lon) based on configured locations that match a regular expression in POC message [#510](https://github.com/Schrolli91/BOSWatch/pull/510)
- Extending POC data-structure by Regex named groups matching. [#508](https://github.com/Schrolli91/BOSWatch/pull/508)
- MQTT Plugin: Added possibility to configure login (user and password) for mqtt broker. [#539](https://github.com/Schrolli91/BOSWatch/pull/539)
##### Changed
##### Deprecated
##### Removed

View file

@ -596,6 +596,9 @@ commandPOC =
#Adress from MQTT-Broker
brokeraddress = 192.168.178.27
topic = alarm/data
# username and password for the broker. leave username empty to use anonymous login
brokerusername =
brokerpassword =
#####################
##### Not ready yet #

View file

@ -77,7 +77,11 @@ def run(typ,freq,data):
########## User Plugin CODE ##########
broker_address = globalVars.config.get("mqtt", "brokeraddress")
topic = globalVars.config.get("mqtt", "topic")
mqttClient = mqtt.Client()
broker_username = globalVars.config.get("mqtt", "brokerusername")
broker_password = globalVars.config.get("mqtt", "brokerpassword")
mqttClient = mqtt.Client()
if typ == "FMS":
x = {
@ -112,6 +116,12 @@ def run(typ,freq,data):
logging.warning("Invalid Typ: %s", typ)
y = json.dumps(x)
## only login if there is a username given
if( len(broker_username) > 0 ):
mqttClient.username_pw_set(broker_username, broker_password)
mqttClient.connect(broker_address)
mqttClient.publish(topic,y)
########## User Plugin CODE ##########