move offline-handler to idlebot

This commit is contained in:
Thorsten S
2015-12-26 21:03:09 +01:00
parent ade3e57741
commit f24d4c4381
2 changed files with 13 additions and 12 deletions

View File

@@ -23,6 +23,8 @@ class IdleBot(ClientXMPP):
self.show = None
self.logger = logging.getLogger(__name__)
for room in self.rooms:
self.add_event_handler('muc::%s::got_offline' % room, self.muc_offline)
def session_start(self, _):
self.get_roster()
@@ -58,6 +60,17 @@ class IdleBot(ClientXMPP):
else:
return True
def muc_offline(self, msg_obj):
room = msg_obj.values['muc']['room']
user = msg_obj.values['muc']['nick']
if user == config.conf_get('bot_nickname'):
self.logger.warn("Left my room, rejoin")
self.plugin['xep_0045'].joinMUC(
room,
self.nick,
wait=True
)
def hangup(self):
"""
disconnect and exit