Beispiel #1
0
 def handle_presence_subscribe(self, stanza):
     self.logger.info(u"{0} join us".format(stanza.from_jid))
     frm = stanza.from_jid
     presence = Presence(to_jid = frm, stanza_type = "subscribe")
     add_member(frm)
     set_online(frm, stanza.show)
     r =[stanza.make_accept_response(), presence]
     self.message_bus.send_sys_msg(stanza, new_member(frm))
     self.message_bus.send_back_msg(stanza, welcome(frm))
     return r
Beispiel #2
0
 def handle_roster_received(self, event):
     dbstatus = get_global_info('status')
     if not dbstatus:
         status = STATUS
     else:
         status = dbstatus
     p = Presence(status=status)
     self.client.stream.send(p)
     ret = [x.jid.bare() for x in self.roster if x.subscription == 'both']
     self.logger.info(' -- roster:{0}'.format(ret))
     members = [m for m in get_members()]
     [add_member(frm) for frm in ret if not get_member(frm)]
     if IMPORT:
         [self.invite_member(JID(m)) for m in members if JID(m) not in ret]