Tue, 23 Jun 2020 19:26:33 +0200
Removed support for Python2.
--- a/ChangeLog Thu May 28 17:36:58 2020 +0200 +++ b/ChangeLog Tue Jun 23 19:26:33 2020 +0200 @@ -1,5 +1,8 @@ ChangeLog --------- +Version 2.0.0: +- removed support for Python2 + Version 1.2.3 - updated Russian translations
--- a/MqttMonitor/Documentation/source/Plugin_Mqtt_Monitor.MqttMonitor.MqttClient.html Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/Documentation/source/Plugin_Mqtt_Monitor.MqttMonitor.MqttClient.html Tue Jun 23 19:26:33 2020 +0200 @@ -18,69 +18,89 @@ </style> </head> -<body><a NAME="top" ID="top"></a> +<body> +<a NAME="top" ID="top"></a> <h1>Plugin_Mqtt_Monitor.MqttMonitor.MqttClient</h1> + <p> Module implementing a PyQt wrapper around the paho MQTT client. </p> <h3>Global Attributes</h3> + <table> <tr><td>None</td></tr> </table> <h3>Classes</h3> + <table> + <tr> <td><a href="#MqttClient">MqttClient</a></td> <td>Class implementing a PyQt wrapper around the paho MQTT client.</td> </tr> </table> <h3>Functions</h3> + <table> + <tr> <td><a href="#mqttConnackMessage">mqttConnackMessage</a></td> <td>Module function to get the string associated with a CONNACK result.</td> -</tr><tr> +</tr> +<tr> <td><a href="#mqttErrorMessage">mqttErrorMessage</a></td> <td>Module function to get the error string associated with an MQTT error number.</td> -</tr><tr> +</tr> +<tr> <td><a href="#mqttLogLevelString">mqttLogLevelString</a></td> <td>Module function to get the log level string associated with a log level.</td> </tr> </table> -<hr /><hr /> +<hr /> +<hr /> <a NAME="MqttClient" ID="MqttClient"></a> <h2>MqttClient</h2> + <p> Class implementing a PyQt wrapper around the paho MQTT client. -</p><h3>Signals</h3> +</p> +<h3>Signals</h3> <dl> + <dt>connectTimeout()</dt> <dd> emitted to indicate, that a connection attempt timed out -</dd><dt>onConnect(flags, rc)</dt> +</dd> +<dt>onConnect(flags, rc)</dt> <dd> emitted after the client has connected to the broker -</dd><dt>onDisconnected(rc)</dt> +</dd> +<dt>onDisconnected(rc)</dt> <dd> emitted after the client has disconnected from the broker -</dd><dt>onLog(level, message)</dt> +</dd> +<dt>onLog(level, message)</dt> <dd> emitted to send client log data -</dd><dt>onMessage(topic, payload, qos, retain)</dt> +</dd> +<dt>onMessage(topic, payload, qos, retain)</dt> <dd> emitted after a message has been received by the client -</dd><dt>onPublish(mid)</dt> +</dd> +<dt>onPublish(mid)</dt> <dd> emitted after a message has been published -</dd><dt>onSubscribe(mid, grantedQos)</dt> +</dd> +<dt>onSubscribe(mid, grantedQos)</dt> <dd> emitted after the client has subscribed to some topics -</dd><dt>onUnsubscribe(mid)</dt> +</dd> +<dt>onUnsubscribe(mid)</dt> <dd> emitted after the client has unsubscribed from some topics @@ -89,172 +109,228 @@ <h3>Derived from</h3> QObject <h3>Class Attributes</h3> + <table> <tr><td>DefaultConnectTimeout</td></tr><tr><td>LogDebug</td></tr><tr><td>LogDisabled</td></tr><tr><td>LogError</td></tr><tr><td>LogInfo</td></tr><tr><td>LogLevelMap</td></tr><tr><td>LogNotice</td></tr><tr><td>LogWarning</td></tr> </table> <h3>Class Methods</h3> + <table> <tr><td>None</td></tr> </table> <h3>Methods</h3> + <table> + <tr> <td><a href="#MqttClient.__init__">MqttClient</a></td> <td>Constructor</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.__connectTimeout">__connectTimeout</a></td> <td>Private slot handling a failed connection attempt.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.__initCallbacks">__initCallbacks</a></td> <td>Private method to initialize the MQTT callback methods.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.clearLastWill">clearLastWill</a></td> <td>Public method to remove a will that was previously configured with setLastWill().</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.connectToServer">connectToServer</a></td> <td>Public method to connect to a remote MQTT broker.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.connectToServerWithOptions">connectToServerWithOptions</a></td> <td>Public method to connect to a remote MQTT broker.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.defaultConnectionOptions">defaultConnectionOptions</a></td> <td>Public method to get a connection options dictionary with default values.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.disconnectFromServer">disconnectFromServer</a></td> <td>Public method to disconnect the client from the remote broker.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.publish">publish</a></td> <td>Public method to publish to a topic.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.reconnectToServer">reconnectToServer</a></td> <td>Public method to reconnect the client with the same parameters.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.reinitialise">reinitialise</a></td> <td>Public method to reinitialize the client with given data.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.setConnectionTimeout">setConnectionTimeout</a></td> <td>Public method to set the connection timeout value.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.setLastWill">setLastWill</a></td> <td>Public method to set the last will of the client.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.setMaxInflightMessages">setMaxInflightMessages</a></td> <td>Public method to set the maximum number of messages with QoS > 0 that can be part way through their network flow at once.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.setMaxQueuedMessages">setMaxQueuedMessages</a></td> <td>Public method to set the maximum number of messages with QoS > 0 that can be pending in the outgoing message queue.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.setTLS">setTLS</a></td> <td>Public method to enable secure connections and set the TLS parameters.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.setUserCredentials">setUserCredentials</a></td> <td>Public method to set the user name and optionally the password.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.setUserData">setUserData</a></td> <td>Public method to set the user data.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.startLoop">startLoop</a></td> <td>Public method to start the MQTT client loop.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.stopLoop">stopLoop</a></td> <td>Public method to stop the MQTT client loop.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.subscribe">subscribe</a></td> <td>Public method to subscribe to topics with quality of service.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttClient.unsubscribe">unsubscribe</a></td> <td>Public method to unsubscribe topics.</td> </tr> </table> <h3>Static Methods</h3> + <table> <tr><td>None</td></tr> </table> + <a NAME="MqttClient.__init__" ID="MqttClient.__init__"></a> <h4>MqttClient (Constructor)</h4> <b>MqttClient</b>(<i>clientId="", cleanSession=True, userdata=None, protocol=mqtt.MQTTv311, transport="tcp", parent=None</i>) + <p> Constructor -</p><dl> +</p> +<dl> + <dt><i>clientId</i> (str)</dt> <dd> ID to be used for the client -</dd><dt><i>cleanSession</i> (bool)</dt> +</dd> +<dt><i>cleanSession</i> (bool)</dt> <dd> flag indicating to start a clean session -</dd><dt><i>userdata</i> (any)</dt> +</dd> +<dt><i>userdata</i> (any)</dt> <dd> user data -</dd><dt><i>protocol</i> (int, one of mqtt.MQTTv31 or mqtt.MQTTv311)</dt> +</dd> +<dt><i>protocol</i> (int, one of mqtt.MQTTv31 or mqtt.MQTTv311)</dt> <dd> version of the MQTT protocol to use -</dd><dt><i>transport</i> (str, one of "tcp" or "websockets")</dt> +</dd> +<dt><i>transport</i> (str, one of "tcp" or "websockets")</dt> <dd> transport to be used -</dd><dt><i>parent</i> (QObject)</dt> +</dd> +<dt><i>parent</i> (QObject)</dt> <dd> reference to the parent object </dd> -</dl><a NAME="MqttClient.__connectTimeout" ID="MqttClient.__connectTimeout"></a> +</dl> +<a NAME="MqttClient.__connectTimeout" ID="MqttClient.__connectTimeout"></a> <h4>MqttClient.__connectTimeout</h4> <b>__connectTimeout</b>(<i></i>) + <p> Private slot handling a failed connection attempt. -</p><a NAME="MqttClient.__initCallbacks" ID="MqttClient.__initCallbacks"></a> +</p> +<a NAME="MqttClient.__initCallbacks" ID="MqttClient.__initCallbacks"></a> <h4>MqttClient.__initCallbacks</h4> <b>__initCallbacks</b>(<i></i>) + <p> Private method to initialize the MQTT callback methods. -</p><a NAME="MqttClient.clearLastWill" ID="MqttClient.clearLastWill"></a> +</p> +<a NAME="MqttClient.clearLastWill" ID="MqttClient.clearLastWill"></a> <h4>MqttClient.clearLastWill</h4> <b>clearLastWill</b>(<i></i>) + <p> Public method to remove a will that was previously configured with setLastWill(). -</p><a NAME="MqttClient.connectToServer" ID="MqttClient.connectToServer"></a> +</p> +<a NAME="MqttClient.connectToServer" ID="MqttClient.connectToServer"></a> <h4>MqttClient.connectToServer</h4> <b>connectToServer</b>(<i>host, port=1883, keepalive=60, bindAddress="", reinit=True</i>) + <p> Public method to connect to a remote MQTT broker. -</p><dl> +</p> +<dl> + <dt><i>host</i> (str)</dt> <dd> host name or IP address of the remote broker -</dd><dt><i>port</i> (int)</dt> +</dd> +<dt><i>port</i> (int)</dt> <dd> network port of the server host to connect to (default: 1883, using TLS: 8883) -</dd><dt><i>keepalive</i> (int)</dt> +</dd> +<dt><i>keepalive</i> (int)</dt> <dd> maximum period in seconds allowed between communications with the broker -</dd><dt><i>bindAddress</i> (str)</dt> +</dd> +<dt><i>bindAddress</i> (str)</dt> <dd> IP address of a local network interface to bind this client to -</dd><dt><i>reinit</i> (bool)</dt> +</dd> +<dt><i>reinit</i> (bool)</dt> <dd> flag indicating to reinitialize the MQTT client before trying to connect with the given parameters </dd> -</dl><a NAME="MqttClient.connectToServerWithOptions" ID="MqttClient.connectToServerWithOptions"></a> +</dl> +<a NAME="MqttClient.connectToServerWithOptions" ID="MqttClient.connectToServerWithOptions"></a> <h4>MqttClient.connectToServerWithOptions</h4> <b>connectToServerWithOptions</b>(<i>host, port=1883, bindAddress="", options=None</i>) + <p> Public method to connect to a remote MQTT broker. -</p><dl> +</p> +<dl> + <dt><i>host</i> (str)</dt> <dd> host name or IP address of the remote broker -</dd><dt><i>port</i> (int)</dt> +</dd> +<dt><i>port</i> (int)</dt> <dd> network port of the server host to connect to (default: 1883, using TLS: 8883) -</dd><dt><i>bindAddress</i> (str)</dt> +</dd> +<dt><i>bindAddress</i> (str)</dt> <dd> IP address of a local network interface to bind this client to -</dd><dt><i>options</i> (dict)</dt> +</dd> +<dt><i>options</i> (dict)</dt> <dd> dictionary containing the connection options. This dictionary should contain the keys "ClientId", "Keepalive", @@ -262,13 +338,16 @@ "WillQos", "WillRetain", "TlsEnable", "TlsCaCert", "TlsClientCert", "TlsClientKey", "ConnectionTimeout" </dd> -</dl><a NAME="MqttClient.defaultConnectionOptions" ID="MqttClient.defaultConnectionOptions"></a> +</dl> +<a NAME="MqttClient.defaultConnectionOptions" ID="MqttClient.defaultConnectionOptions"></a> <h4>MqttClient.defaultConnectionOptions</h4> <b>defaultConnectionOptions</b>(<i></i>) + <p> Public method to get a connection options dictionary with default values. -</p><dl> +</p> +<dl> <dt>Returns:</dt> <dd> dictionary containing the default connection options. It has @@ -277,293 +356,385 @@ "TlsEnable", "TlsCaCert", "TlsClientCert", "TlsClientKey", "ConnectionTimeout". </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> dict </dd> -</dl><a NAME="MqttClient.disconnectFromServer" ID="MqttClient.disconnectFromServer"></a> +</dl> +<a NAME="MqttClient.disconnectFromServer" ID="MqttClient.disconnectFromServer"></a> <h4>MqttClient.disconnectFromServer</h4> <b>disconnectFromServer</b>(<i></i>) + <p> Public method to disconnect the client from the remote broker. -</p><a NAME="MqttClient.publish" ID="MqttClient.publish"></a> +</p> +<a NAME="MqttClient.publish" ID="MqttClient.publish"></a> <h4>MqttClient.publish</h4> <b>publish</b>(<i>topic, payload=None, qos=0, retain=False</i>) + <p> Public method to publish to a topic. -</p><dl> +</p> +<dl> + <dt><i>topic</i> (str)</dt> <dd> topic to publish to -</dd><dt><i>payload</i> (str, bytes, int or float)</dt> +</dd> +<dt><i>payload</i> (str, bytes, int or float)</dt> <dd> data to be published -</dd><dt><i>qos</i> (int, one of 0, 1 or 2)</dt> +</dd> +<dt><i>qos</i> (int, one of 0, 1 or 2)</dt> <dd> quality of service -</dd><dt><i>retain</i> (bool)</dt> +</dd> +<dt><i>retain</i> (bool)</dt> <dd> flag indicating to set as the "last known good"/retained message for the topic </dd> -</dl><dl> +</dl> +<dl> <dt>Returns:</dt> <dd> message info object </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> mqtt.MQTTMessageInfo </dd> -</dl><a NAME="MqttClient.reconnectToServer" ID="MqttClient.reconnectToServer"></a> +</dl> +<a NAME="MqttClient.reconnectToServer" ID="MqttClient.reconnectToServer"></a> <h4>MqttClient.reconnectToServer</h4> <b>reconnectToServer</b>(<i></i>) + <p> Public method to reconnect the client with the same parameters. -</p><a NAME="MqttClient.reinitialise" ID="MqttClient.reinitialise"></a> +</p> +<a NAME="MqttClient.reinitialise" ID="MqttClient.reinitialise"></a> <h4>MqttClient.reinitialise</h4> <b>reinitialise</b>(<i>clientId="", cleanSession=True, userdata=None</i>) + <p> Public method to reinitialize the client with given data. -</p><dl> +</p> +<dl> + <dt><i>clientId</i> (str)</dt> <dd> ID to be used for the client -</dd><dt><i>cleanSession</i> (bool)</dt> +</dd> +<dt><i>cleanSession</i> (bool)</dt> <dd> flag indicating to start a clean session -</dd><dt><i>userdata</i> (any)</dt> +</dd> +<dt><i>userdata</i> (any)</dt> <dd> user data </dd> -</dl><a NAME="MqttClient.setConnectionTimeout" ID="MqttClient.setConnectionTimeout"></a> +</dl> +<a NAME="MqttClient.setConnectionTimeout" ID="MqttClient.setConnectionTimeout"></a> <h4>MqttClient.setConnectionTimeout</h4> <b>setConnectionTimeout</b>(<i>timeout</i>) + <p> Public method to set the connection timeout value. -</p><dl> +</p> +<dl> + <dt><i>timeout</i> (int)</dt> <dd> timeout value to be set in seconds </dd> -</dl><a NAME="MqttClient.setLastWill" ID="MqttClient.setLastWill"></a> +</dl> +<a NAME="MqttClient.setLastWill" ID="MqttClient.setLastWill"></a> <h4>MqttClient.setLastWill</h4> <b>setLastWill</b>(<i>topic, payload=None, qos=0, retain=False</i>) + <p> Public method to set the last will of the client. -</p><dl> +</p> +<dl> + <dt><i>topic</i> (str)</dt> <dd> topic the will message should be published on -</dd><dt><i>payload</i> (str, bytes, int or float)</dt> +</dd> +<dt><i>payload</i> (str, bytes, int or float)</dt> <dd> message to send as a will -</dd><dt><i>qos</i> (int, one of 0, 1 or 2)</dt> +</dd> +<dt><i>qos</i> (int, one of 0, 1 or 2)</dt> <dd> quality of service level to use for the will -</dd><dt><i>retain</i> (bool)</dt> +</dd> +<dt><i>retain</i> (bool)</dt> <dd> flag indicating to set as the "last known good"/retained message for the will topic </dd> -</dl><a NAME="MqttClient.setMaxInflightMessages" ID="MqttClient.setMaxInflightMessages"></a> +</dl> +<a NAME="MqttClient.setMaxInflightMessages" ID="MqttClient.setMaxInflightMessages"></a> <h4>MqttClient.setMaxInflightMessages</h4> <b>setMaxInflightMessages</b>(<i>inflight=20</i>) + <p> Public method to set the maximum number of messages with QoS > 0 that can be part way through their network flow at once. -</p><dl> +</p> +<dl> + <dt><i>inflight</i> (int)</dt> <dd> maximum number of messages in flight </dd> -</dl><a NAME="MqttClient.setMaxQueuedMessages" ID="MqttClient.setMaxQueuedMessages"></a> +</dl> +<a NAME="MqttClient.setMaxQueuedMessages" ID="MqttClient.setMaxQueuedMessages"></a> <h4>MqttClient.setMaxQueuedMessages</h4> <b>setMaxQueuedMessages</b>(<i>queueSize=0</i>) + <p> Public method to set the maximum number of messages with QoS > 0 that can be pending in the outgoing message queue. -</p><dl> +</p> +<dl> + <dt><i>queueSize</i> (int)</dt> <dd> maximum number of queued messages (0 = unlimited) </dd> -</dl><a NAME="MqttClient.setTLS" ID="MqttClient.setTLS"></a> +</dl> +<a NAME="MqttClient.setTLS" ID="MqttClient.setTLS"></a> <h4>MqttClient.setTLS</h4> <b>setTLS</b>(<i>caCerts=None, certFile=None, keyFile=None</i>) + <p> Public method to enable secure connections and set the TLS parameters. -</p><dl> +</p> +<dl> + <dt><i>caCerts</i> (str)</dt> <dd> path to the Certificate Authority certificates file -</dd><dt><i>certFile</i> (str)</dt> +</dd> +<dt><i>certFile</i> (str)</dt> <dd> PEM encoded client certificate file -</dd><dt><i>keyFile</i> (str)</dt> +</dd> +<dt><i>keyFile</i> (str)</dt> <dd> PEM encoded private key file </dd> -</dl><dl> +</dl> +<dl> <dt>Returns:</dt> <dd> tuple containing a success flag and the error string of the paho-mqtt library </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> tuple of (bool, str) </dd> -</dl><a NAME="MqttClient.setUserCredentials" ID="MqttClient.setUserCredentials"></a> +</dl> +<a NAME="MqttClient.setUserCredentials" ID="MqttClient.setUserCredentials"></a> <h4>MqttClient.setUserCredentials</h4> <b>setUserCredentials</b>(<i>username, password=None</i>) + <p> Public method to set the user name and optionally the password. -</p><dl> +</p> +<dl> + <dt><i>username</i> (str)</dt> <dd> user name to be set -</dd><dt><i>password</i> (str)</dt> +</dd> +<dt><i>password</i> (str)</dt> <dd> optional password </dd> -</dl><a NAME="MqttClient.setUserData" ID="MqttClient.setUserData"></a> +</dl> +<a NAME="MqttClient.setUserData" ID="MqttClient.setUserData"></a> <h4>MqttClient.setUserData</h4> <b>setUserData</b>(<i>userdata</i>) + <p> Public method to set the user data. -</p><dl> +</p> +<dl> + <dt><i>userdata</i> (any)</dt> <dd> user data </dd> -</dl><a NAME="MqttClient.startLoop" ID="MqttClient.startLoop"></a> +</dl> +<a NAME="MqttClient.startLoop" ID="MqttClient.startLoop"></a> <h4>MqttClient.startLoop</h4> <b>startLoop</b>(<i></i>) + <p> Public method to start the MQTT client loop. -</p><a NAME="MqttClient.stopLoop" ID="MqttClient.stopLoop"></a> +</p> +<a NAME="MqttClient.stopLoop" ID="MqttClient.stopLoop"></a> <h4>MqttClient.stopLoop</h4> <b>stopLoop</b>(<i></i>) + <p> Public method to stop the MQTT client loop. -</p><a NAME="MqttClient.subscribe" ID="MqttClient.subscribe"></a> +</p> +<a NAME="MqttClient.subscribe" ID="MqttClient.subscribe"></a> <h4>MqttClient.subscribe</h4> <b>subscribe</b>(<i>topic, qos=0</i>) + <p> Public method to subscribe to topics with quality of service. -</p><dl> +</p> +<dl> + <dt><i>topic</i> (str or tuple of (str, int) or list of tuple of (str, int))</dt> <dd> single topic to subscribe to or a tuple with a topic and a QoS or a list of tuples with a topic and a QoS each -</dd><dt><i>qos</i> (int, one of 0, 1 or 2)</dt> +</dd> +<dt><i>qos</i> (int, one of 0, 1 or 2)</dt> <dd> quality of service </dd> -</dl><dl> +</dl> +<dl> <dt>Returns:</dt> <dd> tuple containing the result code and the message ID </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> tuple of (int, int) </dd> -</dl><a NAME="MqttClient.unsubscribe" ID="MqttClient.unsubscribe"></a> +</dl> +<a NAME="MqttClient.unsubscribe" ID="MqttClient.unsubscribe"></a> <h4>MqttClient.unsubscribe</h4> <b>unsubscribe</b>(<i>topic</i>) + <p> Public method to unsubscribe topics. -</p><dl> +</p> +<dl> + <dt><i>topic</i> (str or list of str)</dt> <dd> topic or list of topics to unsubscribe </dd> -</dl><dl> +</dl> +<dl> <dt>Returns:</dt> <dd> tuple containing the result code and the message ID </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> tuple of (int, int) </dd> </dl> <div align="right"><a href="#top">Up</a></div> -<hr /><hr /> +<hr /> +<hr /> <a NAME="mqttConnackMessage" ID="mqttConnackMessage"></a> <h2>mqttConnackMessage</h2> <b>mqttConnackMessage</b>(<i>connackCode</i>) + <p> Module function to get the string associated with a CONNACK result. -</p><dl> +</p> +<dl> + <dt><i>connackCode</i> (int)</dt> <dd> result code of the connection request </dd> -</dl><dl> +</dl> +<dl> <dt>Returns:</dt> <dd> textual representation for the result code </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> str </dd> </dl> <div align="right"><a href="#top">Up</a></div> -<hr /><hr /> +<hr /> +<hr /> <a NAME="mqttErrorMessage" ID="mqttErrorMessage"></a> <h2>mqttErrorMessage</h2> <b>mqttErrorMessage</b>(<i>mqttErrno</i>) + <p> Module function to get the error string associated with an MQTT error number. -</p><dl> +</p> +<dl> + <dt><i>mqttErrno</i> (int)</dt> <dd> result code of a MQTT request </dd> -</dl><dl> +</dl> +<dl> <dt>Returns:</dt> <dd> textual representation of the result code </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> str </dd> </dl> <div align="right"><a href="#top">Up</a></div> -<hr /><hr /> +<hr /> +<hr /> <a NAME="mqttLogLevelString" ID="mqttLogLevelString"></a> <h2>mqttLogLevelString</h2> <b>mqttLogLevelString</b>(<i>mqttLogLevel, isMqttLogLevel=True</i>) + <p> Module function to get the log level string associated with a log level. -</p><dl> +</p> +<dl> + <dt><i>mqttLogLevel</i> (int)</dt> <dd> log level of the paho-mqtt client -</dd><dt><i>isMqttLogLevel</i> (bool)</dt> +</dd> +<dt><i>isMqttLogLevel</i> (bool)</dt> <dd> flag indicating a MQTT log level is given (if False it is the MqttClient variant, i.e. Debug being lowest) </dd> -</dl><dl> +</dl> +<dl> <dt>Returns:</dt> <dd> textual representation of the log level </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> str
--- a/MqttMonitor/Documentation/source/Plugin_Mqtt_Monitor.MqttMonitor.MqttConnectionOptionsDialog.html Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/Documentation/source/Plugin_Mqtt_Monitor.MqttMonitor.MqttConnectionOptionsDialog.html Tue Jun 23 19:26:33 2020 +0200 @@ -18,103 +18,134 @@ </style> </head> -<body><a NAME="top" ID="top"></a> +<body> +<a NAME="top" ID="top"></a> <h1>Plugin_Mqtt_Monitor.MqttMonitor.MqttConnectionOptionsDialog</h1> + <p> Module implementing a dialog to enter MQTT connection options. </p> <h3>Global Attributes</h3> + <table> <tr><td>None</td></tr> </table> <h3>Classes</h3> + <table> + <tr> <td><a href="#MqttConnectionOptionsDialog">MqttConnectionOptionsDialog</a></td> <td>Class implementing a dialog to enter MQTT connection options.</td> </tr> </table> <h3>Functions</h3> + <table> <tr><td>None</td></tr> </table> -<hr /><hr /> +<hr /> +<hr /> <a NAME="MqttConnectionOptionsDialog" ID="MqttConnectionOptionsDialog"></a> <h2>MqttConnectionOptionsDialog</h2> + <p> Class implementing a dialog to enter MQTT connection options. </p> <h3>Derived from</h3> QDialog, Ui_MqttConnectionOptionsDialog <h3>Class Attributes</h3> + <table> <tr><td>None</td></tr> </table> <h3>Class Methods</h3> + <table> <tr><td>None</td></tr> </table> <h3>Methods</h3> + <table> + <tr> <td><a href="#MqttConnectionOptionsDialog.__init__">MqttConnectionOptionsDialog</a></td> <td>Constructor</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionOptionsDialog.__populateDefaults">__populateDefaults</a></td> <td>Private method to populate the dialog.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionOptionsDialog.__updateOkButton">__updateOkButton</a></td> <td>Private method to update the enabled state of the OK button.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionOptionsDialog.getConnectionOptions">getConnectionOptions</a></td> <td>Public method get the entered connection options.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionOptionsDialog.on_buttonBox_clicked">on_buttonBox_clicked</a></td> <td>Private slot to handle the press of a button box button.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionOptionsDialog.on_cleanSessionCheckBox_clicked">on_cleanSessionCheckBox_clicked</a></td> <td>Private slot to handle a change of the clean session selection.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionOptionsDialog.on_clientIdEdit_textChanged">on_clientIdEdit_textChanged</a></td> <td>Private slot handling a change of the client ID string.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionOptionsDialog.on_generateIdButton_clicked">on_generateIdButton_clicked</a></td> <td>Private slot to generate a client ID.</td> </tr> </table> <h3>Static Methods</h3> + <table> <tr><td>None</td></tr> </table> + <a NAME="MqttConnectionOptionsDialog.__init__" ID="MqttConnectionOptionsDialog.__init__"></a> <h4>MqttConnectionOptionsDialog (Constructor)</h4> <b>MqttConnectionOptionsDialog</b>(<i>client, options=None, parent=None</i>) + <p> Constructor -</p><dl> +</p> +<dl> + <dt><i>client</i> (MqttClient)</dt> <dd> reference to the MQTT client object -</dd><dt><i>options</i> (dict)</dt> +</dd> +<dt><i>options</i> (dict)</dt> <dd> dictionary containing the connection options to populate the dialog with. It must have the keys "ClientId", "Keepalive", "CleanSession", "Username", "Password", "WillTopic", "WillMessage", "WillQos", "WillRetain", "TlsEnable", "TlsCaCert", "ConnectionTimeout". -</dd><dt><i>parent</i> (QWidget)</dt> +</dd> +<dt><i>parent</i> (QWidget)</dt> <dd> reference to the parent widget </dd> -</dl><a NAME="MqttConnectionOptionsDialog.__populateDefaults" ID="MqttConnectionOptionsDialog.__populateDefaults"></a> +</dl> +<a NAME="MqttConnectionOptionsDialog.__populateDefaults" ID="MqttConnectionOptionsDialog.__populateDefaults"></a> <h4>MqttConnectionOptionsDialog.__populateDefaults</h4> <b>__populateDefaults</b>(<i>options=None</i>) + <p> Private method to populate the dialog. -</p><p> +</p> +<p> If no options dictionary is given, the dialog will be populated with default values. -</p><dl> +</p> +<dl> + <dt><i>options</i> (dict)</dt> <dd> dictionary containing the connection options to populate @@ -123,17 +154,22 @@ "WillQos", "WillRetain", "TlsEnable", "TlsCaCert", "ConnectionTimeout". </dd> -</dl><a NAME="MqttConnectionOptionsDialog.__updateOkButton" ID="MqttConnectionOptionsDialog.__updateOkButton"></a> +</dl> +<a NAME="MqttConnectionOptionsDialog.__updateOkButton" ID="MqttConnectionOptionsDialog.__updateOkButton"></a> <h4>MqttConnectionOptionsDialog.__updateOkButton</h4> <b>__updateOkButton</b>(<i></i>) + <p> Private method to update the enabled state of the OK button. -</p><a NAME="MqttConnectionOptionsDialog.getConnectionOptions" ID="MqttConnectionOptionsDialog.getConnectionOptions"></a> +</p> +<a NAME="MqttConnectionOptionsDialog.getConnectionOptions" ID="MqttConnectionOptionsDialog.getConnectionOptions"></a> <h4>MqttConnectionOptionsDialog.getConnectionOptions</h4> <b>getConnectionOptions</b>(<i></i>) + <p> Public method get the entered connection options. -</p><dl> +</p> +<dl> <dt>Returns:</dt> <dd> dictionary containing the connection options. It has the keys @@ -141,44 +177,59 @@ "WillTopic", "WillMessage", "WillQos", "WillRetain", "TlsEnable", "TlsCaCert", "ConnectionTimeout". </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> tuple of (int, dict) </dd> -</dl><a NAME="MqttConnectionOptionsDialog.on_buttonBox_clicked" ID="MqttConnectionOptionsDialog.on_buttonBox_clicked"></a> +</dl> +<a NAME="MqttConnectionOptionsDialog.on_buttonBox_clicked" ID="MqttConnectionOptionsDialog.on_buttonBox_clicked"></a> <h4>MqttConnectionOptionsDialog.on_buttonBox_clicked</h4> <b>on_buttonBox_clicked</b>(<i>button</i>) + <p> Private slot to handle the press of a button box button. -</p><dl> +</p> +<dl> + <dt><i>button</i> (QAbstractButton)</dt> <dd> button that has been pressed </dd> -</dl><a NAME="MqttConnectionOptionsDialog.on_cleanSessionCheckBox_clicked" ID="MqttConnectionOptionsDialog.on_cleanSessionCheckBox_clicked"></a> +</dl> +<a NAME="MqttConnectionOptionsDialog.on_cleanSessionCheckBox_clicked" ID="MqttConnectionOptionsDialog.on_cleanSessionCheckBox_clicked"></a> <h4>MqttConnectionOptionsDialog.on_cleanSessionCheckBox_clicked</h4> <b>on_cleanSessionCheckBox_clicked</b>(<i>checked</i>) + <p> Private slot to handle a change of the clean session selection. -</p><dl> +</p> +<dl> + <dt><i>checked</i> (bool)</dt> <dd> current state of the clean session selection </dd> -</dl><a NAME="MqttConnectionOptionsDialog.on_clientIdEdit_textChanged" ID="MqttConnectionOptionsDialog.on_clientIdEdit_textChanged"></a> +</dl> +<a NAME="MqttConnectionOptionsDialog.on_clientIdEdit_textChanged" ID="MqttConnectionOptionsDialog.on_clientIdEdit_textChanged"></a> <h4>MqttConnectionOptionsDialog.on_clientIdEdit_textChanged</h4> <b>on_clientIdEdit_textChanged</b>(<i>clientId</i>) + <p> Private slot handling a change of the client ID string. -</p><dl> +</p> +<dl> + <dt><i>clientId</i> (str)</dt> <dd> client ID </dd> -</dl><a NAME="MqttConnectionOptionsDialog.on_generateIdButton_clicked" ID="MqttConnectionOptionsDialog.on_generateIdButton_clicked"></a> +</dl> +<a NAME="MqttConnectionOptionsDialog.on_generateIdButton_clicked" ID="MqttConnectionOptionsDialog.on_generateIdButton_clicked"></a> <h4>MqttConnectionOptionsDialog.on_generateIdButton_clicked</h4> <b>on_generateIdButton_clicked</b>(<i></i>) + <p> Private slot to generate a client ID. </p>
--- a/MqttMonitor/Documentation/source/Plugin_Mqtt_Monitor.MqttMonitor.MqttConnectionProfilesDialog.html Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/Documentation/source/Plugin_Mqtt_Monitor.MqttMonitor.MqttConnectionProfilesDialog.html Tue Jun 23 19:26:33 2020 +0200 @@ -18,153 +18,201 @@ </style> </head> -<body><a NAME="top" ID="top"></a> +<body> +<a NAME="top" ID="top"></a> <h1>Plugin_Mqtt_Monitor.MqttMonitor.MqttConnectionProfilesDialog</h1> + <p> Module implementing a dialog to edit the MQTT connection profiles. </p> <h3>Global Attributes</h3> + <table> <tr><td>None</td></tr> </table> <h3>Classes</h3> + <table> + <tr> <td><a href="#MqttConnectionProfilesDialog">MqttConnectionProfilesDialog</a></td> <td>Class implementing a dialog to edit the MQTT connection profiles.</td> </tr> </table> <h3>Functions</h3> + <table> <tr><td>None</td></tr> </table> -<hr /><hr /> +<hr /> +<hr /> <a NAME="MqttConnectionProfilesDialog" ID="MqttConnectionProfilesDialog"></a> <h2>MqttConnectionProfilesDialog</h2> + <p> Class implementing a dialog to edit the MQTT connection profiles. </p> <h3>Derived from</h3> QDialog, Ui_MqttConnectionProfilesDialog <h3>Class Attributes</h3> + <table> <tr><td>None</td></tr> </table> <h3>Class Methods</h3> + <table> <tr><td>None</td></tr> </table> <h3>Methods</h3> + <table> + <tr> <td><a href="#MqttConnectionProfilesDialog.__init__">MqttConnectionProfilesDialog</a></td> <td>Constructor</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.__applyProfile">__applyProfile</a></td> <td>Private method to apply the entered data to the list of profiles.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.__clearProfile">__clearProfile</a></td> <td>Private method to clear the profile data entry fields.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.__defaultProfile">__defaultProfile</a></td> <td>Private method to populate non-existing profile items.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.__isChangedProfile">__isChangedProfile</a></td> <td>Private method to check, if the currently shown profile contains some changed data.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.__populateProfile">__populateProfile</a></td> <td>Private method to populate the profile data entry fields.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.__populateProfileDefault">__populateProfileDefault</a></td> <td>Private method to populate the profile data entry fields with default profile values.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.__populateProfilesList">__populateProfilesList</a></td> <td>Private method to populate the list of defined profiles.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.__resetProfile">__resetProfile</a></td> <td>Private method to reset the profile data entry fields to their stored values.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.__updateApplyButton">__updateApplyButton</a></td> <td>Private method to set the state of the Apply button.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.accept">accept</a></td> <td>Public slot to accept the dialog.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.getProfiles">getProfiles</a></td> <td>Public method to return a dictionary of profiles.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_brokerAddressEdit_textChanged">on_brokerAddressEdit_textChanged</a></td> <td>Private slot handling a change of the broker address.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_cleanSessionCheckBox_clicked">on_cleanSessionCheckBox_clicked</a></td> <td>Private slot to handle a change of the clean session selection.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_clientIdEdit_textChanged">on_clientIdEdit_textChanged</a></td> <td>Private slot handling a change of the client ID string.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_copyButton_clicked">on_copyButton_clicked</a></td> <td>Private slot to copy the selected profile entry.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_generateIdButton_clicked">on_generateIdButton_clicked</a></td> <td>Private slot to generate a client ID.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_minusButton_clicked">on_minusButton_clicked</a></td> <td>Private slot to delete the selected entry.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_plusButton_clicked">on_plusButton_clicked</a></td> <td>Private slot to add a new empty profile entry.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_profileButtonBox_clicked">on_profileButtonBox_clicked</a></td> <td>Private slot handling presses of the profile buttons.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_profileEdit_textChanged">on_profileEdit_textChanged</a></td> <td>Private slot to handle changes of the profile name.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_profilesList_currentItemChanged">on_profilesList_currentItemChanged</a></td> <td>Private slot to handle a change of the current profile.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_tlsCertsFileButton_toggled">on_tlsCertsFileButton_toggled</a></td> <td>Private slot handling the selection of using a non-default certificates file.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_tlsCertsFilePicker_textChanged">on_tlsCertsFilePicker_textChanged</a></td> <td>Private slot handling a change of the TLS CA certificates file.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_tlsDefaultCertsButton_toggled">on_tlsDefaultCertsButton_toggled</a></td> <td>Private slot handling the selection of using the default certificates file.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_tlsGroupBox_toggled">on_tlsGroupBox_toggled</a></td> <td>Private slot handling the selection of TLS mode.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_tlsSelfSignedCertsButton_toggled">on_tlsSelfSignedCertsButton_toggled</a></td> <td>Private slot handling the selection of using self signed client certificate and key files.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_tlsSelfSignedCertsFilePicker_textChanged">on_tlsSelfSignedCertsFilePicker_textChanged</a></td> <td>Private slot handling a change of the TLS CA certificates file.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_tlsSelfSignedClientCertFilePicker_textChanged">on_tlsSelfSignedClientCertFilePicker_textChanged</a></td> <td>Private slot handling a change of the TLS client certificate file.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.on_tlsSelfSignedClientKeyFilePicker_textChanged">on_tlsSelfSignedClientKeyFilePicker_textChanged</a></td> <td>Private slot handling a change of the TLS client key file.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttConnectionProfilesDialog.reject">reject</a></td> <td>Public slot to reject the dialog changes.</td> </tr> </table> <h3>Static Methods</h3> + <table> <tr><td>None</td></tr> </table> + <a NAME="MqttConnectionProfilesDialog.__init__" ID="MqttConnectionProfilesDialog.__init__"></a> <h4>MqttConnectionProfilesDialog (Constructor)</h4> <b>MqttConnectionProfilesDialog</b>(<i>client, profiles, parent=None</i>) + <p> Constructor -</p><dl> +</p> +<dl> + <dt><i>client</i> (MqttClient)</dt> <dd> reference to the MQTT client object -</dd><dt><i>profiles</i> (dict)</dt> +</dd> +<dt><i>profiles</i> (dict)</dt> <dd> dictionary containing dictionaries containing the connection parameters. Each entry must have the keys @@ -172,109 +220,143 @@ "Keepalive", "CleanSession", "Username", "Password", "WillTopic", "WillMessage", "WillQos", "WillRetain", "TlsEnable", "TlsCaCert", "TlsClientCert", "TlsClientKey", "ConnectionTimeout". -</dd><dt><i>parent</i> (QWidget)</dt> +</dd> +<dt><i>parent</i> (QWidget)</dt> <dd> reference to the parent widget </dd> -</dl><a NAME="MqttConnectionProfilesDialog.__applyProfile" ID="MqttConnectionProfilesDialog.__applyProfile"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.__applyProfile" ID="MqttConnectionProfilesDialog.__applyProfile"></a> <h4>MqttConnectionProfilesDialog.__applyProfile</h4> <b>__applyProfile</b>(<i></i>) + <p> Private method to apply the entered data to the list of profiles. -</p><dl> +</p> +<dl> <dt>Returns:</dt> <dd> name of the applied profile </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> str </dd> -</dl><a NAME="MqttConnectionProfilesDialog.__clearProfile" ID="MqttConnectionProfilesDialog.__clearProfile"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.__clearProfile" ID="MqttConnectionProfilesDialog.__clearProfile"></a> <h4>MqttConnectionProfilesDialog.__clearProfile</h4> <b>__clearProfile</b>(<i></i>) + <p> Private method to clear the profile data entry fields. -</p><a NAME="MqttConnectionProfilesDialog.__defaultProfile" ID="MqttConnectionProfilesDialog.__defaultProfile"></a> +</p> +<a NAME="MqttConnectionProfilesDialog.__defaultProfile" ID="MqttConnectionProfilesDialog.__defaultProfile"></a> <h4>MqttConnectionProfilesDialog.__defaultProfile</h4> <b>__defaultProfile</b>(<i></i>) + <p> Private method to populate non-existing profile items. -</p><dl> +</p> +<dl> <dt>Returns:</dt> <dd> default dictionary entry </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> dict </dd> -</dl><a NAME="MqttConnectionProfilesDialog.__isChangedProfile" ID="MqttConnectionProfilesDialog.__isChangedProfile"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.__isChangedProfile" ID="MqttConnectionProfilesDialog.__isChangedProfile"></a> <h4>MqttConnectionProfilesDialog.__isChangedProfile</h4> <b>__isChangedProfile</b>(<i></i>) + <p> Private method to check, if the currently shown profile contains some changed data. -</p><dl> +</p> +<dl> <dt>Returns:</dt> <dd> flag indicating changed data </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> bool </dd> -</dl><a NAME="MqttConnectionProfilesDialog.__populateProfile" ID="MqttConnectionProfilesDialog.__populateProfile"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.__populateProfile" ID="MqttConnectionProfilesDialog.__populateProfile"></a> <h4>MqttConnectionProfilesDialog.__populateProfile</h4> <b>__populateProfile</b>(<i>profileName</i>) + <p> Private method to populate the profile data entry fields. -</p><dl> +</p> +<dl> + <dt><i>profileName</i> (str)</dt> <dd> name of the profile to get data from </dd> -</dl><a NAME="MqttConnectionProfilesDialog.__populateProfileDefault" ID="MqttConnectionProfilesDialog.__populateProfileDefault"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.__populateProfileDefault" ID="MqttConnectionProfilesDialog.__populateProfileDefault"></a> <h4>MqttConnectionProfilesDialog.__populateProfileDefault</h4> <b>__populateProfileDefault</b>(<i></i>) + <p> Private method to populate the profile data entry fields with default profile values. -</p><a NAME="MqttConnectionProfilesDialog.__populateProfilesList" ID="MqttConnectionProfilesDialog.__populateProfilesList"></a> +</p> +<a NAME="MqttConnectionProfilesDialog.__populateProfilesList" ID="MqttConnectionProfilesDialog.__populateProfilesList"></a> <h4>MqttConnectionProfilesDialog.__populateProfilesList</h4> <b>__populateProfilesList</b>(<i>currentProfile=""</i>) + <p> Private method to populate the list of defined profiles. -</p><dl> +</p> +<dl> + <dt><i>currentProfile</i> (str)</dt> <dd> name of the current profile </dd> -</dl><a NAME="MqttConnectionProfilesDialog.__resetProfile" ID="MqttConnectionProfilesDialog.__resetProfile"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.__resetProfile" ID="MqttConnectionProfilesDialog.__resetProfile"></a> <h4>MqttConnectionProfilesDialog.__resetProfile</h4> <b>__resetProfile</b>(<i></i>) + <p> Private method to reset the profile data entry fields to their stored values. -</p><a NAME="MqttConnectionProfilesDialog.__updateApplyButton" ID="MqttConnectionProfilesDialog.__updateApplyButton"></a> +</p> +<a NAME="MqttConnectionProfilesDialog.__updateApplyButton" ID="MqttConnectionProfilesDialog.__updateApplyButton"></a> <h4>MqttConnectionProfilesDialog.__updateApplyButton</h4> <b>__updateApplyButton</b>(<i></i>) + <p> Private method to set the state of the Apply button. -</p><a NAME="MqttConnectionProfilesDialog.accept" ID="MqttConnectionProfilesDialog.accept"></a> +</p> +<a NAME="MqttConnectionProfilesDialog.accept" ID="MqttConnectionProfilesDialog.accept"></a> <h4>MqttConnectionProfilesDialog.accept</h4> <b>accept</b>(<i></i>) + <p> Public slot to accept the dialog. -</p><a NAME="MqttConnectionProfilesDialog.getProfiles" ID="MqttConnectionProfilesDialog.getProfiles"></a> +</p> +<a NAME="MqttConnectionProfilesDialog.getProfiles" ID="MqttConnectionProfilesDialog.getProfiles"></a> <h4>MqttConnectionProfilesDialog.getProfiles</h4> <b>getProfiles</b>(<i></i>) + <p> Public method to return a dictionary of profiles. -</p><dl> +</p> +<dl> <dt>Returns:</dt> <dd> dictionary containing dictionaries containing the defined @@ -284,180 +366,248 @@ "TlsEnable", "TlsCaCert", "TlsClientCert", "TlsClientKey", "ConnectionTimeout". </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> dict </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_brokerAddressEdit_textChanged" ID="MqttConnectionProfilesDialog.on_brokerAddressEdit_textChanged"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_brokerAddressEdit_textChanged" ID="MqttConnectionProfilesDialog.on_brokerAddressEdit_textChanged"></a> <h4>MqttConnectionProfilesDialog.on_brokerAddressEdit_textChanged</h4> <b>on_brokerAddressEdit_textChanged</b>(<i>address</i>) + <p> Private slot handling a change of the broker address. -</p><dl> +</p> +<dl> + <dt><i>address</i> (str)</dt> <dd> broker address </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_cleanSessionCheckBox_clicked" ID="MqttConnectionProfilesDialog.on_cleanSessionCheckBox_clicked"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_cleanSessionCheckBox_clicked" ID="MqttConnectionProfilesDialog.on_cleanSessionCheckBox_clicked"></a> <h4>MqttConnectionProfilesDialog.on_cleanSessionCheckBox_clicked</h4> <b>on_cleanSessionCheckBox_clicked</b>(<i>checked</i>) + <p> Private slot to handle a change of the clean session selection. -</p><dl> +</p> +<dl> + <dt><i>checked</i> (bool)</dt> <dd> current state of the clean session selection </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_clientIdEdit_textChanged" ID="MqttConnectionProfilesDialog.on_clientIdEdit_textChanged"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_clientIdEdit_textChanged" ID="MqttConnectionProfilesDialog.on_clientIdEdit_textChanged"></a> <h4>MqttConnectionProfilesDialog.on_clientIdEdit_textChanged</h4> <b>on_clientIdEdit_textChanged</b>(<i>clientId</i>) + <p> Private slot handling a change of the client ID string. -</p><dl> +</p> +<dl> + <dt><i>clientId</i> (str)</dt> <dd> client ID </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_copyButton_clicked" ID="MqttConnectionProfilesDialog.on_copyButton_clicked"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_copyButton_clicked" ID="MqttConnectionProfilesDialog.on_copyButton_clicked"></a> <h4>MqttConnectionProfilesDialog.on_copyButton_clicked</h4> <b>on_copyButton_clicked</b>(<i></i>) + <p> Private slot to copy the selected profile entry. -</p><a NAME="MqttConnectionProfilesDialog.on_generateIdButton_clicked" ID="MqttConnectionProfilesDialog.on_generateIdButton_clicked"></a> +</p> +<a NAME="MqttConnectionProfilesDialog.on_generateIdButton_clicked" ID="MqttConnectionProfilesDialog.on_generateIdButton_clicked"></a> <h4>MqttConnectionProfilesDialog.on_generateIdButton_clicked</h4> <b>on_generateIdButton_clicked</b>(<i></i>) + <p> Private slot to generate a client ID. -</p><a NAME="MqttConnectionProfilesDialog.on_minusButton_clicked" ID="MqttConnectionProfilesDialog.on_minusButton_clicked"></a> +</p> +<a NAME="MqttConnectionProfilesDialog.on_minusButton_clicked" ID="MqttConnectionProfilesDialog.on_minusButton_clicked"></a> <h4>MqttConnectionProfilesDialog.on_minusButton_clicked</h4> <b>on_minusButton_clicked</b>(<i></i>) + <p> Private slot to delete the selected entry. -</p><a NAME="MqttConnectionProfilesDialog.on_plusButton_clicked" ID="MqttConnectionProfilesDialog.on_plusButton_clicked"></a> +</p> +<a NAME="MqttConnectionProfilesDialog.on_plusButton_clicked" ID="MqttConnectionProfilesDialog.on_plusButton_clicked"></a> <h4>MqttConnectionProfilesDialog.on_plusButton_clicked</h4> <b>on_plusButton_clicked</b>(<i></i>) + <p> Private slot to add a new empty profile entry. -</p><a NAME="MqttConnectionProfilesDialog.on_profileButtonBox_clicked" ID="MqttConnectionProfilesDialog.on_profileButtonBox_clicked"></a> +</p> +<a NAME="MqttConnectionProfilesDialog.on_profileButtonBox_clicked" ID="MqttConnectionProfilesDialog.on_profileButtonBox_clicked"></a> <h4>MqttConnectionProfilesDialog.on_profileButtonBox_clicked</h4> <b>on_profileButtonBox_clicked</b>(<i>button</i>) + <p> Private slot handling presses of the profile buttons. -</p><dl> +</p> +<dl> + <dt><i>button</i> (QAbstractButton)</dt> <dd> reference to the pressed button </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_profileEdit_textChanged" ID="MqttConnectionProfilesDialog.on_profileEdit_textChanged"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_profileEdit_textChanged" ID="MqttConnectionProfilesDialog.on_profileEdit_textChanged"></a> <h4>MqttConnectionProfilesDialog.on_profileEdit_textChanged</h4> <b>on_profileEdit_textChanged</b>(<i>name</i>) + <p> Private slot to handle changes of the profile name. -</p><dl> +</p> +<dl> + <dt><i>name</i> (str)</dt> <dd> name of the profile </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_profilesList_currentItemChanged" ID="MqttConnectionProfilesDialog.on_profilesList_currentItemChanged"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_profilesList_currentItemChanged" ID="MqttConnectionProfilesDialog.on_profilesList_currentItemChanged"></a> <h4>MqttConnectionProfilesDialog.on_profilesList_currentItemChanged</h4> <b>on_profilesList_currentItemChanged</b>(<i>current, previous</i>) + <p> Private slot to handle a change of the current profile. -</p><dl> +</p> +<dl> + <dt><i>current</i> (QListWidgetItem)</dt> <dd> new current item -</dd><dt><i>previous</i> (QListWidgetItem)</dt> +</dd> +<dt><i>previous</i> (QListWidgetItem)</dt> <dd> previous current item </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_tlsCertsFileButton_toggled" ID="MqttConnectionProfilesDialog.on_tlsCertsFileButton_toggled"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_tlsCertsFileButton_toggled" ID="MqttConnectionProfilesDialog.on_tlsCertsFileButton_toggled"></a> <h4>MqttConnectionProfilesDialog.on_tlsCertsFileButton_toggled</h4> <b>on_tlsCertsFileButton_toggled</b>(<i>checked</i>) + <p> Private slot handling the selection of using a non-default certificates file. -</p><dl> +</p> +<dl> + <dt><i>checked</i> (bool)</dt> <dd> state of the selection </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_tlsCertsFilePicker_textChanged" ID="MqttConnectionProfilesDialog.on_tlsCertsFilePicker_textChanged"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_tlsCertsFilePicker_textChanged" ID="MqttConnectionProfilesDialog.on_tlsCertsFilePicker_textChanged"></a> <h4>MqttConnectionProfilesDialog.on_tlsCertsFilePicker_textChanged</h4> <b>on_tlsCertsFilePicker_textChanged</b>(<i>path</i>) + <p> Private slot handling a change of the TLS CA certificates file. -</p><dl> +</p> +<dl> + <dt><i>path</i> (str)</dt> <dd> file path </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_tlsDefaultCertsButton_toggled" ID="MqttConnectionProfilesDialog.on_tlsDefaultCertsButton_toggled"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_tlsDefaultCertsButton_toggled" ID="MqttConnectionProfilesDialog.on_tlsDefaultCertsButton_toggled"></a> <h4>MqttConnectionProfilesDialog.on_tlsDefaultCertsButton_toggled</h4> <b>on_tlsDefaultCertsButton_toggled</b>(<i>checked</i>) + <p> Private slot handling the selection of using the default certificates file. -</p><dl> +</p> +<dl> + <dt><i>checked</i> (bool)</dt> <dd> state of the selection </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_tlsGroupBox_toggled" ID="MqttConnectionProfilesDialog.on_tlsGroupBox_toggled"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_tlsGroupBox_toggled" ID="MqttConnectionProfilesDialog.on_tlsGroupBox_toggled"></a> <h4>MqttConnectionProfilesDialog.on_tlsGroupBox_toggled</h4> <b>on_tlsGroupBox_toggled</b>(<i>checked</i>) + <p> Private slot handling the selection of TLS mode. -</p><dl> +</p> +<dl> + <dt><i>checked</i> (bool)</dt> <dd> state of the selection </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_tlsSelfSignedCertsButton_toggled" ID="MqttConnectionProfilesDialog.on_tlsSelfSignedCertsButton_toggled"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_tlsSelfSignedCertsButton_toggled" ID="MqttConnectionProfilesDialog.on_tlsSelfSignedCertsButton_toggled"></a> <h4>MqttConnectionProfilesDialog.on_tlsSelfSignedCertsButton_toggled</h4> <b>on_tlsSelfSignedCertsButton_toggled</b>(<i>checked</i>) + <p> Private slot handling the selection of using self signed client certificate and key files. -</p><dl> +</p> +<dl> + <dt><i>checked</i> (bool)</dt> <dd> state of the selection </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_tlsSelfSignedCertsFilePicker_textChanged" ID="MqttConnectionProfilesDialog.on_tlsSelfSignedCertsFilePicker_textChanged"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_tlsSelfSignedCertsFilePicker_textChanged" ID="MqttConnectionProfilesDialog.on_tlsSelfSignedCertsFilePicker_textChanged"></a> <h4>MqttConnectionProfilesDialog.on_tlsSelfSignedCertsFilePicker_textChanged</h4> <b>on_tlsSelfSignedCertsFilePicker_textChanged</b>(<i>path</i>) + <p> Private slot handling a change of the TLS CA certificates file. -</p><dl> +</p> +<dl> + <dt><i>path</i> (str)</dt> <dd> file path </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_tlsSelfSignedClientCertFilePicker_textChanged" ID="MqttConnectionProfilesDialog.on_tlsSelfSignedClientCertFilePicker_textChanged"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_tlsSelfSignedClientCertFilePicker_textChanged" ID="MqttConnectionProfilesDialog.on_tlsSelfSignedClientCertFilePicker_textChanged"></a> <h4>MqttConnectionProfilesDialog.on_tlsSelfSignedClientCertFilePicker_textChanged</h4> <b>on_tlsSelfSignedClientCertFilePicker_textChanged</b>(<i>path</i>) + <p> Private slot handling a change of the TLS client certificate file. -</p><dl> +</p> +<dl> + <dt><i>path</i> (str)</dt> <dd> file path </dd> -</dl><a NAME="MqttConnectionProfilesDialog.on_tlsSelfSignedClientKeyFilePicker_textChanged" ID="MqttConnectionProfilesDialog.on_tlsSelfSignedClientKeyFilePicker_textChanged"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.on_tlsSelfSignedClientKeyFilePicker_textChanged" ID="MqttConnectionProfilesDialog.on_tlsSelfSignedClientKeyFilePicker_textChanged"></a> <h4>MqttConnectionProfilesDialog.on_tlsSelfSignedClientKeyFilePicker_textChanged</h4> <b>on_tlsSelfSignedClientKeyFilePicker_textChanged</b>(<i>path</i>) + <p> Private slot handling a change of the TLS client key file. -</p><dl> +</p> +<dl> + <dt><i>path</i> (str)</dt> <dd> file path </dd> -</dl><a NAME="MqttConnectionProfilesDialog.reject" ID="MqttConnectionProfilesDialog.reject"></a> +</dl> +<a NAME="MqttConnectionProfilesDialog.reject" ID="MqttConnectionProfilesDialog.reject"></a> <h4>MqttConnectionProfilesDialog.reject</h4> <b>reject</b>(<i></i>) + <p> Public slot to reject the dialog changes. </p>
--- a/MqttMonitor/Documentation/source/Plugin_Mqtt_Monitor.MqttMonitor.MqttMonitorWidget.html Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/Documentation/source/Plugin_Mqtt_Monitor.MqttMonitor.MqttMonitorWidget.html Tue Jun 23 19:26:33 2020 +0200 @@ -18,571 +18,781 @@ </style> </head> -<body><a NAME="top" ID="top"></a> +<body> +<a NAME="top" ID="top"></a> <h1>Plugin_Mqtt_Monitor.MqttMonitor.MqttMonitorWidget</h1> + <p> Module implementing the MQTT Monitor widget. </p> <h3>Global Attributes</h3> + <table> <tr><td>None</td></tr> </table> <h3>Classes</h3> + <table> + <tr> <td><a href="#MqttMonitorWidget">MqttMonitorWidget</a></td> <td>Class implementing the MQTT Monitor widget.</td> </tr> </table> <h3>Functions</h3> + <table> <tr><td>None</td></tr> </table> -<hr /><hr /> +<hr /> +<hr /> <a NAME="MqttMonitorWidget" ID="MqttMonitorWidget"></a> <h2>MqttMonitorWidget</h2> + <p> Class implementing the MQTT Monitor widget. </p> <h3>Derived from</h3> QWidget, Ui_MqttMonitorWidget <h3>Class Attributes</h3> + <table> <tr><td>BrokerStatusTopic</td></tr><tr><td>BrokerStatusTopicLoadPrefix</td></tr><tr><td>BrokerStatusTopicPrefix</td></tr> </table> <h3>Class Methods</h3> + <table> <tr><td>None</td></tr> </table> <h3>Methods</h3> + <table> + <tr> <td><a href="#MqttMonitorWidget.__init__">MqttMonitorWidget</a></td> <td>Constructor</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__addBrokerToRecent">__addBrokerToRecent</a></td> <td>Private method to add a host name to the list of recently connected brokers.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__appendMessage">__appendMessage</a></td> <td>Private method to append a received message to the output.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__brokerConnected">__brokerConnected</a></td> <td>Private slot to handle being connected to a broker.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__brokerDisconnected">__brokerDisconnected</a></td> <td>Private slot to handle a disconnection from the broker.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__clearBrokerStatusLabels">__clearBrokerStatusLabels</a></td> <td>Private method to clear the broker status labels.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__clientLog">__clientLog</a></td> <td>Private slot to handle the receipt of a log message.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__connectTimeout">__connectTimeout</a></td> <td>Private slot handling a timeout during a connection attempt.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__directConnectToBroker">__directConnectToBroker</a></td> <td>Private method to connect to the broker with entered data.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__flashBrokerStatusLabel">__flashBrokerStatusLabel</a></td> <td>Private slot to show the broker status label with some text for 5 seconds.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__handleBrokerLoadStatusMessage">__handleBrokerLoadStatusMessage</a></td> <td>Private method to append a received message to the output.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__handleBrokerStatusMessage">__handleBrokerStatusMessage</a></td> <td>Private method to append a received message to the output.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__loadDefaultDictFactory">__loadDefaultDictFactory</a></td> <td>Private method to populate non-existing load items.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__messagePublished">__messagePublished</a></td> <td>Private slot to handle a message being published.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__messageReceived">__messageReceived</a></td> <td>Private slot to handle the receipt of a message.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__populateBrokerComboBoxes">__populateBrokerComboBoxes</a></td> <td>Private method to populate the broker name and port combo boxes.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__populateProfileComboBox">__populateProfileComboBox</a></td> <td>Private method to populate the profiles selection box.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__profileConnectToBroker">__profileConnectToBroker</a></td> <td>Private method to connect to the broker with selected profile.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__setBrokerStatusSubscribed">__setBrokerStatusSubscribed</a></td> <td>Private method to set the subscription status for the broker status topics.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__setConnectButtonState">__setConnectButtonState</a></td> <td>Private method to set the enabled state of the connect button.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__setConnectionMode">__setConnectionMode</a></td> <td>Private method to set the connection mode.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__topicSubscribed">__topicSubscribed</a></td> <td>Private slot to handle being subscribed to topics.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__topicUnsubscribed">__topicUnsubscribed</a></td> <td>Private slot to handle being unsubcribed from a topic.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__updatePublishTopicComboBox">__updatePublishTopicComboBox</a></td> <td>Private method to update the publish topic combo box.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.__updateUnsubscribeTopicComboBox">__updateUnsubscribeTopicComboBox</a></td> <td>Private method to update the unsubcribe topic combo box.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_brokerComboBox_editTextChanged">on_brokerComboBox_editTextChanged</a></td> <td>Private slot to handling entering or selecting a broker host name.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_brokerConnectionOptionsButton_clicked">on_brokerConnectionOptionsButton_clicked</a></td> <td>Private slot to show a dialog to modify connection options or a dialog to edit connection profiles.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_brokerStatusButton_clicked">on_brokerStatusButton_clicked</a></td> <td>Private slot to subscribe or unsubscribe the broker status topic.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_connectButton_clicked">on_connectButton_clicked</a></td> <td>Private slot to handle a connect or disconnect request.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_logEdit_blockCountChanged">on_logEdit_blockCountChanged</a></td> <td>Private slot handling changes of received messages.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_messagesEdit_blockCountChanged">on_messagesEdit_blockCountChanged</a></td> <td>Private slot handling changes of received messages.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_modeButton_clicked">on_modeButton_clicked</a></td> <td>Private slot to switch between connection profiles and direct connection mode.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_profileComboBox_currentIndexChanged">on_profileComboBox_currentIndexChanged</a></td> <td>Private slot handling the change of the selected profile.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_publishButton_clicked">on_publishButton_clicked</a></td> <td>Private slot to publish the entered message.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_publishClearButton_clicked">on_publishClearButton_clicked</a></td> <td>Private slot to clear the publish data fields.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_publishPayloadFilePicker_textChanged">on_publishPayloadFilePicker_textChanged</a></td> <td>Private slot handling a change of path of the payload file.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_publishTopicComboBox_editTextChanged">on_publishTopicComboBox_editTextChanged</a></td> <td>Private slot to handle changes of the publish topic name.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_saveLogMessagesButton_clicked">on_saveLogMessagesButton_clicked</a></td> <td>Private slot to save the log messages.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_saveMessagesButton_clicked">on_saveMessagesButton_clicked</a></td> <td>Private slot to save the received messages.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_subscribeButton_clicked">on_subscribeButton_clicked</a></td> <td>Private slot to subscribe to the entered topic.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_subscribeTopicEdit_returnPressed">on_subscribeTopicEdit_returnPressed</a></td> <td>Private slot handling the user pressing the return button to subscribe a topic.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_subscribeTopicEdit_textChanged">on_subscribeTopicEdit_textChanged</a></td> <td>Private slot to handle a change of the entered topic.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_unsubscribeButton_clicked">on_unsubscribeButton_clicked</a></td> <td>Private slot to unsubscribe from the selected topic.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorWidget.on_unsubscribeTopicComboBox_currentIndexChanged">on_unsubscribeTopicComboBox_currentIndexChanged</a></td> <td>Private slot to handle the selection of a topic to unsubscribe from.</td> </tr> </table> <h3>Static Methods</h3> + <table> <tr><td>None</td></tr> </table> + <a NAME="MqttMonitorWidget.__init__" ID="MqttMonitorWidget.__init__"></a> <h4>MqttMonitorWidget (Constructor)</h4> -<b>MqttMonitorWidget</b>(<i>plugin, parent=None</i>) +<b>MqttMonitorWidget</b>(<i>plugin, iconSuffix, parent=None</i>) + <p> Constructor -</p><dl> +</p> +<dl> + <dt><i>plugin</i> (MqttMonitorPlugin)</dt> <dd> reference to the plug-in object -</dd><dt><i>parent</i> (QWidget)</dt> +</dd> +<dt><i>iconSuffix</i> (str)</dt> +<dd> +suffix for the icons +</dd> +<dt><i>parent</i> (QWidget)</dt> <dd> reference to the parent widget </dd> -</dl><a NAME="MqttMonitorWidget.__addBrokerToRecent" ID="MqttMonitorWidget.__addBrokerToRecent"></a> +</dl> +<a NAME="MqttMonitorWidget.__addBrokerToRecent" ID="MqttMonitorWidget.__addBrokerToRecent"></a> <h4>MqttMonitorWidget.__addBrokerToRecent</h4> <b>__addBrokerToRecent</b>(<i>host, port</i>) + <p> Private method to add a host name to the list of recently connected brokers. -</p><dl> +</p> +<dl> + <dt><i>host</i> (str)</dt> <dd> host name of broker -</dd><dt><i>port</i> (int)</dt> +</dd> +<dt><i>port</i> (int)</dt> <dd> port number of the connection </dd> -</dl><a NAME="MqttMonitorWidget.__appendMessage" ID="MqttMonitorWidget.__appendMessage"></a> +</dl> +<a NAME="MqttMonitorWidget.__appendMessage" ID="MqttMonitorWidget.__appendMessage"></a> <h4>MqttMonitorWidget.__appendMessage</h4> <b>__appendMessage</b>(<i>topic, payload, qos</i>) + <p> Private method to append a received message to the output. -</p><dl> +</p> +<dl> + <dt><i>topic</i> (str)</dt> <dd> topic of the received message -</dd><dt><i>payload</i> (bytes)</dt> +</dd> +<dt><i>payload</i> (bytes)</dt> <dd> payload of the received message -</dd><dt><i>qos</i> (int)</dt> +</dd> +<dt><i>qos</i> (int)</dt> <dd> quality of service indicator (0, 1, 2) </dd> -</dl><a NAME="MqttMonitorWidget.__brokerConnected" ID="MqttMonitorWidget.__brokerConnected"></a> +</dl> +<a NAME="MqttMonitorWidget.__brokerConnected" ID="MqttMonitorWidget.__brokerConnected"></a> <h4>MqttMonitorWidget.__brokerConnected</h4> <b>__brokerConnected</b>(<i>flags, rc</i>) + <p> Private slot to handle being connected to a broker. -</p><dl> +</p> +<dl> + <dt><i>flags</i> (dict)</dt> <dd> flags set for the connection -</dd><dt><i>rc</i> (int)</dt> +</dd> +<dt><i>rc</i> (int)</dt> <dd> CONNACK result code </dd> -</dl><a NAME="MqttMonitorWidget.__brokerDisconnected" ID="MqttMonitorWidget.__brokerDisconnected"></a> +</dl> +<a NAME="MqttMonitorWidget.__brokerDisconnected" ID="MqttMonitorWidget.__brokerDisconnected"></a> <h4>MqttMonitorWidget.__brokerDisconnected</h4> <b>__brokerDisconnected</b>(<i>rc</i>) + <p> Private slot to handle a disconnection from the broker. -</p><dl> +</p> +<dl> + <dt><i>rc</i> (int)</dt> <dd> MQTT error result code </dd> -</dl><a NAME="MqttMonitorWidget.__clearBrokerStatusLabels" ID="MqttMonitorWidget.__clearBrokerStatusLabels"></a> +</dl> +<a NAME="MqttMonitorWidget.__clearBrokerStatusLabels" ID="MqttMonitorWidget.__clearBrokerStatusLabels"></a> <h4>MqttMonitorWidget.__clearBrokerStatusLabels</h4> <b>__clearBrokerStatusLabels</b>(<i></i>) + <p> Private method to clear the broker status labels. -</p><a NAME="MqttMonitorWidget.__clientLog" ID="MqttMonitorWidget.__clientLog"></a> +</p> +<a NAME="MqttMonitorWidget.__clientLog" ID="MqttMonitorWidget.__clientLog"></a> <h4>MqttMonitorWidget.__clientLog</h4> <b>__clientLog</b>(<i>level, message</i>) + <p> Private slot to handle the receipt of a log message. -</p><dl> +</p> +<dl> + <dt><i>level</i> (int)</dt> <dd> log level -</dd><dt><i>message</i> (str)</dt> +</dd> +<dt><i>message</i> (str)</dt> <dd> log message </dd> -</dl><a NAME="MqttMonitorWidget.__connectTimeout" ID="MqttMonitorWidget.__connectTimeout"></a> +</dl> +<a NAME="MqttMonitorWidget.__connectTimeout" ID="MqttMonitorWidget.__connectTimeout"></a> <h4>MqttMonitorWidget.__connectTimeout</h4> <b>__connectTimeout</b>(<i></i>) + <p> Private slot handling a timeout during a connection attempt. -</p><a NAME="MqttMonitorWidget.__directConnectToBroker" ID="MqttMonitorWidget.__directConnectToBroker"></a> +</p> +<a NAME="MqttMonitorWidget.__directConnectToBroker" ID="MqttMonitorWidget.__directConnectToBroker"></a> <h4>MqttMonitorWidget.__directConnectToBroker</h4> <b>__directConnectToBroker</b>(<i></i>) + <p> Private method to connect to the broker with entered data. -</p><a NAME="MqttMonitorWidget.__flashBrokerStatusLabel" ID="MqttMonitorWidget.__flashBrokerStatusLabel"></a> +</p> +<a NAME="MqttMonitorWidget.__flashBrokerStatusLabel" ID="MqttMonitorWidget.__flashBrokerStatusLabel"></a> <h4>MqttMonitorWidget.__flashBrokerStatusLabel</h4> <b>__flashBrokerStatusLabel</b>(<i>message</i>) + <p> Private slot to show the broker status label with some text for 5 seconds. -</p><dl> +</p> +<dl> + <dt><i>message</i> (str)</dt> <dd> message to be shown </dd> -</dl><a NAME="MqttMonitorWidget.__handleBrokerLoadStatusMessage" ID="MqttMonitorWidget.__handleBrokerLoadStatusMessage"></a> +</dl> +<a NAME="MqttMonitorWidget.__handleBrokerLoadStatusMessage" ID="MqttMonitorWidget.__handleBrokerLoadStatusMessage"></a> <h4>MqttMonitorWidget.__handleBrokerLoadStatusMessage</h4> <b>__handleBrokerLoadStatusMessage</b>(<i>topic, payloadStr</i>) + <p> Private method to append a received message to the output. -</p><dl> +</p> +<dl> + <dt><i>topic</i> (str)</dt> <dd> topic of the received message -</dd><dt><i>payloadStr</i> (str)</dt> +</dd> +<dt><i>payloadStr</i> (str)</dt> <dd> string representation of the payload of the received message </dd> -</dl><a NAME="MqttMonitorWidget.__handleBrokerStatusMessage" ID="MqttMonitorWidget.__handleBrokerStatusMessage"></a> +</dl> +<a NAME="MqttMonitorWidget.__handleBrokerStatusMessage" ID="MqttMonitorWidget.__handleBrokerStatusMessage"></a> <h4>MqttMonitorWidget.__handleBrokerStatusMessage</h4> <b>__handleBrokerStatusMessage</b>(<i>topic, payload</i>) + <p> Private method to append a received message to the output. -</p><dl> +</p> +<dl> + <dt><i>topic</i> (str)</dt> <dd> topic of the received message -</dd><dt><i>payload</i> (bytes)</dt> +</dd> +<dt><i>payload</i> (bytes)</dt> <dd> payload of the received message </dd> -</dl><a NAME="MqttMonitorWidget.__loadDefaultDictFactory" ID="MqttMonitorWidget.__loadDefaultDictFactory"></a> +</dl> +<a NAME="MqttMonitorWidget.__loadDefaultDictFactory" ID="MqttMonitorWidget.__loadDefaultDictFactory"></a> <h4>MqttMonitorWidget.__loadDefaultDictFactory</h4> <b>__loadDefaultDictFactory</b>(<i></i>) + <p> Private method to populate non-existing load items. -</p><dl> +</p> +<dl> <dt>Returns:</dt> <dd> default dictionary entry </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> dict </dd> -</dl><a NAME="MqttMonitorWidget.__messagePublished" ID="MqttMonitorWidget.__messagePublished"></a> +</dl> +<a NAME="MqttMonitorWidget.__messagePublished" ID="MqttMonitorWidget.__messagePublished"></a> <h4>MqttMonitorWidget.__messagePublished</h4> <b>__messagePublished</b>(<i>mid</i>) + <p> Private slot to handle a message being published. -</p><dl> +</p> +<dl> + <dt><i>mid</i> (int)</dt> <dd> ID of the published message </dd> -</dl><a NAME="MqttMonitorWidget.__messageReceived" ID="MqttMonitorWidget.__messageReceived"></a> +</dl> +<a NAME="MqttMonitorWidget.__messageReceived" ID="MqttMonitorWidget.__messageReceived"></a> <h4>MqttMonitorWidget.__messageReceived</h4> <b>__messageReceived</b>(<i>topic, payload, qos, retain</i>) + <p> Private slot to handle the receipt of a message. -</p><dl> +</p> +<dl> + <dt><i>topic</i> (str)</dt> <dd> topic of the message -</dd><dt><i>payload</i> (bytes)</dt> +</dd> +<dt><i>payload</i> (bytes)</dt> <dd> payload (i.e. data) of the message -</dd><dt><i>qos</i> (int)</dt> +</dd> +<dt><i>qos</i> (int)</dt> <dd> quality of service indicator -</dd><dt><i>retain</i> (bool)</dt> +</dd> +<dt><i>retain</i> (bool)</dt> <dd> flag indicating a retained message </dd> -</dl><a NAME="MqttMonitorWidget.__populateBrokerComboBoxes" ID="MqttMonitorWidget.__populateBrokerComboBoxes"></a> +</dl> +<a NAME="MqttMonitorWidget.__populateBrokerComboBoxes" ID="MqttMonitorWidget.__populateBrokerComboBoxes"></a> <h4>MqttMonitorWidget.__populateBrokerComboBoxes</h4> <b>__populateBrokerComboBoxes</b>(<i></i>) + <p> Private method to populate the broker name and port combo boxes. -</p><a NAME="MqttMonitorWidget.__populateProfileComboBox" ID="MqttMonitorWidget.__populateProfileComboBox"></a> +</p> +<a NAME="MqttMonitorWidget.__populateProfileComboBox" ID="MqttMonitorWidget.__populateProfileComboBox"></a> <h4>MqttMonitorWidget.__populateProfileComboBox</h4> <b>__populateProfileComboBox</b>(<i></i>) + <p> Private method to populate the profiles selection box. -</p><a NAME="MqttMonitorWidget.__profileConnectToBroker" ID="MqttMonitorWidget.__profileConnectToBroker"></a> +</p> +<a NAME="MqttMonitorWidget.__profileConnectToBroker" ID="MqttMonitorWidget.__profileConnectToBroker"></a> <h4>MqttMonitorWidget.__profileConnectToBroker</h4> <b>__profileConnectToBroker</b>(<i></i>) + <p> Private method to connect to the broker with selected profile. -</p><a NAME="MqttMonitorWidget.__setBrokerStatusSubscribed" ID="MqttMonitorWidget.__setBrokerStatusSubscribed"></a> +</p> +<a NAME="MqttMonitorWidget.__setBrokerStatusSubscribed" ID="MqttMonitorWidget.__setBrokerStatusSubscribed"></a> <h4>MqttMonitorWidget.__setBrokerStatusSubscribed</h4> <b>__setBrokerStatusSubscribed</b>(<i>subscribed</i>) + <p> Private method to set the subscription status for the broker status topics. -</p><dl> +</p> +<dl> + <dt><i>subscribed</i> (bool)</dt> <dd> subscription status for the broker status topics </dd> -</dl><a NAME="MqttMonitorWidget.__setConnectButtonState" ID="MqttMonitorWidget.__setConnectButtonState"></a> +</dl> +<a NAME="MqttMonitorWidget.__setConnectButtonState" ID="MqttMonitorWidget.__setConnectButtonState"></a> <h4>MqttMonitorWidget.__setConnectButtonState</h4> <b>__setConnectButtonState</b>(<i></i>) + <p> Private method to set the enabled state of the connect button. -</p><a NAME="MqttMonitorWidget.__setConnectionMode" ID="MqttMonitorWidget.__setConnectionMode"></a> +</p> +<a NAME="MqttMonitorWidget.__setConnectionMode" ID="MqttMonitorWidget.__setConnectionMode"></a> <h4>MqttMonitorWidget.__setConnectionMode</h4> <b>__setConnectionMode</b>(<i>profileMode</i>) + <p> Private method to set the connection mode. -</p><dl> +</p> +<dl> + <dt><i>profileMode</i> (bool)</dt> <dd> flag indicating the profile connection mode </dd> -</dl><a NAME="MqttMonitorWidget.__topicSubscribed" ID="MqttMonitorWidget.__topicSubscribed"></a> +</dl> +<a NAME="MqttMonitorWidget.__topicSubscribed" ID="MqttMonitorWidget.__topicSubscribed"></a> <h4>MqttMonitorWidget.__topicSubscribed</h4> <b>__topicSubscribed</b>(<i>mid, grantedQos</i>) + <p> Private slot to handle being subscribed to topics. -</p><dl> +</p> +<dl> + <dt><i>mid</i> (int)</dt> <dd> ID of the subscribe request -</dd><dt><i>grantedQos</i> (tuple of int)</dt> +</dd> +<dt><i>grantedQos</i> (tuple of int)</dt> <dd> tuple of granted quality of service </dd> -</dl><a NAME="MqttMonitorWidget.__topicUnsubscribed" ID="MqttMonitorWidget.__topicUnsubscribed"></a> +</dl> +<a NAME="MqttMonitorWidget.__topicUnsubscribed" ID="MqttMonitorWidget.__topicUnsubscribed"></a> <h4>MqttMonitorWidget.__topicUnsubscribed</h4> <b>__topicUnsubscribed</b>(<i>mid</i>) + <p> Private slot to handle being unsubcribed from a topic. -</p><dl> +</p> +<dl> + <dt><i>mid</i> (int)</dt> <dd> ID of the unsubscribe request </dd> -</dl><a NAME="MqttMonitorWidget.__updatePublishTopicComboBox" ID="MqttMonitorWidget.__updatePublishTopicComboBox"></a> +</dl> +<a NAME="MqttMonitorWidget.__updatePublishTopicComboBox" ID="MqttMonitorWidget.__updatePublishTopicComboBox"></a> <h4>MqttMonitorWidget.__updatePublishTopicComboBox</h4> <b>__updatePublishTopicComboBox</b>(<i>resetTopic=True</i>) + <p> Private method to update the publish topic combo box. -</p><dl> +</p> +<dl> + <dt><i>resetTopic</i> (bool)</dt> <dd> flag indicating to reset the topic </dd> -</dl><a NAME="MqttMonitorWidget.__updateUnsubscribeTopicComboBox" ID="MqttMonitorWidget.__updateUnsubscribeTopicComboBox"></a> +</dl> +<a NAME="MqttMonitorWidget.__updateUnsubscribeTopicComboBox" ID="MqttMonitorWidget.__updateUnsubscribeTopicComboBox"></a> <h4>MqttMonitorWidget.__updateUnsubscribeTopicComboBox</h4> <b>__updateUnsubscribeTopicComboBox</b>(<i></i>) + <p> Private method to update the unsubcribe topic combo box. -</p><a NAME="MqttMonitorWidget.on_brokerComboBox_editTextChanged" ID="MqttMonitorWidget.on_brokerComboBox_editTextChanged"></a> +</p> +<a NAME="MqttMonitorWidget.on_brokerComboBox_editTextChanged" ID="MqttMonitorWidget.on_brokerComboBox_editTextChanged"></a> <h4>MqttMonitorWidget.on_brokerComboBox_editTextChanged</h4> <b>on_brokerComboBox_editTextChanged</b>(<i>host</i>) + <p> Private slot to handling entering or selecting a broker host name. -</p><dl> +</p> +<dl> + <dt><i>host</i> (str)</dt> <dd> host name of the broker </dd> -</dl><a NAME="MqttMonitorWidget.on_brokerConnectionOptionsButton_clicked" ID="MqttMonitorWidget.on_brokerConnectionOptionsButton_clicked"></a> +</dl> +<a NAME="MqttMonitorWidget.on_brokerConnectionOptionsButton_clicked" ID="MqttMonitorWidget.on_brokerConnectionOptionsButton_clicked"></a> <h4>MqttMonitorWidget.on_brokerConnectionOptionsButton_clicked</h4> <b>on_brokerConnectionOptionsButton_clicked</b>(<i></i>) + <p> Private slot to show a dialog to modify connection options or a dialog to edit connection profiles. -</p><a NAME="MqttMonitorWidget.on_brokerStatusButton_clicked" ID="MqttMonitorWidget.on_brokerStatusButton_clicked"></a> +</p> +<a NAME="MqttMonitorWidget.on_brokerStatusButton_clicked" ID="MqttMonitorWidget.on_brokerStatusButton_clicked"></a> <h4>MqttMonitorWidget.on_brokerStatusButton_clicked</h4> <b>on_brokerStatusButton_clicked</b>(<i></i>) + <p> Private slot to subscribe or unsubscribe the broker status topic. -</p><a NAME="MqttMonitorWidget.on_connectButton_clicked" ID="MqttMonitorWidget.on_connectButton_clicked"></a> +</p> +<a NAME="MqttMonitorWidget.on_connectButton_clicked" ID="MqttMonitorWidget.on_connectButton_clicked"></a> <h4>MqttMonitorWidget.on_connectButton_clicked</h4> <b>on_connectButton_clicked</b>(<i></i>) + <p> Private slot to handle a connect or disconnect request. -</p><a NAME="MqttMonitorWidget.on_logEdit_blockCountChanged" ID="MqttMonitorWidget.on_logEdit_blockCountChanged"></a> +</p> +<a NAME="MqttMonitorWidget.on_logEdit_blockCountChanged" ID="MqttMonitorWidget.on_logEdit_blockCountChanged"></a> <h4>MqttMonitorWidget.on_logEdit_blockCountChanged</h4> <b>on_logEdit_blockCountChanged</b>(<i>newBlockCount</i>) + <p> Private slot handling changes of received messages. -</p><dl> +</p> +<dl> + <dt><i>newBlockCount</i> (int)</dt> <dd> (ignored) </dd> -</dl><a NAME="MqttMonitorWidget.on_messagesEdit_blockCountChanged" ID="MqttMonitorWidget.on_messagesEdit_blockCountChanged"></a> +</dl> +<a NAME="MqttMonitorWidget.on_messagesEdit_blockCountChanged" ID="MqttMonitorWidget.on_messagesEdit_blockCountChanged"></a> <h4>MqttMonitorWidget.on_messagesEdit_blockCountChanged</h4> <b>on_messagesEdit_blockCountChanged</b>(<i>newBlockCount</i>) + <p> Private slot handling changes of received messages. -</p><dl> +</p> +<dl> + <dt><i>newBlockCount</i> (int)</dt> <dd> (ignored) </dd> -</dl><a NAME="MqttMonitorWidget.on_modeButton_clicked" ID="MqttMonitorWidget.on_modeButton_clicked"></a> +</dl> +<a NAME="MqttMonitorWidget.on_modeButton_clicked" ID="MqttMonitorWidget.on_modeButton_clicked"></a> <h4>MqttMonitorWidget.on_modeButton_clicked</h4> <b>on_modeButton_clicked</b>(<i></i>) + <p> Private slot to switch between connection profiles and direct connection mode. -</p><a NAME="MqttMonitorWidget.on_profileComboBox_currentIndexChanged" ID="MqttMonitorWidget.on_profileComboBox_currentIndexChanged"></a> +</p> +<a NAME="MqttMonitorWidget.on_profileComboBox_currentIndexChanged" ID="MqttMonitorWidget.on_profileComboBox_currentIndexChanged"></a> <h4>MqttMonitorWidget.on_profileComboBox_currentIndexChanged</h4> <b>on_profileComboBox_currentIndexChanged</b>(<i>profileName</i>) + <p> Private slot handling the change of the selected profile. -</p><dl> +</p> +<dl> + <dt><i>profileName</i> (str)</dt> <dd> name of the selected profile </dd> -</dl><a NAME="MqttMonitorWidget.on_publishButton_clicked" ID="MqttMonitorWidget.on_publishButton_clicked"></a> +</dl> +<a NAME="MqttMonitorWidget.on_publishButton_clicked" ID="MqttMonitorWidget.on_publishButton_clicked"></a> <h4>MqttMonitorWidget.on_publishButton_clicked</h4> <b>on_publishButton_clicked</b>(<i></i>) + <p> Private slot to publish the entered message. -</p><a NAME="MqttMonitorWidget.on_publishClearButton_clicked" ID="MqttMonitorWidget.on_publishClearButton_clicked"></a> +</p> +<a NAME="MqttMonitorWidget.on_publishClearButton_clicked" ID="MqttMonitorWidget.on_publishClearButton_clicked"></a> <h4>MqttMonitorWidget.on_publishClearButton_clicked</h4> <b>on_publishClearButton_clicked</b>(<i></i>) + <p> Private slot to clear the publish data fields. -</p><a NAME="MqttMonitorWidget.on_publishPayloadFilePicker_textChanged" ID="MqttMonitorWidget.on_publishPayloadFilePicker_textChanged"></a> +</p> +<a NAME="MqttMonitorWidget.on_publishPayloadFilePicker_textChanged" ID="MqttMonitorWidget.on_publishPayloadFilePicker_textChanged"></a> <h4>MqttMonitorWidget.on_publishPayloadFilePicker_textChanged</h4> <b>on_publishPayloadFilePicker_textChanged</b>(<i>path</i>) + <p> Private slot handling a change of path of the payload file. -</p><dl> +</p> +<dl> + <dt><i>path</i> (str)</dt> <dd> path of the payload file </dd> -</dl><a NAME="MqttMonitorWidget.on_publishTopicComboBox_editTextChanged" ID="MqttMonitorWidget.on_publishTopicComboBox_editTextChanged"></a> +</dl> +<a NAME="MqttMonitorWidget.on_publishTopicComboBox_editTextChanged" ID="MqttMonitorWidget.on_publishTopicComboBox_editTextChanged"></a> <h4>MqttMonitorWidget.on_publishTopicComboBox_editTextChanged</h4> <b>on_publishTopicComboBox_editTextChanged</b>(<i>topic</i>) + <p> Private slot to handle changes of the publish topic name. -</p><dl> +</p> +<dl> + <dt><i>topic</i> (str)</dt> <dd> topic text </dd> -</dl><a NAME="MqttMonitorWidget.on_saveLogMessagesButton_clicked" ID="MqttMonitorWidget.on_saveLogMessagesButton_clicked"></a> +</dl> +<a NAME="MqttMonitorWidget.on_saveLogMessagesButton_clicked" ID="MqttMonitorWidget.on_saveLogMessagesButton_clicked"></a> <h4>MqttMonitorWidget.on_saveLogMessagesButton_clicked</h4> <b>on_saveLogMessagesButton_clicked</b>(<i></i>) + <p> Private slot to save the log messages. -</p><a NAME="MqttMonitorWidget.on_saveMessagesButton_clicked" ID="MqttMonitorWidget.on_saveMessagesButton_clicked"></a> +</p> +<a NAME="MqttMonitorWidget.on_saveMessagesButton_clicked" ID="MqttMonitorWidget.on_saveMessagesButton_clicked"></a> <h4>MqttMonitorWidget.on_saveMessagesButton_clicked</h4> <b>on_saveMessagesButton_clicked</b>(<i></i>) + <p> Private slot to save the received messages. -</p><a NAME="MqttMonitorWidget.on_subscribeButton_clicked" ID="MqttMonitorWidget.on_subscribeButton_clicked"></a> +</p> +<a NAME="MqttMonitorWidget.on_subscribeButton_clicked" ID="MqttMonitorWidget.on_subscribeButton_clicked"></a> <h4>MqttMonitorWidget.on_subscribeButton_clicked</h4> <b>on_subscribeButton_clicked</b>(<i></i>) + <p> Private slot to subscribe to the entered topic. -</p><a NAME="MqttMonitorWidget.on_subscribeTopicEdit_returnPressed" ID="MqttMonitorWidget.on_subscribeTopicEdit_returnPressed"></a> +</p> +<a NAME="MqttMonitorWidget.on_subscribeTopicEdit_returnPressed" ID="MqttMonitorWidget.on_subscribeTopicEdit_returnPressed"></a> <h4>MqttMonitorWidget.on_subscribeTopicEdit_returnPressed</h4> <b>on_subscribeTopicEdit_returnPressed</b>(<i></i>) + <p> Private slot handling the user pressing the return button to subscribe a topic. -</p><a NAME="MqttMonitorWidget.on_subscribeTopicEdit_textChanged" ID="MqttMonitorWidget.on_subscribeTopicEdit_textChanged"></a> +</p> +<a NAME="MqttMonitorWidget.on_subscribeTopicEdit_textChanged" ID="MqttMonitorWidget.on_subscribeTopicEdit_textChanged"></a> <h4>MqttMonitorWidget.on_subscribeTopicEdit_textChanged</h4> <b>on_subscribeTopicEdit_textChanged</b>(<i>topic</i>) + <p> Private slot to handle a change of the entered topic. -</p><dl> +</p> +<dl> + <dt><i>topic</i> (str)</dt> <dd> entered topic text </dd> -</dl><a NAME="MqttMonitorWidget.on_unsubscribeButton_clicked" ID="MqttMonitorWidget.on_unsubscribeButton_clicked"></a> +</dl> +<a NAME="MqttMonitorWidget.on_unsubscribeButton_clicked" ID="MqttMonitorWidget.on_unsubscribeButton_clicked"></a> <h4>MqttMonitorWidget.on_unsubscribeButton_clicked</h4> <b>on_unsubscribeButton_clicked</b>(<i></i>) + <p> Private slot to unsubscribe from the selected topic. -</p><a NAME="MqttMonitorWidget.on_unsubscribeTopicComboBox_currentIndexChanged" ID="MqttMonitorWidget.on_unsubscribeTopicComboBox_currentIndexChanged"></a> +</p> +<a NAME="MqttMonitorWidget.on_unsubscribeTopicComboBox_currentIndexChanged" ID="MqttMonitorWidget.on_unsubscribeTopicComboBox_currentIndexChanged"></a> <h4>MqttMonitorWidget.on_unsubscribeTopicComboBox_currentIndexChanged</h4> <b>on_unsubscribeTopicComboBox_currentIndexChanged</b>(<i>topic</i>) + <p> Private slot to handle the selection of a topic to unsubscribe from. -</p><dl> +</p> +<dl> + <dt><i>topic</i> (str)</dt> <dd> topic text
--- a/MqttMonitor/Documentation/source/Plugin_Mqtt_Monitor.PluginMqttMonitor.html Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/Documentation/source/Plugin_Mqtt_Monitor.PluginMqttMonitor.html Tue Jun 23 19:26:33 2020 +0200 @@ -18,178 +18,232 @@ </style> </head> -<body><a NAME="top" ID="top"></a> +<body> +<a NAME="top" ID="top"></a> <h1>Plugin_Mqtt_Monitor.PluginMqttMonitor</h1> + <p> Module implementing the MQTT Monitor plug-in. </p> <h3>Global Attributes</h3> + <table> -<tr><td>author</td></tr><tr><td>autoactivate</td></tr><tr><td>className</td></tr><tr><td>deactivateable</td></tr><tr><td>error</td></tr><tr><td>longDescription</td></tr><tr><td>name</td></tr><tr><td>needsRestart</td></tr><tr><td>packageName</td></tr><tr><td>pyqtApi</td></tr><tr><td>python2Compatible</td></tr><tr><td>shortDescription</td></tr><tr><td>version</td></tr> +<tr><td>author</td></tr><tr><td>autoactivate</td></tr><tr><td>className</td></tr><tr><td>deactivateable</td></tr><tr><td>error</td></tr><tr><td>longDescription</td></tr><tr><td>name</td></tr><tr><td>needsRestart</td></tr><tr><td>packageName</td></tr><tr><td>pyqtApi</td></tr><tr><td>shortDescription</td></tr><tr><td>version</td></tr> </table> <h3>Classes</h3> + <table> + <tr> <td><a href="#MqttMonitorPlugin">MqttMonitorPlugin</a></td> <td>Class implementing the MQTT Monitor plug-in.</td> </tr> </table> <h3>Functions</h3> + <table> + <tr> <td><a href="#exeDisplayData">exeDisplayData</a></td> <td>Module function to support the display of some executable info.</td> -</tr><tr> +</tr> +<tr> <td><a href="#prepareUninstall">prepareUninstall</a></td> <td>Module function to prepare for an uninstallation.</td> </tr> </table> -<hr /><hr /> +<hr /> +<hr /> <a NAME="MqttMonitorPlugin" ID="MqttMonitorPlugin"></a> <h2>MqttMonitorPlugin</h2> + <p> Class implementing the MQTT Monitor plug-in. </p> <h3>Derived from</h3> QObject <h3>Class Attributes</h3> + <table> <tr><td>PreferencesKey</td></tr> </table> <h3>Class Methods</h3> + <table> <tr><td>None</td></tr> </table> <h3>Methods</h3> + <table> + <tr> <td><a href="#MqttMonitorPlugin.__init__">MqttMonitorPlugin</a></td> <td>Constructor</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorPlugin.__activateWidget">__activateWidget</a></td> <td>Private slot to handle the activation of the MQTT Monitor.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorPlugin.__initialize">__initialize</a></td> <td>Private slot to (re)initialize the plugin.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorPlugin.__loadTranslator">__loadTranslator</a></td> <td>Private method to load the translation file.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorPlugin.activate">activate</a></td> <td>Public method to activate this plug-in.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorPlugin.deactivate">deactivate</a></td> <td>Public method to deactivate this plug-in.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorPlugin.getPreferences">getPreferences</a></td> <td>Public method to retrieve the various settings.</td> -</tr><tr> +</tr> +<tr> <td><a href="#MqttMonitorPlugin.setPreferences">setPreferences</a></td> <td>Public method to store the various settings.</td> </tr> </table> <h3>Static Methods</h3> + <table> <tr><td>None</td></tr> </table> + <a NAME="MqttMonitorPlugin.__init__" ID="MqttMonitorPlugin.__init__"></a> <h4>MqttMonitorPlugin (Constructor)</h4> <b>MqttMonitorPlugin</b>(<i>ui</i>) + <p> Constructor -</p><dl> +</p> +<dl> + <dt><i>ui</i> (UI.UserInterface)</dt> <dd> reference to the user interface object </dd> -</dl><a NAME="MqttMonitorPlugin.__activateWidget" ID="MqttMonitorPlugin.__activateWidget"></a> +</dl> +<a NAME="MqttMonitorPlugin.__activateWidget" ID="MqttMonitorPlugin.__activateWidget"></a> <h4>MqttMonitorPlugin.__activateWidget</h4> <b>__activateWidget</b>(<i></i>) + <p> Private slot to handle the activation of the MQTT Monitor. -</p><a NAME="MqttMonitorPlugin.__initialize" ID="MqttMonitorPlugin.__initialize"></a> +</p> +<a NAME="MqttMonitorPlugin.__initialize" ID="MqttMonitorPlugin.__initialize"></a> <h4>MqttMonitorPlugin.__initialize</h4> <b>__initialize</b>(<i></i>) + <p> Private slot to (re)initialize the plugin. -</p><a NAME="MqttMonitorPlugin.__loadTranslator" ID="MqttMonitorPlugin.__loadTranslator"></a> +</p> +<a NAME="MqttMonitorPlugin.__loadTranslator" ID="MqttMonitorPlugin.__loadTranslator"></a> <h4>MqttMonitorPlugin.__loadTranslator</h4> <b>__loadTranslator</b>(<i></i>) + <p> Private method to load the translation file. -</p><a NAME="MqttMonitorPlugin.activate" ID="MqttMonitorPlugin.activate"></a> +</p> +<a NAME="MqttMonitorPlugin.activate" ID="MqttMonitorPlugin.activate"></a> <h4>MqttMonitorPlugin.activate</h4> <b>activate</b>(<i></i>) + <p> Public method to activate this plug-in. -</p><dl> +</p> +<dl> <dt>Returns:</dt> <dd> tuple of None and activation status </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> bool </dd> -</dl><a NAME="MqttMonitorPlugin.deactivate" ID="MqttMonitorPlugin.deactivate"></a> +</dl> +<a NAME="MqttMonitorPlugin.deactivate" ID="MqttMonitorPlugin.deactivate"></a> <h4>MqttMonitorPlugin.deactivate</h4> <b>deactivate</b>(<i></i>) + <p> Public method to deactivate this plug-in. -</p><a NAME="MqttMonitorPlugin.getPreferences" ID="MqttMonitorPlugin.getPreferences"></a> +</p> +<a NAME="MqttMonitorPlugin.getPreferences" ID="MqttMonitorPlugin.getPreferences"></a> <h4>MqttMonitorPlugin.getPreferences</h4> <b>getPreferences</b>(<i>key</i>) + <p> Public method to retrieve the various settings. -</p><dl> +</p> +<dl> + <dt><i>key</i></dt> <dd> the key of the value to get </dd> -</dl><dl> +</dl> +<dl> <dt>Returns:</dt> <dd> the requested setting </dd> -</dl><a NAME="MqttMonitorPlugin.setPreferences" ID="MqttMonitorPlugin.setPreferences"></a> +</dl> +<a NAME="MqttMonitorPlugin.setPreferences" ID="MqttMonitorPlugin.setPreferences"></a> <h4>MqttMonitorPlugin.setPreferences</h4> <b>setPreferences</b>(<i>key, value</i>) + <p> Public method to store the various settings. -</p><dl> +</p> +<dl> + <dt><i>key</i></dt> <dd> the key of the setting to be set (string) -</dd><dt><i>value</i></dt> +</dd> +<dt><i>value</i></dt> <dd> the value to be set </dd> </dl> <div align="right"><a href="#top">Up</a></div> -<hr /><hr /> +<hr /> +<hr /> <a NAME="exeDisplayData" ID="exeDisplayData"></a> <h2>exeDisplayData</h2> <b>exeDisplayData</b>(<i></i>) + <p> Module function to support the display of some executable info. -</p><dl> +</p> +<dl> <dt>Returns:</dt> <dd> dictionary containing the data to query the presence of the executable </dd> -</dl><dl> +</dl> +<dl> <dt>Return Type:</dt> <dd> dict </dd> </dl> <div align="right"><a href="#top">Up</a></div> -<hr /><hr /> +<hr /> +<hr /> <a NAME="prepareUninstall" ID="prepareUninstall"></a> <h2>prepareUninstall</h2> <b>prepareUninstall</b>(<i></i>) + <p> Module function to prepare for an uninstallation. </p>
--- a/MqttMonitor/Documentation/source/index-Plugin_Mqtt_Monitor.MqttMonitor.html Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/Documentation/source/index-Plugin_Mqtt_Monitor.MqttMonitor.html Tue Jun 23 19:26:33 2020 +0200 @@ -20,6 +20,7 @@ </head> <body> <h1>Plugin_Mqtt_Monitor.MqttMonitor</h1> + <p> Package containing the MQTT Monitor modules and data files. </p> @@ -27,16 +28,20 @@ <h3>Modules</h3> <table> + <tr> <td><a href="Plugin_Mqtt_Monitor.MqttMonitor.MqttClient.html">MqttClient</a></td> <td>Module implementing a PyQt wrapper around the paho MQTT client.</td> -</tr><tr> +</tr> +<tr> <td><a href="Plugin_Mqtt_Monitor.MqttMonitor.MqttConnectionOptionsDialog.html">MqttConnectionOptionsDialog</a></td> <td>Module implementing a dialog to enter MQTT connection options.</td> -</tr><tr> +</tr> +<tr> <td><a href="Plugin_Mqtt_Monitor.MqttMonitor.MqttConnectionProfilesDialog.html">MqttConnectionProfilesDialog</a></td> <td>Module implementing a dialog to edit the MQTT connection profiles.</td> -</tr><tr> +</tr> +<tr> <td><a href="Plugin_Mqtt_Monitor.MqttMonitor.MqttMonitorWidget.html">MqttMonitorWidget</a></td> <td>Module implementing the MQTT Monitor widget.</td> </tr>
--- a/MqttMonitor/Documentation/source/index-Plugin_Mqtt_Monitor.html Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/Documentation/source/index-Plugin_Mqtt_Monitor.html Tue Jun 23 19:26:33 2020 +0200 @@ -20,12 +20,14 @@ </head> <body> <h1>Plugin_Mqtt_Monitor</h1> + <p> Package implementing the MQTT Monitor plug-in. </p> <h3>Packages</h3> <table> + <tr> <td><a href="index-Plugin_Mqtt_Monitor.MqttMonitor.html">MqttMonitor</a></td> <td>Package containing the MQTT Monitor modules and data files.</td> @@ -34,6 +36,7 @@ <h3>Modules</h3> <table> + <tr> <td><a href="Plugin_Mqtt_Monitor.PluginMqttMonitor.html">PluginMqttMonitor</a></td> <td>Module implementing the MQTT Monitor plug-in.</td>
--- a/MqttMonitor/Documentation/source/index.html Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/Documentation/source/index.html Tue Jun 23 19:26:33 2020 +0200 @@ -24,6 +24,7 @@ <h3>Packages</h3> <table> + <tr> <td><a href="index-Plugin_Mqtt_Monitor.html">Plugin_Mqtt_Monitor</a></td> <td>Package implementing the MQTT Monitor plug-in.</td>
--- a/MqttMonitor/MqttClient.py Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/MqttClient.py Tue Jun 23 19:26:33 2020 +0200 @@ -7,14 +7,9 @@ Module implementing a PyQt wrapper around the paho MQTT client. """ -from __future__ import unicode_literals -try: - str = unicode # __IGNORE_EXCEPTION__ -except NameError: - pass - -from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QCoreApplication, \ - QTimer +from PyQt5.QtCore import ( + pyqtSignal, pyqtSlot, QObject, QCoreApplication, QTimer +) import paho.mqtt.client as mqtt @@ -106,23 +101,23 @@ """ Private method to initialize the MQTT callback methods. """ - self.__mqttClient.on_connect = \ + self.__mqttClient.on_connect = ( lambda client, userdata, flags, rc: self.onConnect.emit( - flags, rc) - self.__mqttClient.on_disconnect = \ - lambda client, userdata, rc: self.onDisconnected.emit(rc) - self.__mqttClient.on_log = \ - lambda client, userdata, level, buf: self.onLog.emit(level, buf) - self.__mqttClient.on_message = \ + flags, rc)) + self.__mqttClient.on_disconnect = ( + lambda client, userdata, rc: self.onDisconnected.emit(rc)) + self.__mqttClient.on_log = ( + lambda client, userdata, level, buf: self.onLog.emit(level, buf)) + self.__mqttClient.on_message = ( lambda client, userdata, message: self.onMessage.emit( - message.topic, message.payload, message.qos, message.retain) - self.__mqttClient.on_publish = \ - lambda client, userdata, mid: self.onPublish.emit(mid) - self.__mqttClient.on_subscribe = \ + message.topic, message.payload, message.qos, message.retain)) + self.__mqttClient.on_publish = ( + lambda client, userdata, mid: self.onPublish.emit(mid)) + self.__mqttClient.on_subscribe = ( lambda client, userdata, mid, grantedQos: self.onSubscribe.emit( - mid, grantedQos) - self.__mqttClient.on_unsubscribe = \ - lambda client, userdata, mid: self.onUnsubscribe.emit(mid) + mid, grantedQos)) + self.__mqttClient.on_unsubscribe = ( + lambda client, userdata, mid: self.onUnsubscribe.emit(mid)) @pyqtSlot() def __connectTimeout(self): @@ -342,8 +337,10 @@ # step 4: set TLS parameters if parametersDict["TlsEnable"]: - if parametersDict["TlsCaCert"] and \ - parametersDict["TlsClientCert"]: + if ( + parametersDict["TlsCaCert"] and + parametersDict["TlsClientCert"] + ): # use self signed client certificate self.setTLS(caCerts=parametersDict["TlsCaCert"], certFile=parametersDict["TlsClientCert"],
--- a/MqttMonitor/MqttConnectionOptionsDialog.py Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/MqttConnectionOptionsDialog.py Tue Jun 23 19:26:33 2020 +0200 @@ -7,8 +7,6 @@ Module implementing a dialog to enter MQTT connection options. """ -from __future__ import unicode_literals - from PyQt5.QtCore import pyqtSlot, QUuid from PyQt5.QtWidgets import QDialog, QDialogButtonBox, QAbstractButton @@ -56,8 +54,10 @@ """ Private method to update the enabled state of the OK button. """ - if self.clientIdEdit.text() == "" and \ - not self.cleanSessionCheckBox.isChecked(): + if ( + self.clientIdEdit.text() == "" and + not self.cleanSessionCheckBox.isChecked() + ): enable = False E5MessageBox.critical( self,
--- a/MqttMonitor/MqttConnectionProfilesDialog.py Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/MqttConnectionProfilesDialog.py Tue Jun 23 19:26:33 2020 +0200 @@ -7,13 +7,13 @@ Module implementing a dialog to edit the MQTT connection profiles. """ -from __future__ import unicode_literals - import collections from PyQt5.QtCore import pyqtSlot, Qt, QUuid -from PyQt5.QtWidgets import QDialog, QDialogButtonBox, QAbstractButton, \ - QListWidgetItem, QInputDialog, QLineEdit +from PyQt5.QtWidgets import ( + QDialog, QDialogButtonBox, QAbstractButton, QListWidgetItem, QInputDialog, + QLineEdit +) from E5Gui import E5MessageBox from E5Gui.E5PathPicker import E5PathPickerModes @@ -268,12 +268,12 @@ if self.tlsCertsFileButton.isChecked(): profile["TlsCaCert"] = self.tlsCertsFilePicker.text() elif self.tlsSelfSignedCertsButton.isChecked(): - profile["TlsCaCert"] = \ - self.tlsSelfSignedCertsFilePicker.text() - profile["TlsClientCert"] = \ - self.tlsSelfSignedClientCertFilePicker.text() - profile["TlsClientKey"] = \ - self.tlsSelfSignedClientKeyFilePicker.text() + profile["TlsCaCert"] = ( + self.tlsSelfSignedCertsFilePicker.text()) + profile["TlsClientCert"] = ( + self.tlsSelfSignedClientCertFilePicker.text()) + profile["TlsClientKey"] = ( + self.tlsSelfSignedClientKeyFilePicker.text()) self.__profiles[profileName] = profile self.__profilesChanged = True @@ -473,8 +473,10 @@ # condition 2: if client ID is empty, clean session must be selected if not self.__populatingProfile: - if self.clientIdEdit.text() == "" and \ - not self.cleanSessionCheckBox.isChecked(): + if ( + self.clientIdEdit.text() == "" and + not self.cleanSessionCheckBox.isChecked() + ): enable = False E5MessageBox.critical( self,
--- a/MqttMonitor/MqttMonitorWidget.py Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/MqttMonitorWidget.py Tue Jun 23 19:26:33 2020 +0200 @@ -7,12 +7,6 @@ Module implementing the MQTT Monitor widget. """ -from __future__ import unicode_literals -try: - str = unicode # __IGNORE_EXCEPTION__ -except NameError: - pass - import os import collections import copy @@ -26,8 +20,9 @@ from .Ui_MqttMonitorWidget import Ui_MqttMonitorWidget -from .MqttClient import MqttClient, mqttConnackMessage, mqttErrorMessage, \ - mqttLogLevelString +from .MqttClient import ( + MqttClient, mqttConnackMessage, mqttErrorMessage, mqttLogLevelString +) import UI.PixmapCache import Utilities @@ -445,8 +440,9 @@ dialog to edit connection profiles. """ if self.__connectionModeProfile: - from .MqttConnectionProfilesDialog import \ + from .MqttConnectionProfilesDialog import ( MqttConnectionProfilesDialog + ) dlg = MqttConnectionProfilesDialog( self.__client, self.__plugin.getPreferences("BrokerProfiles"), parent=self) @@ -455,8 +451,9 @@ self.__plugin.setPreferences("BrokerProfiles", profilesDict) self.__populateProfileComboBox() else: - from .MqttConnectionOptionsDialog import \ + from .MqttConnectionOptionsDialog import ( MqttConnectionOptionsDialog + ) dlg = MqttConnectionOptionsDialog( self.__client, self.__connectionOptions, parent=self) if dlg.exec_() == QDialog.Accepted: @@ -560,8 +557,11 @@ qos = self.publishQosSpinBox.value() retain = self.publishRetainCheckBox.isChecked() payloadFile = self.publishPayloadFilePicker.text() - if bool(payloadFile) and os.path.exists(payloadFile) and \ - os.path.getsize(payloadFile) <= 268435455: + if ( + bool(payloadFile) and + os.path.exists(payloadFile) and + os.path.getsize(payloadFile) <= 268435455 + ): # payload size limit is 268,435,455 bytes try: f = open(payloadFile, "rb")
--- a/MqttMonitor/i18n/mqttmonitor_de.ts Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/i18n/mqttmonitor_de.ts Tue Jun 23 19:26:33 2020 +0200 @@ -191,7 +191,7 @@ <translation>Gib den vollständigen Pfad zur CA Zertifikatsdatei ein; leer lassen, um den Plattformstandard zu verwenden</translation> </message> <message> - <location filename="../MqttConnectionOptionsDialog.py" line="48"/> + <location filename="../MqttConnectionOptionsDialog.py" line="46"/> <source>Certificate Files (*.crt *.pem);;All Files (*)</source> <translation>Zertifikatdateien (*.crt *.pem);;Alle Dateien (*)</translation> </message> @@ -379,7 +379,7 @@ <translation>Auswählen, um SSL/TLS Verbindungen zu aktivieren</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="589"/> + <location filename="../MqttConnectionProfilesDialog.py" line="590"/> <source>SSL/TLS Enabled</source> <translation>SSL/TLS aktiviert</translation> </message> @@ -454,12 +454,12 @@ <translation>Schlüsseldateien (*.key *.pem);;Alle Dateien (*)</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="695"/> + <location filename="../MqttConnectionProfilesDialog.py" line="696"/> <source>Changed Connection Profile</source> <translation>Verbindungsprofil geändert</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="695"/> + <location filename="../MqttConnectionProfilesDialog.py" line="696"/> <source>The current profile has unsaved changes. Shall these be saved?</source> <translation>Das aktuelle Profil hat ungesicherte Änderungen. Sollen diese gesichert werden?</translation> </message> @@ -499,37 +499,37 @@ <translation><p>Soll das Verbindungsprofil <b>{0}</b> wirklich gelöscht werden?</p></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="480"/> + <location filename="../MqttConnectionProfilesDialog.py" line="481"/> <source>Invalid Connection Parameters</source> <translation>Ungültige Verbindungsparameter</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="480"/> + <location filename="../MqttConnectionProfilesDialog.py" line="481"/> <source>An empty Client ID requires a clean session.</source> <translation>Eine leere Client ID setzt eine neue Session voraus.</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="589"/> + <location filename="../MqttConnectionProfilesDialog.py" line="590"/> <source>Encrypted connection using SSL/TLS has been enabled. However, the broker port is still the default unencrypted port (port 1883). Shall this be changed?</source> <translation>Eine mit SSL/TLS verschlüsselte Verbindung wurde aktiviert. Jedoch ist der Brokerport noch auf den standardmäßigen, unverschlüsselten Port (Port 1883) eingestellt. Soll dies geändert werden?</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="603"/> + <location filename="../MqttConnectionProfilesDialog.py" line="604"/> <source>SSL/TLS Disabled</source> <translation>SSL/TLS deaktiviert</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="603"/> + <location filename="../MqttConnectionProfilesDialog.py" line="604"/> <source>Encrypted connection using SSL/TLS has been disabled. However, the broker port is still the default encrypted port (port 8883). Shall this be changed?</source> <translation>Eine mit SSL/TLS verschlüsselte Verbindung wurde deaktiviert. Jedoch ist der Brokerport noch auf den standardmäßigen, verschlüsselten Port (Port 8883) eingestellt. Soll dies geändert werden?</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="671"/> + <location filename="../MqttConnectionProfilesDialog.py" line="672"/> <source>Changed Connection Profiles</source> <translation>Verbindungsprofile geändert</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="671"/> + <location filename="../MqttConnectionProfilesDialog.py" line="672"/> <source>The list of connection profiles has unsaved changes.</source> <translation>Die Liste der Verbindungsprofile hat ungesicherte Änderungen.</translation> </message> @@ -653,50 +653,50 @@ <context> <name>MqttMonitorPlugin</name> <message> - <location filename="../../PluginMqttMonitor.py" line="63"/> - <source>package not available</source> - <translation>Paket nicht verfügbar</translation> - </message> - <message> - <location filename="../../PluginMqttMonitor.py" line="68"/> + <location filename="../../PluginMqttMonitor.py" line="64"/> <source>MQTT</source> <translation>MQTT</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="69"/> + <location filename="../../PluginMqttMonitor.py" line="65"/> <source>paho-mqtt</source> <translation>paho-mqtt</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="129"/> + <location filename="../../PluginMqttMonitor.py" line="123"/> <source>The 'paho-mqtt' package is not available.</source> <translation>Das 'paho-mqtt' Paket ist nicht verfügbar.</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="141"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>MQTT Monitor</source> <translation>MQTT Monitor</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="141"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>M&QTT Monitor</source> <translation>M&QTT Monitor</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="141"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>Alt+Shift+Q</source> <translation>Alt+Shift+Q</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="147"/> + <location filename="../../PluginMqttMonitor.py" line="154"/> <source>Switch the input focus to the MQTT Monitor window.</source> <translation>Schaltet den Eingabefokus auf das MQTT-Überwachungsfenster um.</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="149"/> + <location filename="../../PluginMqttMonitor.py" line="156"/> <source><b>Activate MQTT Monitor</b><p>This switches the input focus to the MQTT Monitor window.</p></source> <translation><b>MQTT Monitor aktivieren</b><p>Dies schaltet den Eingabefokus auf das MQTT-Überwachungsfenster um.</p></translation> </message> + <message> + <location filename="../../PluginMqttMonitor.py" line="59"/> + <source>(package not available)</source> + <translation>(Paket nicht verfügbar)</translation> + </message> </context> <context> <name>MqttMonitorWidget</name> @@ -736,7 +736,7 @@ <translation>Pub/Sub</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="760"/> + <location filename="../MqttMonitorWidget.py" line="766"/> <source>Subscribe</source> <translation>Abonnieren</translation> </message> @@ -766,7 +766,7 @@ <translation>Drücken, um das eingegebene Thema zu abonieren</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="756"/> + <location filename="../MqttMonitorWidget.py" line="762"/> <source>Unsubscribe</source> <translation>Abo kündigen</translation> </message> @@ -826,7 +826,7 @@ <translation>Status</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="761"/> + <location filename="../MqttMonitorWidget.py" line="767"/> <source>Press to activate the status display</source> <translation>Drücken, um die Statusanzeige zu aktivieren</translation> </message> @@ -991,22 +991,22 @@ <translation>Sockets</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="261"/> + <location filename="../MqttMonitorWidget.py" line="262"/> <source>Connection to Broker shut down cleanly.</source> <translation>Die Verbindung zum Broker wurde ordnungsgemäß beendet.</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="509"/> + <location filename="../MqttMonitorWidget.py" line="512"/> <source>Subscribe to Topic</source> <translation>Thema abonnieren</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="509"/> + <location filename="../MqttMonitorWidget.py" line="512"/> <source>Subscriptions to the Status topic '$SYS' shall be done on the 'Status' tab.</source> <translation>Abonnements zum Statusthema '$SYS' werden auf der Registerkarte 'Status' ausgeführt.</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="757"/> + <location filename="../MqttMonitorWidget.py" line="763"/> <source>Press to deactivate the status display</source> <translation>Drücken, um die Statusanzeige zu deaktivieren</translation> </message> @@ -1056,17 +1056,17 @@ <translation>Drücken, um die Liste der empfangenen Protokollmeldungen zu löschen</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="242"/> + <location filename="../MqttMonitorWidget.py" line="243"/> <source>Connection timed out</source> <translation>Zeitlimit für Verbindung überschritten</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="316"/> + <location filename="../MqttMonitorWidget.py" line="317"/> <source>{0}: {1}</source> <translation>{0}: {1}</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="1050"/> + <location filename="../MqttMonitorWidget.py" line="1059"/> <source>Connecting to {0}:{1} ...</source> <translation>Verbinde zu {0}:{1} ...</translation> </message> @@ -1116,52 +1116,52 @@ <translation>Empfangenen Protokollmeldungen folgen</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="66"/> + <location filename="../MqttMonitorWidget.py" line="65"/> <source>All Files (*)</source> <translation>Alle Dateien (*)</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="565"/> + <location filename="../MqttMonitorWidget.py" line="571"/> <source>Read Payload from File</source> <translation>Nutzdaten aus Datei lesen</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="565"/> + <location filename="../MqttMonitorWidget.py" line="571"/> <source><p>The file <b>{0}</b> could not be read. Aborting...</p><p>Reason: {1}</p></source> <translation><p>Die Datei <b>{0}</b> konnte nicht gelesen werden. Abbruch...</p><p>Ursache: {1}</p></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="678"/> + <location filename="../MqttMonitorWidget.py" line="684"/> <source>Save Messages</source> <translation>Meldungen speichern</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="645"/> + <location filename="../MqttMonitorWidget.py" line="651"/> <source>Messages Files (*.txt);;All Files (*)</source> <translation>Meldungsdateien (*.txt);;Alle Dateien (*)</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="720"/> + <location filename="../MqttMonitorWidget.py" line="726"/> <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> <translation><p>Die Datei <b>{0}</b> existiert bereits. Überschreiben?</p></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="735"/> + <location filename="../MqttMonitorWidget.py" line="741"/> <source><p>The file <b>{0}</b> could not be written.</p><p>Reason: {1}</p></source> <translation><p>Die Datei <b>{0}</b> konnte nicht geschrieben werden.</p><p>Ursache: {1}</p></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="735"/> + <location filename="../MqttMonitorWidget.py" line="741"/> <source>Save Log Messages</source> <translation>Protokollmeldungen speichern</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="702"/> + <location filename="../MqttMonitorWidget.py" line="708"/> <source>Log Files (*.log);;All Files (*)</source> <translation>Protokolldateien (*.log);;Alle Dateien (*)</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="897"/> + <location filename="../MqttMonitorWidget.py" line="902"/> <source>QoS: {0} </source> <translation>QoS: {0}
--- a/MqttMonitor/i18n/mqttmonitor_empty.ts Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/i18n/mqttmonitor_empty.ts Tue Jun 23 19:26:33 2020 +0200 @@ -191,7 +191,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionOptionsDialog.py" line="48"/> + <location filename="../MqttConnectionOptionsDialog.py" line="46"/> <source>Certificate Files (*.crt *.pem);;All Files (*)</source> <translation type="unfinished"></translation> </message> @@ -379,7 +379,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="589"/> + <location filename="../MqttConnectionProfilesDialog.py" line="590"/> <source>SSL/TLS Enabled</source> <translation type="unfinished"></translation> </message> @@ -454,12 +454,12 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="695"/> + <location filename="../MqttConnectionProfilesDialog.py" line="696"/> <source>Changed Connection Profile</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="695"/> + <location filename="../MqttConnectionProfilesDialog.py" line="696"/> <source>The current profile has unsaved changes. Shall these be saved?</source> <translation type="unfinished"></translation> </message> @@ -499,37 +499,37 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="480"/> + <location filename="../MqttConnectionProfilesDialog.py" line="481"/> <source>Invalid Connection Parameters</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="480"/> + <location filename="../MqttConnectionProfilesDialog.py" line="481"/> <source>An empty Client ID requires a clean session.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="589"/> + <location filename="../MqttConnectionProfilesDialog.py" line="590"/> <source>Encrypted connection using SSL/TLS has been enabled. However, the broker port is still the default unencrypted port (port 1883). Shall this be changed?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="603"/> + <location filename="../MqttConnectionProfilesDialog.py" line="604"/> <source>SSL/TLS Disabled</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="603"/> + <location filename="../MqttConnectionProfilesDialog.py" line="604"/> <source>Encrypted connection using SSL/TLS has been disabled. However, the broker port is still the default encrypted port (port 8883). Shall this be changed?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="671"/> + <location filename="../MqttConnectionProfilesDialog.py" line="672"/> <source>Changed Connection Profiles</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="671"/> + <location filename="../MqttConnectionProfilesDialog.py" line="672"/> <source>The list of connection profiles has unsaved changes.</source> <translation type="unfinished"></translation> </message> @@ -653,50 +653,50 @@ <context> <name>MqttMonitorPlugin</name> <message> - <location filename="../../PluginMqttMonitor.py" line="63"/> - <source>package not available</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="../../PluginMqttMonitor.py" line="68"/> + <location filename="../../PluginMqttMonitor.py" line="64"/> <source>MQTT</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="69"/> + <location filename="../../PluginMqttMonitor.py" line="65"/> <source>paho-mqtt</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="129"/> + <location filename="../../PluginMqttMonitor.py" line="123"/> <source>The 'paho-mqtt' package is not available.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="141"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>MQTT Monitor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="141"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>M&QTT Monitor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="141"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>Alt+Shift+Q</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="147"/> + <location filename="../../PluginMqttMonitor.py" line="154"/> <source>Switch the input focus to the MQTT Monitor window.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="149"/> + <location filename="../../PluginMqttMonitor.py" line="156"/> <source><b>Activate MQTT Monitor</b><p>This switches the input focus to the MQTT Monitor window.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../../PluginMqttMonitor.py" line="59"/> + <source>(package not available)</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>MqttMonitorWidget</name> @@ -736,7 +736,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="760"/> + <location filename="../MqttMonitorWidget.py" line="766"/> <source>Subscribe</source> <translation type="unfinished"></translation> </message> @@ -766,7 +766,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="756"/> + <location filename="../MqttMonitorWidget.py" line="762"/> <source>Unsubscribe</source> <translation type="unfinished"></translation> </message> @@ -826,7 +826,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="761"/> + <location filename="../MqttMonitorWidget.py" line="767"/> <source>Press to activate the status display</source> <translation type="unfinished"></translation> </message> @@ -991,22 +991,22 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="261"/> + <location filename="../MqttMonitorWidget.py" line="262"/> <source>Connection to Broker shut down cleanly.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="509"/> + <location filename="../MqttMonitorWidget.py" line="512"/> <source>Subscribe to Topic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="509"/> + <location filename="../MqttMonitorWidget.py" line="512"/> <source>Subscriptions to the Status topic '$SYS' shall be done on the 'Status' tab.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="757"/> + <location filename="../MqttMonitorWidget.py" line="763"/> <source>Press to deactivate the status display</source> <translation type="unfinished"></translation> </message> @@ -1056,17 +1056,17 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="242"/> + <location filename="../MqttMonitorWidget.py" line="243"/> <source>Connection timed out</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="316"/> + <location filename="../MqttMonitorWidget.py" line="317"/> <source>{0}: {1}</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="1050"/> + <location filename="../MqttMonitorWidget.py" line="1059"/> <source>Connecting to {0}:{1} ...</source> <translation type="unfinished"></translation> </message> @@ -1116,52 +1116,52 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="66"/> + <location filename="../MqttMonitorWidget.py" line="65"/> <source>All Files (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="565"/> + <location filename="../MqttMonitorWidget.py" line="571"/> <source>Read Payload from File</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="565"/> + <location filename="../MqttMonitorWidget.py" line="571"/> <source><p>The file <b>{0}</b> could not be read. Aborting...</p><p>Reason: {1}</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="678"/> + <location filename="../MqttMonitorWidget.py" line="684"/> <source>Save Messages</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="645"/> + <location filename="../MqttMonitorWidget.py" line="651"/> <source>Messages Files (*.txt);;All Files (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="720"/> + <location filename="../MqttMonitorWidget.py" line="726"/> <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="735"/> + <location filename="../MqttMonitorWidget.py" line="741"/> <source><p>The file <b>{0}</b> could not be written.</p><p>Reason: {1}</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="735"/> + <location filename="../MqttMonitorWidget.py" line="741"/> <source>Save Log Messages</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="702"/> + <location filename="../MqttMonitorWidget.py" line="708"/> <source>Log Files (*.log);;All Files (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="897"/> + <location filename="../MqttMonitorWidget.py" line="902"/> <source>QoS: {0} </source> <translation type="unfinished"></translation>
--- a/MqttMonitor/i18n/mqttmonitor_en.ts Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/i18n/mqttmonitor_en.ts Tue Jun 23 19:26:33 2020 +0200 @@ -191,7 +191,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionOptionsDialog.py" line="48"/> + <location filename="../MqttConnectionOptionsDialog.py" line="46"/> <source>Certificate Files (*.crt *.pem);;All Files (*)</source> <translation type="unfinished"></translation> </message> @@ -379,7 +379,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="589"/> + <location filename="../MqttConnectionProfilesDialog.py" line="590"/> <source>SSL/TLS Enabled</source> <translation type="unfinished"></translation> </message> @@ -454,12 +454,12 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="695"/> + <location filename="../MqttConnectionProfilesDialog.py" line="696"/> <source>Changed Connection Profile</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="695"/> + <location filename="../MqttConnectionProfilesDialog.py" line="696"/> <source>The current profile has unsaved changes. Shall these be saved?</source> <translation type="unfinished"></translation> </message> @@ -499,37 +499,37 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="480"/> + <location filename="../MqttConnectionProfilesDialog.py" line="481"/> <source>Invalid Connection Parameters</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="480"/> + <location filename="../MqttConnectionProfilesDialog.py" line="481"/> <source>An empty Client ID requires a clean session.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="589"/> + <location filename="../MqttConnectionProfilesDialog.py" line="590"/> <source>Encrypted connection using SSL/TLS has been enabled. However, the broker port is still the default unencrypted port (port 1883). Shall this be changed?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="603"/> + <location filename="../MqttConnectionProfilesDialog.py" line="604"/> <source>SSL/TLS Disabled</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="603"/> + <location filename="../MqttConnectionProfilesDialog.py" line="604"/> <source>Encrypted connection using SSL/TLS has been disabled. However, the broker port is still the default encrypted port (port 8883). Shall this be changed?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="671"/> + <location filename="../MqttConnectionProfilesDialog.py" line="672"/> <source>Changed Connection Profiles</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="671"/> + <location filename="../MqttConnectionProfilesDialog.py" line="672"/> <source>The list of connection profiles has unsaved changes.</source> <translation type="unfinished"></translation> </message> @@ -653,50 +653,50 @@ <context> <name>MqttMonitorPlugin</name> <message> - <location filename="../../PluginMqttMonitor.py" line="63"/> - <source>package not available</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="../../PluginMqttMonitor.py" line="68"/> + <location filename="../../PluginMqttMonitor.py" line="64"/> <source>MQTT</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="69"/> + <location filename="../../PluginMqttMonitor.py" line="65"/> <source>paho-mqtt</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="129"/> + <location filename="../../PluginMqttMonitor.py" line="123"/> <source>The 'paho-mqtt' package is not available.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="141"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>MQTT Monitor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="141"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>M&QTT Monitor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="141"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>Alt+Shift+Q</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="147"/> + <location filename="../../PluginMqttMonitor.py" line="154"/> <source>Switch the input focus to the MQTT Monitor window.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="149"/> + <location filename="../../PluginMqttMonitor.py" line="156"/> <source><b>Activate MQTT Monitor</b><p>This switches the input focus to the MQTT Monitor window.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../../PluginMqttMonitor.py" line="59"/> + <source>(package not available)</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>MqttMonitorWidget</name> @@ -736,7 +736,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="760"/> + <location filename="../MqttMonitorWidget.py" line="766"/> <source>Subscribe</source> <translation type="unfinished"></translation> </message> @@ -766,7 +766,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="756"/> + <location filename="../MqttMonitorWidget.py" line="762"/> <source>Unsubscribe</source> <translation type="unfinished"></translation> </message> @@ -826,7 +826,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="761"/> + <location filename="../MqttMonitorWidget.py" line="767"/> <source>Press to activate the status display</source> <translation type="unfinished"></translation> </message> @@ -991,22 +991,22 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="261"/> + <location filename="../MqttMonitorWidget.py" line="262"/> <source>Connection to Broker shut down cleanly.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="509"/> + <location filename="../MqttMonitorWidget.py" line="512"/> <source>Subscribe to Topic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="509"/> + <location filename="../MqttMonitorWidget.py" line="512"/> <source>Subscriptions to the Status topic '$SYS' shall be done on the 'Status' tab.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="757"/> + <location filename="../MqttMonitorWidget.py" line="763"/> <source>Press to deactivate the status display</source> <translation type="unfinished"></translation> </message> @@ -1056,17 +1056,17 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="242"/> + <location filename="../MqttMonitorWidget.py" line="243"/> <source>Connection timed out</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="316"/> + <location filename="../MqttMonitorWidget.py" line="317"/> <source>{0}: {1}</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="1050"/> + <location filename="../MqttMonitorWidget.py" line="1059"/> <source>Connecting to {0}:{1} ...</source> <translation type="unfinished"></translation> </message> @@ -1116,52 +1116,52 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="66"/> + <location filename="../MqttMonitorWidget.py" line="65"/> <source>All Files (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="565"/> + <location filename="../MqttMonitorWidget.py" line="571"/> <source>Read Payload from File</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="565"/> + <location filename="../MqttMonitorWidget.py" line="571"/> <source><p>The file <b>{0}</b> could not be read. Aborting...</p><p>Reason: {1}</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="678"/> + <location filename="../MqttMonitorWidget.py" line="684"/> <source>Save Messages</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="645"/> + <location filename="../MqttMonitorWidget.py" line="651"/> <source>Messages Files (*.txt);;All Files (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="720"/> + <location filename="../MqttMonitorWidget.py" line="726"/> <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="735"/> + <location filename="../MqttMonitorWidget.py" line="741"/> <source><p>The file <b>{0}</b> could not be written.</p><p>Reason: {1}</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="735"/> + <location filename="../MqttMonitorWidget.py" line="741"/> <source>Save Log Messages</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="702"/> + <location filename="../MqttMonitorWidget.py" line="708"/> <source>Log Files (*.log);;All Files (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="897"/> + <location filename="../MqttMonitorWidget.py" line="902"/> <source>QoS: {0} </source> <translation type="unfinished"></translation>
--- a/MqttMonitor/i18n/mqttmonitor_es.ts Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/i18n/mqttmonitor_es.ts Tue Jun 23 19:26:33 2020 +0200 @@ -191,7 +191,7 @@ <translation>Introducir la ruta completa al archivo de certificado CA; dejar en blanco para utilizar el valor por defecto de la plataforma</translation> </message> <message> - <location filename="../MqttConnectionOptionsDialog.py" line="48"/> + <location filename="../MqttConnectionOptionsDialog.py" line="46"/> <source>Certificate Files (*.crt *.pem);;All Files (*)</source> <translation>Archivos de Certificado (*.crt *.pem);;Todos los Archivos (*)</translation> </message> @@ -379,7 +379,7 @@ <translation>Seleccionar para habilitar conexiones SSL/TLS</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="589"/> + <location filename="../MqttConnectionProfilesDialog.py" line="590"/> <source>SSL/TLS Enabled</source> <translation>SSL/TLS Habilitado</translation> </message> @@ -454,12 +454,12 @@ <translation>Archivos de Clave (*.key *.pem);;Todos los Archivos (*)</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="695"/> + <location filename="../MqttConnectionProfilesDialog.py" line="696"/> <source>Changed Connection Profile</source> <translation>Perfil de Conexión Cambiado</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="695"/> + <location filename="../MqttConnectionProfilesDialog.py" line="696"/> <source>The current profile has unsaved changes. Shall these be saved?</source> <translation>El perfil actual tiene cambios sin guardar. ¿Desea guardarlos?</translation> </message> @@ -499,37 +499,37 @@ <translation><p>¿Realmente desea eliminar el Perfil de Conexión <b>{0}</b>?</p></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="480"/> + <location filename="../MqttConnectionProfilesDialog.py" line="481"/> <source>Invalid Connection Parameters</source> <translation>Parámetros de Conexión No Válidos</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="480"/> + <location filename="../MqttConnectionProfilesDialog.py" line="481"/> <source>An empty Client ID requires a clean session.</source> <translation>Un ID de Cliente vacío requiere una sesión limpia.</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="589"/> + <location filename="../MqttConnectionProfilesDialog.py" line="590"/> <source>Encrypted connection using SSL/TLS has been enabled. However, the broker port is still the default unencrypted port (port 1883). Shall this be changed?</source> <translation>Se ha habilitado conexión encriptada utilizando SSL/TLS. Sin embargo, el puerto del broker sigue siendo el puerto por defecto no encriptado (puerto 1883). ¿Desea cambiarlo?</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="603"/> + <location filename="../MqttConnectionProfilesDialog.py" line="604"/> <source>SSL/TLS Disabled</source> <translation>SSL/TLS Deshabilitado</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="603"/> + <location filename="../MqttConnectionProfilesDialog.py" line="604"/> <source>Encrypted connection using SSL/TLS has been disabled. However, the broker port is still the default encrypted port (port 8883). Shall this be changed?</source> <translation>Se ha deshabilitado conexión encriptada utilizando SSL/TLS. Sin embargo, el puerto del broker sigue siendo el puerto por defecto no encriptado (puerto 1883). ¿Desea cambiarlo?</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="671"/> + <location filename="../MqttConnectionProfilesDialog.py" line="672"/> <source>Changed Connection Profiles</source> <translation>Perfiles de Conexión Cambiados</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="671"/> + <location filename="../MqttConnectionProfilesDialog.py" line="672"/> <source>The list of connection profiles has unsaved changes.</source> <translation>La lista de perfiles de conexión tienen cambios sin guardar.</translation> </message> @@ -655,48 +655,53 @@ <message> <location filename="../../PluginMqttMonitor.py" line="63"/> <source>package not available</source> - <translation>package no disponible</translation> + <translation type="obsolete">package no disponible</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="68"/> + <location filename="../../PluginMqttMonitor.py" line="64"/> <source>MQTT</source> <translation>MQTT</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="69"/> + <location filename="../../PluginMqttMonitor.py" line="65"/> <source>paho-mqtt</source> <translation>paho-mqtt</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="129"/> + <location filename="../../PluginMqttMonitor.py" line="123"/> <source>The 'paho-mqtt' package is not available.</source> <translation>El package 'paho-mqtt' no está disponible.</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="141"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>MQTT Monitor</source> <translation>MQTT Monitor</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="141"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>M&QTT Monitor</source> <translation>M&QTT Monitor</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="141"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>Alt+Shift+Q</source> <translation>Alt+Shift+Q</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="147"/> + <location filename="../../PluginMqttMonitor.py" line="154"/> <source>Switch the input focus to the MQTT Monitor window.</source> <translation>Cambiar el foco de input a la ventana de MQTT Monitor.</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="149"/> + <location filename="../../PluginMqttMonitor.py" line="156"/> <source><b>Activate MQTT Monitor</b><p>This switches the input focus to the MQTT Monitor window.</p></source> <translation><b>Activar MQTT Monitor</b><p>Cambia el foco de input a la ventana de MQTT Monitor.</p></translation> </message> + <message> + <location filename="../../PluginMqttMonitor.py" line="59"/> + <source>(package not available)</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>MqttMonitorWidget</name> @@ -736,7 +741,7 @@ <translation>Pub/Sub</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="760"/> + <location filename="../MqttMonitorWidget.py" line="766"/> <source>Subscribe</source> <translation>Subscribir</translation> </message> @@ -766,7 +771,7 @@ <translation>Pulsar para subscribir al tópico dado</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="756"/> + <location filename="../MqttMonitorWidget.py" line="762"/> <source>Unsubscribe</source> <translation>Retirar subscripción</translation> </message> @@ -826,7 +831,7 @@ <translation>Estado</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="761"/> + <location filename="../MqttMonitorWidget.py" line="767"/> <source>Press to activate the status display</source> <translation>Pulsar para activar la visualización de status</translation> </message> @@ -991,22 +996,22 @@ <translation>Sockets</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="261"/> + <location filename="../MqttMonitorWidget.py" line="262"/> <source>Connection to Broker shut down cleanly.</source> <translation>Conexión a Broker detenida limpiamente.</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="509"/> + <location filename="../MqttMonitorWidget.py" line="512"/> <source>Subscribe to Topic</source> <translation>Subscribir a Tema</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="509"/> + <location filename="../MqttMonitorWidget.py" line="512"/> <source>Subscriptions to the Status topic '$SYS' shall be done on the 'Status' tab.</source> <translation>Las subscripciones al tema de Status '$SYS' se deben hacer en la pestaña de 'Status'.</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="757"/> + <location filename="../MqttMonitorWidget.py" line="763"/> <source>Press to deactivate the status display</source> <translation>Pulsar para activar la visualización de status</translation> </message> @@ -1056,17 +1061,17 @@ <translation>Pulsar para limpiar la lista de mensajes de log recibidos</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="242"/> + <location filename="../MqttMonitorWidget.py" line="243"/> <source>Connection timed out</source> <translation>Se ha agotado el tiempo de conexión</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="316"/> + <location filename="../MqttMonitorWidget.py" line="317"/> <source>{0}: {1}</source> <translation>{0}: {1}</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="1050"/> + <location filename="../MqttMonitorWidget.py" line="1059"/> <source>Connecting to {0}:{1} ...</source> <translation>Connectando a {0}:{1} ...</translation> </message> @@ -1116,52 +1121,52 @@ <translation>Seguir mensajes de log recibidos</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="66"/> + <location filename="../MqttMonitorWidget.py" line="65"/> <source>All Files (*)</source> <translation>Todos los Archivos (*)</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="565"/> + <location filename="../MqttMonitorWidget.py" line="571"/> <source>Read Payload from File</source> <translation>Leer Payload desde Archivo</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="565"/> + <location filename="../MqttMonitorWidget.py" line="571"/> <source><p>The file <b>{0}</b> could not be read. Aborting...</p><p>Reason: {1}</p></source> <translation><p>El archivo <b>{0}</b> no se ha podido leer. Abortando...</p><p>Razón: {1}</p></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="678"/> + <location filename="../MqttMonitorWidget.py" line="684"/> <source>Save Messages</source> <translation>Guardar Mensajes</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="645"/> + <location filename="../MqttMonitorWidget.py" line="651"/> <source>Messages Files (*.txt);;All Files (*)</source> <translation>Archivos de Mensaje (*.txt);;Todos los Archivos (*)</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="720"/> + <location filename="../MqttMonitorWidget.py" line="726"/> <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> <translation><p>El archivo <b>{0}</b> ya existe. ¿Sobreescribirlo?</p></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="735"/> + <location filename="../MqttMonitorWidget.py" line="741"/> <source><p>The file <b>{0}</b> could not be written.</p><p>Reason: {1}</p></source> <translation><p>El archivo <b>{0}</b> no se ha podido guardar.</p><p>Razón: {1}</p></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="735"/> + <location filename="../MqttMonitorWidget.py" line="741"/> <source>Save Log Messages</source> <translation>Guardar Mensajes de Log</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="702"/> + <location filename="../MqttMonitorWidget.py" line="708"/> <source>Log Files (*.log);;All Files (*)</source> <translation>Archivos de Log (*.log);;Todos los Archivos (*)</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="897"/> + <location filename="../MqttMonitorWidget.py" line="902"/> <source>QoS: {0} </source> <translation>QoS: {0}
--- a/MqttMonitor/i18n/mqttmonitor_ru.ts Thu May 28 17:36:58 2020 +0200 +++ b/MqttMonitor/i18n/mqttmonitor_ru.ts Tue Jun 23 19:26:33 2020 +0200 @@ -3,37 +3,37 @@ <context> <name>MqttConnackMessage</name> <message> - <location filename="../MqttClient.py" line="470"/> + <location filename="../MqttClient.py" line="467"/> <source>Connection Accepted.</source> <translation>Соединение установлено.</translation> </message> <message> - <location filename="../MqttClient.py" line="474"/> + <location filename="../MqttClient.py" line="471"/> <source>Connection Refused: unacceptable protocol version.</source> <translation>Соединение отклонено: неприемлемая версия протокола.</translation> </message> <message> - <location filename="../MqttClient.py" line="478"/> + <location filename="../MqttClient.py" line="475"/> <source>Connection Refused: identifier rejected.</source> <translation>Соединение отклонено: идентификатор отклонен.</translation> </message> <message> - <location filename="../MqttClient.py" line="482"/> + <location filename="../MqttClient.py" line="479"/> <source>Connection Refused: broker unavailable.</source> <translation>Соединение отклонено: брокер недоступен.</translation> </message> <message> - <location filename="../MqttClient.py" line="486"/> + <location filename="../MqttClient.py" line="483"/> <source>Connection Refused: bad user name or password.</source> <translation>Соединение отклонено: неправильное имя пользователя или пароль.</translation> </message> <message> - <location filename="../MqttClient.py" line="490"/> + <location filename="../MqttClient.py" line="487"/> <source>Connection Refused: not authorised.</source> <translation>Соединение отклонено: нет авторизации.</translation> </message> <message> - <location filename="../MqttClient.py" line="494"/> + <location filename="../MqttClient.py" line="491"/> <source>Connection Refused: unknown reason.</source> <translation>Соединение отклонено: неизвестная причина.</translation> </message> @@ -191,7 +191,7 @@ <translation>Введите полный путь к файлу сертификата CA; оставьте поле пустым, чтобы использовать платформу по умолчанию</translation> </message> <message> - <location filename="../MqttConnectionOptionsDialog.py" line="48"/> + <location filename="../MqttConnectionOptionsDialog.py" line="46"/> <source>Certificate Files (*.crt *.pem);;All Files (*)</source> <translation>Файлы сертификатов (*.crt *.pem);;Все файлы (*)</translation> </message> @@ -379,7 +379,7 @@ <translation>Разрешить SSL/TLS соединения</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="588"/> + <location filename="../MqttConnectionProfilesDialog.py" line="590"/> <source>SSL/TLS Enabled</source> <translation>Разрешить SSL/TLS</translation> </message> @@ -454,12 +454,12 @@ <translation>Файлы ключей (*.key *.pem);;Все файлы (*)</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="694"/> + <location filename="../MqttConnectionProfilesDialog.py" line="696"/> <source>Changed Connection Profile</source> <translation>Измененный профиль соединения</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="694"/> + <location filename="../MqttConnectionProfilesDialog.py" line="696"/> <source>The current profile has unsaved changes. Shall these be saved?</source> <translation>В текущем профиле есть несохраненные изменения. Должны ли они быть сохранены?</translation> </message> @@ -499,37 +499,37 @@ <translation><p>Действительно удалить профиль соединения <b>{0}</b>?</p></translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="479"/> + <location filename="../MqttConnectionProfilesDialog.py" line="481"/> <source>Invalid Connection Parameters</source> <translation>Недопустимые параметры соединения</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="479"/> + <location filename="../MqttConnectionProfilesDialog.py" line="481"/> <source>An empty Client ID requires a clean session.</source> <translation>При незаданном ID клиента требуется чистый сеанс.</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="588"/> + <location filename="../MqttConnectionProfilesDialog.py" line="590"/> <source>Encrypted connection using SSL/TLS has been enabled. However, the broker port is still the default unencrypted port (port 1883). Shall this be changed?</source> <translation>Разрешено соединение с использованием шифрования SSL/TLS. Однако по-прежнему задействован порт брокера без шифрования, по умолчанию порт 1883. Изменить?</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="602"/> + <location filename="../MqttConnectionProfilesDialog.py" line="604"/> <source>SSL/TLS Disabled</source> <translation>SSL/TLS запрещено</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="602"/> + <location filename="../MqttConnectionProfilesDialog.py" line="604"/> <source>Encrypted connection using SSL/TLS has been disabled. However, the broker port is still the default encrypted port (port 8883). Shall this be changed?</source> <translation>Соединение с использованием шифрования SSL/TLS запрещено. Однако по-прежнему задействован порт брокера с шифрованием, по умолчанию порт 8883. Изменить?</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="670"/> + <location filename="../MqttConnectionProfilesDialog.py" line="672"/> <source>Changed Connection Profiles</source> <translation>Измененные профили соединений</translation> </message> <message> - <location filename="../MqttConnectionProfilesDialog.py" line="670"/> + <location filename="../MqttConnectionProfilesDialog.py" line="672"/> <source>The list of connection profiles has unsaved changes.</source> <translation>В списке профилей соединений имеются несохраненные изменения.</translation> </message> @@ -537,77 +537,77 @@ <context> <name>MqttErrorMessage</name> <message> - <location filename="../MqttClient.py" line="510"/> + <location filename="../MqttClient.py" line="507"/> <source>No error.</source> <translation>Нет ошибки.</translation> </message> <message> - <location filename="../MqttClient.py" line="514"/> + <location filename="../MqttClient.py" line="511"/> <source>Out of memory.</source> <translation>Недостаточно памяти.</translation> </message> <message> - <location filename="../MqttClient.py" line="518"/> + <location filename="../MqttClient.py" line="515"/> <source>A network protocol error occurred when communicating with the broker.</source> <translation>Во время общения с брокером произошла ошибка сетевого протокола.</translation> </message> <message> - <location filename="../MqttClient.py" line="523"/> + <location filename="../MqttClient.py" line="520"/> <source>Invalid function arguments provided.</source> <translation>Предоставлены недопустимые аргументы функции.</translation> </message> <message> - <location filename="../MqttClient.py" line="527"/> + <location filename="../MqttClient.py" line="524"/> <source>The client is not currently connected.</source> <translation>В настоящее время клиент не подключен.</translation> </message> <message> - <location filename="../MqttClient.py" line="531"/> + <location filename="../MqttClient.py" line="528"/> <source>The connection was refused.</source> <translation>Соединение было отклонено.</translation> </message> <message> - <location filename="../MqttClient.py" line="535"/> + <location filename="../MqttClient.py" line="532"/> <source>Message not found (internal error).</source> <translation>Сообщение не найдено (внутренняя ошибка).</translation> </message> <message> - <location filename="../MqttClient.py" line="539"/> + <location filename="../MqttClient.py" line="536"/> <source>The connection was lost.</source> <translation>Соединение было потеряно.</translation> </message> <message> - <location filename="../MqttClient.py" line="543"/> + <location filename="../MqttClient.py" line="540"/> <source>A TLS error occurred.</source> <translation>Произошла ошибка TLS.</translation> </message> <message> - <location filename="../MqttClient.py" line="547"/> + <location filename="../MqttClient.py" line="544"/> <source>Payload too large.</source> <translation>Слишком большая полезная нагрузка.</translation> </message> <message> - <location filename="../MqttClient.py" line="551"/> + <location filename="../MqttClient.py" line="548"/> <source>This feature is not supported.</source> <translation>Эта функция не поддерживается.</translation> </message> <message> - <location filename="../MqttClient.py" line="555"/> + <location filename="../MqttClient.py" line="552"/> <source>Authorisation failed.</source> <translation>Ошибка авторизации.</translation> </message> <message> - <location filename="../MqttClient.py" line="559"/> + <location filename="../MqttClient.py" line="556"/> <source>Access denied by ACL.</source> <translation>Отказано в доступе к ACL.</translation> </message> <message> - <location filename="../MqttClient.py" line="571"/> + <location filename="../MqttClient.py" line="568"/> <source>Unknown error.</source> <translation>Неизвестная ошибка.</translation> </message> <message> - <location filename="../MqttClient.py" line="567"/> + <location filename="../MqttClient.py" line="564"/> <source>Error defined by errno.</source> <translation>Ошибка, определяемая errno.</translation> </message> @@ -615,37 +615,37 @@ <context> <name>MqttLogLevelString</name> <message> - <location filename="../MqttClient.py" line="610"/> + <location filename="../MqttClient.py" line="607"/> <source>Unknown</source> <translation>Unknown</translation> </message> <message> - <location filename="../MqttClient.py" line="597"/> + <location filename="../MqttClient.py" line="594"/> <source>Info</source> <translation>Info</translation> </message> <message> - <location filename="../MqttClient.py" line="599"/> + <location filename="../MqttClient.py" line="596"/> <source>Notice</source> <translation>Notice</translation> </message> <message> - <location filename="../MqttClient.py" line="601"/> + <location filename="../MqttClient.py" line="598"/> <source>Warning</source> <translation>Warning</translation> </message> <message> - <location filename="../MqttClient.py" line="603"/> + <location filename="../MqttClient.py" line="600"/> <source>Error</source> <translation>Error</translation> </message> <message> - <location filename="../MqttClient.py" line="605"/> + <location filename="../MqttClient.py" line="602"/> <source>Debug</source> <translation>Debug</translation> </message> <message> - <location filename="../MqttClient.py" line="607"/> + <location filename="../MqttClient.py" line="604"/> <source>Logging Disabled</source> <translation>Ведение журнала запрещено</translation> </message> @@ -655,48 +655,53 @@ <message> <location filename="../../PluginMqttMonitor.py" line="62"/> <source>package not available</source> - <translation>пакет недоступен</translation> + <translation type="obsolete">пакет недоступен</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="67"/> + <location filename="../../PluginMqttMonitor.py" line="64"/> <source>MQTT</source> <translation>MQTT - клиентская библиотека Python</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="68"/> + <location filename="../../PluginMqttMonitor.py" line="65"/> <source>paho-mqtt</source> <translation>paho-mqtt</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="128"/> + <location filename="../../PluginMqttMonitor.py" line="123"/> <source>The 'paho-mqtt' package is not available.</source> <translation>Пакет 'paho-mqtt' недоступен.</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="153"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>MQTT Monitor</source> <translation>MQTT Monitor</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="153"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>M&QTT Monitor</source> <translation>M&QTT Monitor</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="153"/> + <location filename="../../PluginMqttMonitor.py" line="148"/> <source>Alt+Shift+Q</source> <translation>Alt+Shift+Q</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="159"/> + <location filename="../../PluginMqttMonitor.py" line="154"/> <source>Switch the input focus to the MQTT Monitor window.</source> <translation>Переключить фокус ввода в окно MQTT Monitor.</translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="161"/> + <location filename="../../PluginMqttMonitor.py" line="156"/> <source><b>Activate MQTT Monitor</b><p>This switches the input focus to the MQTT Monitor window.</p></source> <translation><b>Активировать MQTT Monitor</b><p>Переключение фокуса ввода в окно MQTT Monitor.</p></translation> </message> + <message> + <location filename="../../PluginMqttMonitor.py" line="59"/> + <source>(package not available)</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>MqttMonitorWidget</name> @@ -1081,32 +1086,32 @@ <translation>Следовать за получаемыми сообщениями</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="70"/> + <location filename="../MqttMonitorWidget.py" line="65"/> <source>All Files (*)</source> <translation>Все файлы (*)</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="248"/> + <location filename="../MqttMonitorWidget.py" line="243"/> <source>Connection timed out</source> <translation>Время ожидания соединения истекло</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="267"/> + <location filename="../MqttMonitorWidget.py" line="262"/> <source>Connection to Broker shut down cleanly.</source> <translation>Соединение с брокером закрыто. Очистка произведена.</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="322"/> + <location filename="../MqttMonitorWidget.py" line="317"/> <source>{0}: {1}</source> <translation>{0}: {1}</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="515"/> + <location filename="../MqttMonitorWidget.py" line="512"/> <source>Subscribe to Topic</source> <translation>Подписаться на тему</translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="515"/> + <location filename="../MqttMonitorWidget.py" line="512"/> <source>Subscriptions to the Status topic '$SYS' shall be done on the 'Status' tab.</source> <translation>Подписки на тему статуса «$ SYS» должны быть сделаны на вкладке «Статус».</translation> </message>
--- a/PluginMqttMonitor.e4p Thu May 28 17:36:58 2020 +0200 +++ b/PluginMqttMonitor.e4p Tue Jun 23 19:26:33 2020 +0200 @@ -249,6 +249,25 @@ <value> <dict> <key> + <string>AnnotationsChecker</string> + </key> + <value> + <dict> + <key> + <string>MaximumComplexity</string> + </key> + <value> + <int>3</int> + </value> + <key> + <string>MinimumCoverage</string> + </key> + <value> + <int>75</int> + </value> + </dict> + </value> + <key> <string>BlankLines</string> </key> <value> @@ -289,6 +308,19 @@ </dict> </value> <key> + <string>CommentedCodeChecker</string> + </key> + <value> + <dict> + <key> + <string>Aggressive</string> + </key> + <value> + <bool>False</bool> + </value> + </dict> + </value> + <key> <string>CopyrightAuthor</string> </key> <value> @@ -307,6 +339,12 @@ <string>eric</string> </value> <key> + <string>EnabledCheckerCategories</string> + </key> + <value> + <string>C, D, E, M, N, S, W</string> + </value> + <key> <string>ExcludeFiles</string> </key> <value> @@ -316,7 +354,7 @@ <string>ExcludeMessages</string> </key> <value> - <string>C101, E265, E266, E305, E402, M201, M811, N802, N803, N807, N808, N821, W293, W504</string> + <string>C101,E265,E266,E305,E402,M201,M811,N802,N803,N807,N808,N821,W293,W504</string> </value> <key> <string>FixCodes</string> @@ -334,7 +372,7 @@ <string>FutureChecker</string> </key> <value> - <string>unicode_literals</string> + <string></string> </value> <key> <string>HangClosing</string> @@ -367,6 +405,12 @@ <int>10</int> </value> <key> + <string>MaxDocLineLength</string> + </key> + <value> + <int>79</int> + </value> + <key> <string>MaxLineLength</string> </key> <value> @@ -385,6 +429,91 @@ <bool>True</bool> </value> <key> + <string>SecurityChecker</string> + </key> + <value> + <dict> + <key> + <string>CheckTypedException</string> + </key> + <value> + <bool>False</bool> + </value> + <key> + <string>HardcodedTmpDirectories</string> + </key> + <value> + <list> + <string>/tmp</string> + <string>/var/tmp</string> + <string>/dev/shm</string> + <string>~/tmp</string> + </list> + </value> + <key> + <string>InsecureHashes</string> + </key> + <value> + <list> + <string>md4</string> + <string>md5</string> + <string>sha</string> + <string>sha1</string> + </list> + </value> + <key> + <string>InsecureSslProtocolVersions</string> + </key> + <value> + <list> + <string>PROTOCOL_SSLv2</string> + <string>SSLv2_METHOD</string> + <string>SSLv23_METHOD</string> + <string>PROTOCOL_SSLv3</string> + <string>PROTOCOL_TLSv1</string> + <string>SSLv3_METHOD</string> + <string>TLSv1_METHOD</string> + </list> + </value> + <key> + <string>WeakKeySizeDsaHigh</string> + </key> + <value> + <string>1024</string> + </value> + <key> + <string>WeakKeySizeDsaMedium</string> + </key> + <value> + <string>2048</string> + </value> + <key> + <string>WeakKeySizeEcHigh</string> + </key> + <value> + <string>160</string> + </value> + <key> + <string>WeakKeySizeEcMedium</string> + </key> + <value> + <string>224</string> + </value> + <key> + <string>WeakKeySizeRsaHigh</string> + </key> + <value> + <string>1024</string> + </value> + <key> + <string>WeakKeySizeRsaMedium</string> + </key> + <value> + <string>2048</string> + </value> + </dict> + </value> + <key> <string>ShowIgnored</string> </key> <value>
--- a/PluginMqttMonitor.py Thu May 28 17:36:58 2020 +0200 +++ b/PluginMqttMonitor.py Tue Jun 23 19:26:33 2020 +0200 @@ -7,8 +7,6 @@ Module implementing the MQTT Monitor plug-in. """ -from __future__ import unicode_literals - import os import json @@ -26,7 +24,7 @@ author = "Detlev Offenbach <detlev@die-offenbachs.de>" autoactivate = True deactivateable = True -version = "1.2.3" +version = "2.0.0" className = "MqttMonitorPlugin" packageName = "MqttMonitor" shortDescription = "Plug-in implementing a tool to connect to a MQTT broker" @@ -41,7 +39,6 @@ ) needsRestart = False pyqtApi = 2 -python2Compatible = True # End-Of-Header error = "" @@ -62,14 +59,12 @@ version = QCoreApplication.translate( "MqttMonitorPlugin", "(package not available)") - data = { + return { "programEntry": False, "header": QCoreApplication.translate("MqttMonitorPlugin", "MQTT"), "text": QCoreApplication.translate("MqttMonitorPlugin", "paho-mqtt"), "version": version, } - - return data def prepareUninstall(): @@ -138,7 +133,7 @@ lightness = palette.color(QPalette.Window).lightness() usesDarkPalette = lightness <= 128 if usesDarkPalette: - iconSuffix = "dark" + iconSuffix = "dark" else: iconSuffix = "light"