mirror of
http://aero2k.de/t/repos/urlbot-native.git
synced 2017-09-06 15:25:38 +02:00
move offline-handler to idlebot
This commit is contained in:
13
idlebot.py
13
idlebot.py
@@ -23,6 +23,8 @@ class IdleBot(ClientXMPP):
|
|||||||
self.show = None
|
self.show = None
|
||||||
|
|
||||||
self.logger = logging.getLogger(__name__)
|
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, _):
|
def session_start(self, _):
|
||||||
self.get_roster()
|
self.get_roster()
|
||||||
@@ -58,6 +60,17 @@ class IdleBot(ClientXMPP):
|
|||||||
else:
|
else:
|
||||||
return True
|
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):
|
def hangup(self):
|
||||||
"""
|
"""
|
||||||
disconnect and exit
|
disconnect and exit
|
||||||
|
|||||||
12
urlbot.py
12
urlbot.py
@@ -43,7 +43,6 @@ class UrlBot(IdleBot):
|
|||||||
|
|
||||||
for room in self.rooms:
|
for room in self.rooms:
|
||||||
self.add_event_handler('muc::%s::got_online' % room, self.muc_online)
|
self.add_event_handler('muc::%s::got_online' % room, self.muc_online)
|
||||||
self.add_event_handler('muc::%s::got_offline' % room, self.muc_offline)
|
|
||||||
|
|
||||||
def muc_message(self, msg_obj):
|
def muc_message(self, msg_obj):
|
||||||
"""
|
"""
|
||||||
@@ -107,17 +106,6 @@ class UrlBot(IdleBot):
|
|||||||
|
|
||||||
config.conf_set('persistent_locked', False)
|
config.conf_set('persistent_locked', False)
|
||||||
|
|
||||||
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
|
|
||||||
)
|
|
||||||
|
|
||||||
# @rate_limited(10)
|
# @rate_limited(10)
|
||||||
def send_reply(self, message, msg_obj=None):
|
def send_reply(self, message, msg_obj=None):
|
||||||
"""
|
"""
|
||||||
|
|||||||
Reference in New Issue
Block a user