Exemplo n.º 1
0
Arquivo: silc.py Projeto: shoosen/ibid
    def connected(self):
        for channel in self.factory.channels:
            self.join(channel)

        event = Event(self.factory.name, u'source')
        event.status = u'connected'
        ibid.dispatcher.dispatch(event)
Exemplo n.º 2
0
 def _state_event(self, entity, state, realjid=None):
     event = Event(self.name, u'state')
     event.state = state
     if entity.userhost().lower() in self.rooms:
         nick = entity.full().split('/')[1]
         event.channel = entity.userhost()
         if nick == self.parent.nick:
             event.type = u'connection'
             event.status = state == u'online' and u'joined' or u'left'
         else:
             if realjid:
                 if state == u'online':
                     self.room_users[entity.full()] = realjid.full()
                 elif state == u'offline':
                     if entity.full() in self.room_users:
                         del self.room_users[entity.full()]
                 event.sender['connection'] = realjid.full()
                 event.sender['id'] = realjid.userhost()
             else:
                 event.sender['connection'] = entity.full()
                 event.sender['id'] = event.sender['connection']
             event.sender['nick'] = nick
             event.public = True
     else:
         event.sender['connection'] = entity.full()
         event.sender['id'] = event.sender['connection'].split('/')[0]
         event.sender['nick'] = event.sender['connection'].split('@')[0]
         event.channel = entity.full()
         event.public = False
     ibid.dispatcher.dispatch(event).addCallback(self.respond)
Exemplo n.º 3
0
    def connected(self):
        for channel in self.factory.channels:
            self.join(channel)

        event = Event(self.factory.name, u'source')
        event.status = u'connected'
        ibid.dispatcher.dispatch(event)
Exemplo n.º 4
0
    def connectionLost(self, reason):
        self.parent.log.info(u"Disconnected (%s)", reason)

        event = Event(self.parent.name, u'source')
        event.status = u'disconnected'
        ibid.dispatcher.dispatch(event)

        subprotocols.XMPPHandler.connectionLost(self, reason)
Exemplo n.º 5
0
Arquivo: irc.py Projeto: B-Rich/ibid-1
    def connectionLost(self, reason):
        self.factory.log.info(u"Disconnected (%s)", reason)

        event = Event(self.factory.name, u'source')
        event.status = u'disconnected'
        ibid.dispatcher.dispatch(event)

        irc.IRCClient.connectionLost(self, reason)
Exemplo n.º 6
0
Arquivo: irc.py Projeto: rsnyman/ibid
    def connectionLost(self, reason):
        self.factory.log.info(u"Disconnected (%s)", reason)

        event = Event(self.factory.name, u'source')
        event.status = u'disconnected'
        ibid.dispatcher.dispatch(event)

        irc.IRCClient.connectionLost(self, reason)
Exemplo n.º 7
0
Arquivo: dc.py Projeto: B-Rich/ibid-1
    def signedOn(self):
        names = ibid.config.plugins['core']['names']
        if self.my_nickname not in names:
            self.factory.log.info(u'Adding "%s" to plugins.core.names', self.my_nickname)
            names.append(self.my_nickname)
            ibid.config.plugins['core']['names'] = names
            ibid.reloader.reload_config()

        event = Event(self.factory.name, u'source')
        event.status = u'connected'
        ibid.dispatcher.dispatch(event)

        event = Event(self.factory.name, u'source')
        event.channel = u'$public'
        event.status = u'joined'
        ibid.dispatcher.dispatch(event)

        self.factory.log.info(u"Signed on")
Exemplo n.º 8
0
    def disconnected(self, message):
        self.factory.log.info(u"Disconnected (%s)", message)

        event = Event(self.factory.name, u'source')
        event.status = u'disconnected'
        ibid.dispatcher.dispatch(event)

        self.factory.s.stopService()
        self.channels.clear()
        self.users.clear()
Exemplo n.º 9
0
Arquivo: dc.py Projeto: vhata/ibid
    def signedOn(self):
        names = ibid.config.plugins['core']['names']
        if self.my_nickname not in names:
            self.factory.log.info(u'Adding "%s" to plugins.core.names',
                                  self.my_nickname)
            names.append(self.my_nickname)
            ibid.config.plugins['core']['names'] = names
            ibid.reloader.reload_config()

        event = Event(self.factory.name, u'source')
        event.status = u'connected'
        ibid.dispatcher.dispatch(event)

        event = Event(self.factory.name, u'source')
        event.channel = u'$public'
        event.status = u'joined'
        ibid.dispatcher.dispatch(event)

        self.factory.log.info(u"Signed on")
