Ejemplo n.º 1
0
 def get_channel(self,jid):
     channel_name=jid.node
     try:
         channel_name=node_to_channel(channel_name,self.default_encoding)
     except ValueError:
         self.__logger.debug("Bad channel name: %r" % (channel_name,))
         return None
     if not channel_re.match(channel_name):
         self.__logger.debug("Bad channel name: %r" % (channel_name,))
         return None
     return self.channels.get(normalize(channel_name))
Ejemplo n.º 2
0
 def prefix_to_jid(self,prefix):
     if channel_re.match(prefix):
         node=channel_to_node(prefix,self.default_encoding)
         return JID(node,self.network.jid.domain,None)
     else:
         if "!" in prefix:
             nick,user=prefix.split("!",1)
         else:
             nick=prefix
             user=""
         node=nick_to_node(nick,self.default_encoding)
         resource=unicode(user,self.default_encoding,"replace")
         return JID(node,self.network.jid.domain,resource)
Ejemplo n.º 3
0
 def __init__(self,session,name):
     self.__logger=logging.getLogger("jjigw.Channel")
     if not channel_re.match(name):
         raise ValueError,"Bad channel name"
     self.name=name
     self.session=session
     self.state=None
     self.room_jid=None
     self.config=session.network.get_channel_config(name)
     if self.config and self.config.encoding:
         self.encoding=self.config.encoding
     else:
         self.encoding=session.default_encoding
     self.modes={}
     self.users=[self.session.user]
     self.muc=0
     self.requests=RequestQueue(10)
Ejemplo n.º 4
0
 def __init__(self, session, name):
     self.__logger = logging.getLogger("jjigw.Channel")
     if not channel_re.match(name):
         raise ValueError, "Bad channel name"
     self.name = name
     self.session = session
     self.state = None
     self.room_jid = None
     self.config = session.network.get_channel_config(name)
     if self.config and self.config.encoding:
         self.encoding = self.config.encoding
     else:
         self.encoding = session.default_encoding
     self.modes = {}
     self.users = [self.session.user]
     self.muc = 0
     self.requests = RequestQueue(10)