RPI: some more changes to properly throw and catch exceptions

This commit is contained in:
Christian Ehrlicher 2022-10-02 13:03:43 +02:00
parent f332738ceb
commit 5cd2d70a9b
3 changed files with 16 additions and 7 deletions

View file

@ -598,6 +598,9 @@ class InverterTransaction:
wait = True
except TimeoutError:
pass
except BufferError as e:
print(f'Buffer error {e}')
pass
return wait

View file

@ -86,8 +86,8 @@ def poll_inverter(inverter, do_init, retries=4):
dst=inverter_ser
)))
response = None
try:
while com.rxtx():
try:
response = com.get_payload()
payload_ttl = 0
except Exception as e_all:
@ -324,3 +324,6 @@ if __name__ == '__main__':
except KeyboardInterrupt:
sys.exit()
except Exception as e:
print ('Exception catched: %s' % e)
raise

View file

@ -265,7 +265,7 @@ class VzInverterOutput:
r = self.session.get(url)
if r.status_code != 200:
raise ValueError('Could not send request (%s)' % url)
except ConnectionError as e:
except requests.exceptions.ConnectionError as e:
raise ValueError('Could not send request (%s)' % e)
class VolkszaehlerOutputPlugin(OutputPluginFactory):
@ -300,4 +300,7 @@ class VolkszaehlerOutputPlugin(OutputPluginFactory):
serial = data["inverter_ser"]
if serial in self.inverters:
output = self.inverters[serial]
try:
output.store_status(data, self.session)
except ValueError as e:
print('Could not send data to volkszaehler instance: %s' % e)