Exemplo n.º 10
0
Arquivo: silc.py Projeto: shoosen/ibid
    def disconnected(self, message):
        self.factory.log.info(u"Disconnected (%s)", message)

        event = Event(self.factory.name, u'source')
        event.status = u'disconnected'
        ibid.dispatcher.dispatch(event)

        self.factory.s.stopService()
        self.channels.clear()
        self.users.clear()
Exemplo n.º 11
0
    def connectionInitialized(self):
        self.parent.log.info(u"Connected")
        xmppim.MessageProtocol.connectionInitialized(self)
        xmppim.PresenceClientProtocol.connectionInitialized(self)
        xmppim.RosterClientProtocol.connectionInitialized(self)
        self.xmlstream.send(xmppim.AvailablePresence())
        self.roster = self.getRoster() #See section 7.3 of http://www.ietf.org/rfc/rfc3921.txt
        self.name = self.parent.name
        self.parent.send = self.send
        self.parent.proto = self
        for room in self.parent.rooms:
            self.join(room)

        event = Event(self.parent.name, u'source')
        event.status = u'connected'
        ibid.dispatcher.dispatch(event)
Exemplo n.º 12
0
Arquivo: irc.py Projeto: B-Rich/ibid-1
    def signedOn(self):
        names = ibid.config.plugins['core']['names']
        if self.nickname not in names:
            self.factory.log.info(u'Adding "%s" to plugins.core.names', self.nickname)
            names.append(self.nickname)
            ibid.config.plugins['core']['names'] = names
            ibid.reloader.reload_config()
        if self.factory.modes:
            self.mode(self.nickname, True, self.factory.modes.encode('utf-8'))
        self.ctcpMakeQuery(self.nickname, [('HOSTMASK', None)])
        for channel in self.factory.channels:
            self.join(channel.encode('utf-8'))
        self.factory.log.info(u"Signed on")

        event = Event(self.factory.name, u'source')
        event.status = u'connected'
        ibid.dispatcher.dispatch(event)
Exemplo n.º 13
0
Arquivo: irc.py Projeto: rsnyman/ibid
    def signedOn(self):
        names = ibid.config.plugins['core']['names']
        if self.nickname not in names:
            self.factory.log.info(u'Adding "%s" to plugins.core.names',
                                  self.nickname)
            names.append(self.nickname)
            ibid.config.plugins['core']['names'] = names
            ibid.reloader.reload_config()
        if self.factory.modes:
            self.mode(self.nickname, True, self.factory.modes.encode('utf-8'))
        self.ctcpMakeQuery(self.nickname, [('HOSTMASK', None)])
        for channel in self.factory.channels:
            self.join(channel)
        self.factory.log.info(u"Signed on")

        event = Event(self.factory.name, u'source')
        event.status = u'connected'
        ibid.dispatcher.dispatch(event)
Exemplo n.º 14
0
Arquivo: irc.py Projeto: B-Rich/ibid-1
 def left(self, channel):
     event = Event(self.factory.name, u'source')
     event.channel = channel
     event.status = u'left'
     ibid.dispatcher.dispatch(event)
Exemplo n.º 15
0
Arquivo: irc.py Projeto: B-Rich/ibid-1
 def joined(self, channel):
     event = Event(self.factory.name, u'source')
     event.channel = unicode(channel, 'utf-8', 'replace')
     event.status = u'joined'
     ibid.dispatcher.dispatch(event)
Exemplo n.º 16
0
Arquivo: irc.py Projeto: rsnyman/ibid
 def joined(self, channel):
     event = Event(self.factory.name, u'source')
     event.channel = unicode(channel, 'utf-8', 'replace')
     event.status = u'joined'
     ibid.dispatcher.dispatch(event)
Exemplo n.º 17
0
Arquivo: irc.py Projeto: rsnyman/ibid
 def left(self, channel):
     event = Event(self.factory.name, u'source')
     event.channel = channel
     event.status = u'left'
     ibid.dispatcher.dispatch(event)