mirror of
https://github.com/naruxde/revpipyload.git
synced 2025-12-29 02:08:04 +01:00
Bei Änderung von replace_ios nur Clients trennen, die Hashwert anforderten
This commit is contained in:
@@ -69,6 +69,9 @@ Methods</h3>
|
|||||||
<td><a style="color:#0000FF" href="#RevPiSlave.disconnect_all">disconnect_all</a></td>
|
<td><a style="color:#0000FF" href="#RevPiSlave.disconnect_all">disconnect_all</a></td>
|
||||||
<td>Close all device connection.</td>
|
<td>Close all device connection.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
|
<td><a style="color:#0000FF" href="#RevPiSlave.disconnect_replace_ios">disconnect_replace_ios</a></td>
|
||||||
|
<td>Close all device with loaded replace_ios file.</td>
|
||||||
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiSlave.newlogfile">newlogfile</a></td>
|
<td><a style="color:#0000FF" href="#RevPiSlave.newlogfile">newlogfile</a></td>
|
||||||
<td>Konfiguriert die FileHandler auf neue Logdatei.</td>
|
<td>Konfiguriert die FileHandler auf neue Logdatei.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
@@ -113,6 +116,12 @@ RevPiSlave.disconnect_all</h3>
|
|||||||
<b>disconnect_all</b>(<i></i>)
|
<b>disconnect_all</b>(<i></i>)
|
||||||
<p>
|
<p>
|
||||||
Close all device connection.
|
Close all device connection.
|
||||||
|
</p><a NAME="RevPiSlave.disconnect_replace_ios" ID="RevPiSlave.disconnect_replace_ios"></a>
|
||||||
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
|
RevPiSlave.disconnect_replace_ios</h3>
|
||||||
|
<b>disconnect_replace_ios</b>(<i></i>)
|
||||||
|
<p>
|
||||||
|
Close all device with loaded replace_ios file.
|
||||||
</p><a NAME="RevPiSlave.newlogfile" ID="RevPiSlave.newlogfile"></a>
|
</p><a NAME="RevPiSlave.newlogfile" ID="RevPiSlave.newlogfile"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiSlave.newlogfile</h3>
|
RevPiSlave.newlogfile</h3>
|
||||||
|
|||||||
@@ -34,6 +34,7 @@ mqttserver.__copyright__?9
|
|||||||
mqttserver.__license__?9
|
mqttserver.__license__?9
|
||||||
picontrolserver.RevPiSlave.check_connectedacl?4()
|
picontrolserver.RevPiSlave.check_connectedacl?4()
|
||||||
picontrolserver.RevPiSlave.disconnect_all?4()
|
picontrolserver.RevPiSlave.disconnect_all?4()
|
||||||
|
picontrolserver.RevPiSlave.disconnect_replace_ios?4()
|
||||||
picontrolserver.RevPiSlave.newlogfile?4()
|
picontrolserver.RevPiSlave.newlogfile?4()
|
||||||
picontrolserver.RevPiSlave.run?4()
|
picontrolserver.RevPiSlave.run?4()
|
||||||
picontrolserver.RevPiSlave.stop?4()
|
picontrolserver.RevPiSlave.stop?4()
|
||||||
|
|||||||
@@ -76,6 +76,13 @@ class RevPiSlave(Thread):
|
|||||||
for th in self._th_dev:
|
for th in self._th_dev:
|
||||||
th.stop()
|
th.stop()
|
||||||
|
|
||||||
|
def disconnect_replace_ios(self):
|
||||||
|
"""Close all device with loaded replace_ios file."""
|
||||||
|
# Alle Threads beenden die Replace_IOs emfpangen haben
|
||||||
|
for th in self._th_dev:
|
||||||
|
if th.got_replace_ios:
|
||||||
|
th.stop()
|
||||||
|
|
||||||
def newlogfile(self):
|
def newlogfile(self):
|
||||||
"""Konfiguriert die FileHandler auf neue Logdatei."""
|
"""Konfiguriert die FileHandler auf neue Logdatei."""
|
||||||
pass
|
pass
|
||||||
@@ -183,6 +190,7 @@ class RevPiSlaveDev(Thread):
|
|||||||
self._deadtime = None
|
self._deadtime = None
|
||||||
self._devcon, self._addr = devcon
|
self._devcon, self._addr = devcon
|
||||||
self._evt_exit = Event()
|
self._evt_exit = Event()
|
||||||
|
self.got_replace_ios = False
|
||||||
self._writeerror = False
|
self._writeerror = False
|
||||||
|
|
||||||
# Sicherheitsbytes
|
# Sicherheitsbytes
|
||||||
@@ -415,7 +423,7 @@ class RevPiSlaveDev(Thread):
|
|||||||
continue
|
continue
|
||||||
|
|
||||||
elif cmd == b'RP':
|
elif cmd == b'RP':
|
||||||
# piCtory Konfiguration senden
|
# Replace_IOs Konfiguration senden
|
||||||
proginit.logger.debug(
|
proginit.logger.debug(
|
||||||
"transfair replace_io configuration: {0}"
|
"transfair replace_io configuration: {0}"
|
||||||
"".format(proginit.pargs.configrsc)
|
"".format(proginit.pargs.configrsc)
|
||||||
@@ -439,6 +447,8 @@ class RevPiSlaveDev(Thread):
|
|||||||
|
|
||||||
elif cmd == b'RH':
|
elif cmd == b'RH':
|
||||||
# Replace_IOs md5 Hashwert senden (16 Byte)
|
# Replace_IOs md5 Hashwert senden (16 Byte)
|
||||||
|
self.got_replace_ios = True
|
||||||
|
|
||||||
replace_ios = proginit.conf["DEFAULT"].get("replace_ios", "")
|
replace_ios = proginit.conf["DEFAULT"].get("replace_ios", "")
|
||||||
try:
|
try:
|
||||||
if replace_ios:
|
if replace_ios:
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ begrenzt werden!
|
|||||||
__author__ = "Sven Sager"
|
__author__ = "Sven Sager"
|
||||||
__copyright__ = "Copyright (C) 2018 Sven Sager"
|
__copyright__ = "Copyright (C) 2018 Sven Sager"
|
||||||
__license__ = "GPLv3"
|
__license__ = "GPLv3"
|
||||||
__version__ = "0.7.6"
|
__version__ = "0.8.0"
|
||||||
import gzip
|
import gzip
|
||||||
import logsystem
|
import logsystem
|
||||||
import picontrolserver
|
import picontrolserver
|
||||||
@@ -739,10 +739,20 @@ class RevPiPyLoad():
|
|||||||
# Dateiveränderungen prüfen mit beiden Funktionen!
|
# Dateiveränderungen prüfen mit beiden Funktionen!
|
||||||
if self.check_pictory_changed():
|
if self.check_pictory_changed():
|
||||||
file_changed = True
|
file_changed = True
|
||||||
|
|
||||||
|
# Alle Verbindungen von ProcImgServer trennen
|
||||||
|
self.th_plcslave.disconnect_all()
|
||||||
|
|
||||||
proginit.logger.warning("piCtory configuration was changed")
|
proginit.logger.warning("piCtory configuration was changed")
|
||||||
|
|
||||||
if self.check_replace_ios_changed():
|
if self.check_replace_ios_changed():
|
||||||
|
if not file_changed:
|
||||||
|
# Verbindungen von ProcImgServer trennen mit replace_ios
|
||||||
|
self.th_plcslave.disconnect_replace_ios()
|
||||||
|
|
||||||
file_changed = True
|
file_changed = True
|
||||||
proginit.logger.warning("replace ios file was changed")
|
proginit.logger.warning("replace ios file was changed")
|
||||||
|
|
||||||
if file_changed:
|
if file_changed:
|
||||||
# Auf Dateiveränderung reagieren
|
# Auf Dateiveränderung reagieren
|
||||||
|
|
||||||
@@ -750,9 +760,6 @@ class RevPiPyLoad():
|
|||||||
if self.mqtt and self.th_plcmqtt is not None:
|
if self.mqtt and self.th_plcmqtt is not None:
|
||||||
self.th_plcmqtt.reload_revpimodio()
|
self.th_plcmqtt.reload_revpimodio()
|
||||||
|
|
||||||
# Alle Verbindungen von ProcImgServer trennen
|
|
||||||
self.th_plcslave.disconnect_all()
|
|
||||||
|
|
||||||
# XML Prozessabbildserver neu laden
|
# XML Prozessabbildserver neu laden
|
||||||
if self.xml_ps is not None:
|
if self.xml_ps is not None:
|
||||||
self.xml_psstop()
|
self.xml_psstop()
|
||||||
|
|||||||
Reference in New Issue
Block a user