Mit default zusammenführen

This commit is contained in:
2018-09-03 07:55:54 +02:00
11 changed files with 629 additions and 45 deletions

View File

@@ -13,7 +13,7 @@ Packages</h3>
<table>
<tr>
<td><a style="color:#0000FF" href="index-revpipyload.shared.html">shared</a></td>
<td>Shared modules.</td>
<td></td>
</tr>
</table>
@@ -27,6 +27,9 @@ Modules</h3>
<td><a style="color:#0000FF" href="logsystem.html">logsystem</a></td>
<td>Modul fuer die Verwaltung der Logdateien.</td>
</tr><tr>
<td><a style="color:#0000FF" href="mqttserver.html">mqttserver</a></td>
<td>Stellt die MQTT Uebertragung fuer IoT-Zwecke bereit.</td>
</tr><tr>
<td><a style="color:#0000FF" href="picontrolserver.html">picontrolserver</a></td>
<td>Modul fuer die Verwaltung der PLC-Slave Funktionen.</td>
</tr><tr>

177
doc/mqttserver.html Normal file
View File

@@ -0,0 +1,177 @@
<!DOCTYPE html>
<html><head>
<title>mqttserver</title>
<meta charset="UTF-8">
</head>
<body style="background-color:#FFFFFF;color:#000000"><a NAME="top" ID="top"></a>
<h1 style="background-color:#FFFFFF;color:#0000FF">
mqttserver</h1>
<p>
Stellt die MQTT Uebertragung fuer IoT-Zwecke bereit.
</p>
<h3 style="background-color:#FFFFFF;color:#FF0000">
Global Attributes</h3>
<table>
<tr><td>None</td></tr>
</table>
<h3 style="background-color:#FFFFFF;color:#FF0000">
Classes</h3>
<table>
<tr>
<td><a style="color:#0000FF" href="#MqttServer">MqttServer</a></td>
<td>Server fuer die Uebertragung des Prozessabbilds per MQTT.</td>
</tr>
</table>
<h3 style="background-color:#FFFFFF;color:#FF0000">
Functions</h3>
<table>
<tr><td>None</td></tr>
</table>
<hr /><hr />
<a NAME="MqttServer" ID="MqttServer"></a>
<h2 style="background-color:#FFFFFF;color:#0000FF">MqttServer</h2>
<p>
Server fuer die Uebertragung des Prozessabbilds per MQTT.
</p>
<h3 style="background-color:#FFFFFF;color:#FF0000">
Derived from</h3>
Thread
<h3 style="background-color:#FFFFFF;color:#FF0000">
Class Attributes</h3>
<table>
<tr><td>None</td></tr>
</table>
<h3 style="background-color:#FFFFFF;color:#FF0000">
Class Methods</h3>
<table>
<tr><td>None</td></tr>
</table>
<h3 style="background-color:#FFFFFF;color:#FF0000">
Methods</h3>
<table>
<tr>
<td><a style="color:#0000FF" href="#MqttServer.__init__">MqttServer</a></td>
<td>Init MqttServer class.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#MqttServer._get_procimglength">_get_procimglength</a></td>
<td>Ermittelt aus piCtory Konfiguration die laenge.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#MqttServer._on_connect">_on_connect</a></td>
<td>Verbindung zu MQTT Broker.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#MqttServer._on_disconnect">_on_disconnect</a></td>
<td>Wertet Verbindungsabbruch aus.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#MqttServer._on_message">_on_message</a></td>
<td>Sendet piCtory Konfiguration.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#MqttServer._send_pictory_conf">_send_pictory_conf</a></td>
<td>Sendet piCtory Konfiguration.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#MqttServer.newlogfile">newlogfile</a></td>
<td>Konfiguriert die FileHandler auf neue Logdatei.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#MqttServer.run">run</a></td>
<td>Startet die Uebertragung per MQTT.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#MqttServer.stop">stop</a></td>
<td>Stoppt die Uebertragung per MQTT.</td>
</tr>
</table>
<h3 style="background-color:#FFFFFF;color:#FF0000">
Static Methods</h3>
<table>
<tr><td>None</td></tr>
</table>
<a NAME="MqttServer.__init__" ID="MqttServer.__init__"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
MqttServer (Constructor)</h3>
<b>MqttServer</b>(<i>basetopic, sendinterval, host, port=1883, tls_set=False, username="", password=None, client_id=""</i>)
<p>
Init MqttServer class.
</p><dl>
<dt><i>basetopic</i></dt>
<dd>
Basis-Topic fuer Datenaustausch
</dd><dt><i>sendinterval</i></dt>
<dd>
Prozessabbild alle n Sekunden senden
</dd><dt><i>host</i></dt>
<dd>
Adresse <class 'str'> des MQTT-Servers
</dd><dt><i>port</i></dt>
<dd>
Portnummer <class 'int'> des MQTT-Servers
</dd><dt><i>keepalive</i></dt>
<dd>
MQTT Ping bei leerlauf
</dd><dt><i>tls_set</i></dt>
<dd>
TLS fuer Verbindung zum MQTT-Server verwenden
</dd><dt><i>username</i></dt>
<dd>
Optional Benutzername fuer MQTT-Server
</dd><dt><i>password</i></dt>
<dd>
Optional Password fuer MQTT-Server
</dd><dt><i>client_id</i></dt>
<dd>
MQTT ClientID, wenn leer automatisch random erzeugung
</dd>
</dl><a NAME="MqttServer._get_procimglength" ID="MqttServer._get_procimglength"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
MqttServer._get_procimglength</h3>
<b>_get_procimglength</b>(<i></i>)
<p>
Ermittelt aus piCtory Konfiguration die laenge.
</p><dl>
<dt>Returns:</dt>
<dd>
Laenge des Prozessabbilds <class 'int'>
</dd>
</dl><a NAME="MqttServer._on_connect" ID="MqttServer._on_connect"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
MqttServer._on_connect</h3>
<b>_on_connect</b>(<i>client, userdata, flags, rc</i>)
<p>
Verbindung zu MQTT Broker.
</p><a NAME="MqttServer._on_disconnect" ID="MqttServer._on_disconnect"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
MqttServer._on_disconnect</h3>
<b>_on_disconnect</b>(<i>client, userdata, rc</i>)
<p>
Wertet Verbindungsabbruch aus.
</p><a NAME="MqttServer._on_message" ID="MqttServer._on_message"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
MqttServer._on_message</h3>
<b>_on_message</b>(<i>client, userdata, msg</i>)
<p>
Sendet piCtory Konfiguration.
</p><a NAME="MqttServer._send_pictory_conf" ID="MqttServer._send_pictory_conf"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
MqttServer._send_pictory_conf</h3>
<b>_send_pictory_conf</b>(<i></i>)
<p>
Sendet piCtory Konfiguration.
</p><a NAME="MqttServer.newlogfile" ID="MqttServer.newlogfile"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
MqttServer.newlogfile</h3>
<b>newlogfile</b>(<i></i>)
<p>
Konfiguriert die FileHandler auf neue Logdatei.
</p><a NAME="MqttServer.run" ID="MqttServer.run"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
MqttServer.run</h3>
<b>run</b>(<i></i>)
<p>
Startet die Uebertragung per MQTT.
</p><a NAME="MqttServer.stop" ID="MqttServer.stop"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
MqttServer.stop</h3>
<b>stop</b>(<i></i>)
<p>
Stoppt die Uebertragung per MQTT.
</p>
<div align="right"><a style="color:#0000FF" href="#top">Up</a></div>
<hr />
</body></html>

