X-Git-Url: https://git.realraum.at/?p=svn42.git;a=blobdiff_plain;f=update-xmpp-status.py;h=74283f10d6b1ec63da439f72b2336d94a099e1f4;hp=35e9473e53c3345656f13b90e987662717175653;hb=9b57ad36fa772a94f8f38321a88f2b1df1818a51;hpb=02319119bfafbf48ef331090f7b4c2800901d6c5 diff --git a/update-xmpp-status.py b/update-xmpp-status.py index 35e9473..74283f1 100755 --- a/update-xmpp-status.py +++ b/update-xmpp-status.py @@ -58,7 +58,7 @@ class UWSConfig: self.config_parser.set('msg','bored',"The Button has been pressed ! Maybe somebody want's company. Go Visit !") self.config_parser.set('msg','present',"Somebodys presence has been detected${door_action_msg}") self.config_parser.set('msg','notpresent',"Nobody seems to be here, guess everybody left${door_action_msg}") - self.config_parser.set('msg','door_action_msg',", door ${door_status} ${by_whom}") + self.config_parser.set('msg','door_action_msg',", door last ${door_status} ${by_whom}") self.config_parser.set('msg','status_error_msg',"ERROR Last Operation took too long !!!") self.config_parser.add_section('cam') # self.config_parser.set('cam','freeze_url',"http://www.realraum.at/cgi/freeze_realraum_picture.pl?freeze=98VB9s") @@ -301,7 +301,7 @@ def substituteMessageVariables(msg, door_tuple): def formatAndDistributePresence(presence, door_tuple=(None,None)): picurl="" - if uwscfg.cam_provide_pic: + if uwscfg.cam_provide_pic == "True": picurl="\n"+uwscfg.cam_picture_url if presence == "yes": distributeXmppMsg(substituteMessageVariables(uwscfg.msg_present, door_tuple)+picurl) @@ -311,13 +311,13 @@ def formatAndDistributePresence(presence, door_tuple=(None,None)): def formatAndDistributeWarning(msg, door_tuple=(None,None)): distributeXmppMsg("Warning: "+msg , high_priority=True) -current_status = (None, None, None, None) +current_status = (None, None, None, None, None) def filterAndFormatMessage(new_status): global current_status if new_status[0] == "error": distributeXmppMsg(uwscfg.msg_status_error_msg, high_priority=True) elif current_status[0] != new_status[0]: - distributeXmppMsg("Status: (%s,%s,%s,%s)" % new_status ,debug=True) + distributeXmppMsg("Status: (%s,%s,%s,%s,%s)" % new_status ,debug=True) current_status=new_status def exitHandler(signum, frame): @@ -350,7 +350,7 @@ else: uwscfg = UWSConfig() distributeXmppMsg("update-xmpp-status.py started", debug=True) -RE_STATUS = re.compile(r'Status: (\w+), idle') +RE_STATUS = re.compile(r'Status: (closed|opened), (opening|waiting|closing|idle), (ajar|shut).*',re.I) RE_REQUEST = re.compile(r'Request: (\w+) (?:(Card|Phone) )?(.+)') RE_PRESENCE = re.compile(r'Presence: (yes|no)(?:, (opened|closed), (.+))?') RE_BUTTON = re.compile(r'PanicButton|button\d?') @@ -402,14 +402,15 @@ while True: m = RE_STATUS.match(line) if not m is None: status = m.group(1) - filterAndFormatMessage((status,) + last_request) + ajar_status = m.group(3) + filterAndFormatMessage((status,ajar_status) + last_request) last_request = (None, None, None) continue m = RE_REQUEST.match(line) if not m is None: last_request = m.group(1,3,2) - if uwscfg.cam_provide_pic and (last_request[2] is None or not last_request[1] is None): + if uwscfg.cam_provide_pic == "True" and (last_request[2] is None or not last_request[1] is None): if not touchURL(uwscfg.cam_freeze_url) == "ok": logging.error("main: error freezing picture") continue @@ -418,7 +419,7 @@ while True: if not m is None: errorstr = m.group(1) if "too long!" in errorstr: - filterAndFormatMessage(("error",) + last_request) + filterAndFormatMessage(("error","") + last_request) last_request = (None, None, None) else: logging.error("Recieved Error: "+errorstr)