From b26fbc2dc0ae0fcd1f81252021a6f4c854d9cf90 Mon Sep 17 00:00:00 2001 From: NaruX Date: Tue, 11 Apr 2017 12:39:58 +0200 Subject: [PATCH] =?UTF-8?q?Logdateien=20als=20Binary=20=C3=BCbertragen=20r?= =?UTF-8?q?esetpicontrol=20f=C3=BCr=20XML=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- revpipyload.e4p | 4 ++-- revpipyload/revpipyload.py | 21 ++++++++++++--------- setup.py | 2 +- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/revpipyload.e4p b/revpipyload.e4p index b5a080e..e78a34c 100644 --- a/revpipyload.e4p +++ b/revpipyload.e4p @@ -1,7 +1,7 @@ - + en_US @@ -9,7 +9,7 @@ Python3 Console Dieser Loader wird über das Init-System geladen und führt das angegebene Pythonprogramm aus. Es ist für den RevolutionPi gedacht um automatisch das SPS-Programm zu starten. - 0.2.11 + 0.2.12 Sven Sager akira@narux.de diff --git a/revpipyload/revpipyload.py b/revpipyload/revpipyload.py index 2ce5da4..6e81291 100755 --- a/revpipyload/revpipyload.py +++ b/revpipyload/revpipyload.py @@ -33,6 +33,7 @@ begrenzt werden! import gzip import proginit import os +import pickle import shlex import signal import subprocess @@ -53,7 +54,7 @@ from xmlrpc.server import SimpleXMLRPCServer configrsc = "/opt/KUNBUS/config.rsc" picontrolreset = "/opt/KUNBUS/piControlReset" procimg = "/dev/piControl0" -pyloadverion = "0.2.11" +pyloadverion = "0.2.12" class LogReader(): @@ -85,7 +86,7 @@ class LogReader(): """Gibt neue Zeilen ab letzen Aufruf zurueck. @returns: list() mit neuen Zeilen""" if not os.access(proginit.logapp, os.R_OK): - return [] + return Binary(pickle.dumps([])) else: if self.fhapp is None or self.fhapp.closed: self.fhapp = open(proginit.logapp) @@ -103,7 +104,7 @@ class LogReader(): proginit.logger.debug( "got {} new app log lines".format(len(lst_new)) ) - return lst_new + return Binary(pickle.dumps(lst_new)) def get_applog(self): """Gibt die gesamte Logdatei zurueck. @@ -112,12 +113,12 @@ class LogReader(): proginit.logger.error( "can not access logfile {}".format(proginit.logapp) ) - return "" + return Binary(pickle.dumps("")) else: if self.fhapp is None or self.fhapp.closed: self.fhapp = open(proginit.logapp) self.fhapp.seek(0) - return self.fhapp.read() + return Binary(pickle.dumps(self.fhapp.read())) def get_plclines(self): """Gibt neue Zeilen ab letzen Aufruf zurueck. @@ -126,7 +127,7 @@ class LogReader(): proginit.logger.error( "can not access logfile {}".format(proginit.logplc) ) - return [] + return Binary(pickle.dumps([])) else: if self.fhplc is None or self.fhplc.closed: self.fhplc = open(proginit.logplc) @@ -144,7 +145,7 @@ class LogReader(): proginit.logger.debug( "got {} new pyloader log lines".format(len(lst_new)) ) - return lst_new + return Binary(pickle.dumps(lst_new)) def get_plclog(self): """Gibt die gesamte Logdatei zurueck. @@ -153,12 +154,12 @@ class LogReader(): proginit.logger.error( "can not access logfile {}".format(proginit.logplc) ) - return "" + return Binary(pickle.dumps("")) else: if self.fhplc is None or self.fhplc.closed: self.fhplc = open(proginit.logplc) self.fhplc.seek(0) - return self.fhplc.read() + return Binary(pickle.dumps(self.fhplc.read())) class PipeLogwriter(Thread): @@ -588,6 +589,8 @@ class RevPiPyLoad(): self.xml_plcupload, "plcupload") self.xsrv.register_function( self.xml_plcuploadclean, "plcuploadclean") + self.xsrv.register_function( + lambda: os.system(picontrolreset), "resetpicontrol") self.xsrv.register_function( self.xml_setconfig, "set_config") self.xsrv.register_function( diff --git a/setup.py b/setup.py index 0ef2d3e..d0fa2cb 100644 --- a/setup.py +++ b/setup.py @@ -27,7 +27,7 @@ setup( license="LGPLv3", name="revpipyload", - version="0.2.11", + version="0.2.12", scripts=["data/revpipyload"],