View File

@@ -9,8 +9,6 @@ revpipyload</h1>
<p>
Revolution Pi Python PLC Loader.
</p><p>
Webpage: https://revpimodio.org/revpipyplc/
</p><p>
Stellt das RevPiPyLoad Programm bereit. Dieses Programm lauft als Daemon auf
dem Revolution Pi. Es stellt Funktionen bereit, die es ermoeglichen ein Python
Programm zu starten und fuehrt dessen Ausgaben in eine Logdatei. Die Logdaten
@@ -34,7 +32,7 @@ begrenzt werden!
<h3 style="background-color:#FFFFFF;color:#FF0000">
Global Attributes</h3>
<table>
<tr><td>__author__</td></tr><tr><td>__copyright__</td></tr><tr><td>__license__</td></tr><tr><td>__version__</td></tr>
<tr><td>pyloadversion</td></tr>
</table>
<h3 style="background-color:#FFFFFF;color:#FF0000">
Classes</h3>
@@ -89,6 +87,9 @@ Methods</h3>
<td><a style="color:#0000FF" href="#RevPiPyLoad._loadconfig">_loadconfig</a></td>
<td>Load configuration file and setup modul.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#RevPiPyLoad._plcmqtt">_plcmqtt</a></td>
<td>Konfiguriert den MQTT-Thread fuer die Ausfuehrung.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#RevPiPyLoad._plcslave">_plcslave</a></td>
<td>Erstellt den PlcSlave-Server Thread.</td>
</tr><tr>
@@ -113,6 +114,9 @@ Methods</h3>
<td><a style="color:#0000FF" href="#RevPiPyLoad.stop">stop</a></td>
<td>Stop revpipyload.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#RevPiPyLoad.stop_plcmqtt">stop_plcmqtt</a></td>
<td>Beendet MQTT Sender.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#RevPiPyLoad.stop_plcprogram">stop_plcprogram</a></td>
<td>Beendet PLC Programm.</td>
</tr><tr>
@@ -134,6 +138,15 @@ Methods</h3>
<td><a style="color:#0000FF" href="#RevPiPyLoad.xml_getprocimg">xml_getprocimg</a></td>
<td>Gibt die Rohdaten aus piControl0 zurueck.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#RevPiPyLoad.xml_mqttrunning">xml_mqttrunning</a></td>
<td>Prueft ob MQTT Uebertragung noch lauft.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#RevPiPyLoad.xml_mqttstart">xml_mqttstart</a></td>
<td>Startet die MQTT Uebertragung.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#RevPiPyLoad.xml_mqttstop">xml_mqttstop</a></td>
<td>Stoppt die MQTT Uebertragung.</td>
</tr><tr>
<td><a style="color:#0000FF" href="#RevPiPyLoad.xml_plcdownload">xml_plcdownload</a></td>
<td>Uebertraegt ein Archiv vom plcworkdir.</td>
</tr><tr>
@@ -219,7 +232,18 @@ RevPiPyLoad._loadconfig</h3>
<b>_loadconfig</b>(<i></i>)
<p>
Load configuration file and setup modul.
</p><a NAME="RevPiPyLoad._plcslave" ID="RevPiPyLoad._plcslave"></a>
</p><a NAME="RevPiPyLoad._plcmqtt" ID="RevPiPyLoad._plcmqtt"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
RevPiPyLoad._plcmqtt</h3>
<b>_plcmqtt</b>(<i></i>)
<p>
Konfiguriert den MQTT-Thread fuer die Ausfuehrung.
</p><dl>
<dt>Returns:</dt>
<dd>
MQTT-Thread Object or None
</dd>
</dl><a NAME="RevPiPyLoad._plcslave" ID="RevPiPyLoad._plcslave"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
RevPiPyLoad._plcslave</h3>
<b>_plcslave</b>(<i></i>)
@@ -290,6 +314,12 @@ RevPiPyLoad.stop</h3>
<b>stop</b>(<i></i>)
<p>
Stop revpipyload.
</p><a NAME="RevPiPyLoad.stop_plcmqtt" ID="RevPiPyLoad.stop_plcmqtt"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
RevPiPyLoad.stop_plcmqtt</h3>
<b>stop_plcmqtt</b>(<i></i>)
<p>
Beendet MQTT Sender.
</p><a NAME="RevPiPyLoad.stop_plcprogram" ID="RevPiPyLoad.stop_plcprogram"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
RevPiPyLoad.stop_plcprogram</h3>
@@ -352,6 +382,42 @@ Gibt die Rohdaten aus piControl0 zurueck.
<dd>
xmlrpc.client.Binary()
</dd>
</dl><a NAME="RevPiPyLoad.xml_mqttrunning" ID="RevPiPyLoad.xml_mqttrunning"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
RevPiPyLoad.xml_mqttrunning</h3>
<b>xml_mqttrunning</b>(<i></i>)
<p>
Prueft ob MQTT Uebertragung noch lauft.
</p><dl>
<dt>Returns:</dt>
<dd>
True, wenn MQTT Uebertragung noch lauft
</dd>
</dl><a NAME="RevPiPyLoad.xml_mqttstart" ID="RevPiPyLoad.xml_mqttstart"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
RevPiPyLoad.xml_mqttstart</h3>
<b>xml_mqttstart</b>(<i></i>)
<p>
Startet die MQTT Uebertragung.
</p><dl>
<dt>Returns:</dt>
<dd>
Statuscode:
0: erfolgreich gestartet
-1: Nicht aktiv in Konfiguration
-2: Laeuft bereits
</dd>
</dl><a NAME="RevPiPyLoad.xml_mqttstop" ID="RevPiPyLoad.xml_mqttstop"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
RevPiPyLoad.xml_mqttstop</h3>
<b>xml_mqttstop</b>(<i></i>)
<p>
Stoppt die MQTT Uebertragung.
</p><dl>
<dt>Returns:</dt>
<dd>
True, wenn stop erfolgreich
</dd>
</dl><a NAME="RevPiPyLoad.xml_plcdownload" ID="RevPiPyLoad.xml_plcdownload"></a>
<h3 style="background-color:#FFFFFF;color:#FF0000">
RevPiPyLoad.xml_plcdownload</h3>