MqttMonitor/MqttClient.py

changeset 78
a22328182bc2
parent 69
9f0f89128698
child 84
044df16e55aa
equal deleted inserted replaced
77:a580238d85de 78:a22328182bc2
5 5
6 """ 6 """
7 Module implementing a PyQt wrapper around the paho MQTT client. 7 Module implementing a PyQt wrapper around the paho MQTT client.
8 """ 8 """
9 9
10 from __future__ import unicode_literals 10 from PyQt5.QtCore import (
11 try: 11 pyqtSignal, pyqtSlot, QObject, QCoreApplication, QTimer
12 str = unicode # __IGNORE_EXCEPTION__ 12 )
13 except NameError:
14 pass
15
16 from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QCoreApplication, \
17 QTimer
18 13
19 import paho.mqtt.client as mqtt 14 import paho.mqtt.client as mqtt
20 15
21 from Utilities.crypto import pwConvert 16 from Utilities.crypto import pwConvert
22 17
104 99
105 def __initCallbacks(self): 100 def __initCallbacks(self):
106 """ 101 """
107 Private method to initialize the MQTT callback methods. 102 Private method to initialize the MQTT callback methods.
108 """ 103 """
109 self.__mqttClient.on_connect = \ 104 self.__mqttClient.on_connect = (
110 lambda client, userdata, flags, rc: self.onConnect.emit( 105 lambda client, userdata, flags, rc: self.onConnect.emit(
111 flags, rc) 106 flags, rc))
112 self.__mqttClient.on_disconnect = \ 107 self.__mqttClient.on_disconnect = (
113 lambda client, userdata, rc: self.onDisconnected.emit(rc) 108 lambda client, userdata, rc: self.onDisconnected.emit(rc))
114 self.__mqttClient.on_log = \ 109 self.__mqttClient.on_log = (
115 lambda client, userdata, level, buf: self.onLog.emit(level, buf) 110 lambda client, userdata, level, buf: self.onLog.emit(level, buf))
116 self.__mqttClient.on_message = \ 111 self.__mqttClient.on_message = (
117 lambda client, userdata, message: self.onMessage.emit( 112 lambda client, userdata, message: self.onMessage.emit(
118 message.topic, message.payload, message.qos, message.retain) 113 message.topic, message.payload, message.qos, message.retain))
119 self.__mqttClient.on_publish = \ 114 self.__mqttClient.on_publish = (
120 lambda client, userdata, mid: self.onPublish.emit(mid) 115 lambda client, userdata, mid: self.onPublish.emit(mid))
121 self.__mqttClient.on_subscribe = \ 116 self.__mqttClient.on_subscribe = (
122 lambda client, userdata, mid, grantedQos: self.onSubscribe.emit( 117 lambda client, userdata, mid, grantedQos: self.onSubscribe.emit(
123 mid, grantedQos) 118 mid, grantedQos))
124 self.__mqttClient.on_unsubscribe = \ 119 self.__mqttClient.on_unsubscribe = (
125 lambda client, userdata, mid: self.onUnsubscribe.emit(mid) 120 lambda client, userdata, mid: self.onUnsubscribe.emit(mid))
126 121
127 @pyqtSlot() 122 @pyqtSlot()
128 def __connectTimeout(self): 123 def __connectTimeout(self):
129 """ 124 """
130 Private slot handling a failed connection attempt. 125 Private slot handling a failed connection attempt.
340 parametersDict["WillQos"], 335 parametersDict["WillQos"],
341 parametersDict["WillRetain"]) 336 parametersDict["WillRetain"])
342 337
343 # step 4: set TLS parameters 338 # step 4: set TLS parameters
344 if parametersDict["TlsEnable"]: 339 if parametersDict["TlsEnable"]:
345 if parametersDict["TlsCaCert"] and \ 340 if (
346 parametersDict["TlsClientCert"]: 341 parametersDict["TlsCaCert"] and
342 parametersDict["TlsClientCert"]
343 ):
347 # use self signed client certificate 344 # use self signed client certificate
348 self.setTLS(caCerts=parametersDict["TlsCaCert"], 345 self.setTLS(caCerts=parametersDict["TlsCaCert"],
349 certFile=parametersDict["TlsClientCert"], 346 certFile=parametersDict["TlsClientCert"],
350 keyFile=parametersDict["TlsClientKey"]) 347 keyFile=parametersDict["TlsClientKey"])
351 elif parametersDict["TlsCaCert"]: 348 elif parametersDict["TlsCaCert"]:

eric ide

mercurial