diff --git a/reader.py b/reader.py index 2cc94ba..821238b 100644 --- a/reader.py +++ b/reader.py @@ -40,20 +40,20 @@ class Reader: raise Exception(f"Could not get machine {self.machine_urn}. Machine does not exist or insufficient permissions") if ma.state == "inUse": - if ma.inuse == None: + try: + await ma.inuse.giveBack().a_wait() + except: await client.publish(f"fabreader/{self.reader_id}/display/info", payload="Wrong User", qos=1, retain=False) await asyncio.sleep(2) await client.publish(f"fabreader/{self.reader_id}/display/info", payload="", qos=1, retain=False) - else: - await ma.inuse.giveBack().a_wait() else: - if ma.use == None: + try: + await ma.use.use().a_wait() + except: await client.publish(f"fabreader/{self.reader_id}/display/info", payload="No Authorization", qos=1, retain=False) await asyncio.sleep(2) await client.publish(f"fabreader/{self.reader_id}/display/info", payload="", qos=1, retain=False) - else: - await ma.use.use().a_wait() - + await client.publish(f"fabreader/{self.reader_id}/stopOTA", payload="", qos=2, retain=False) self.session = None