Пример #1
0
 def connect(self, endpoint):
     """Connect to the webserver at *endpoint*. *endpoint* is a tuple (<host>, <port>)."""
     self._host = None
     if type(endpoint) == type(()):
         try:
             self._host = endpoint[0]
         except Exception:
             pass
     self._stream = BufferedStream(Connector.connect(endpoint), read_buffer_size = 1024 * 8, write_buffer_size = 1024 * 4)
Пример #2
0
 def connect(self, endpoint):
     """Connect to the webserver at *endpoint*. *endpoint* is a tuple (<host>, <port>)."""
     self._host = None
     if type(endpoint) == type(()):
         try:
             self._host = endpoint[0]
         except:
             pass
     self._stream = BufferedStream(Connector.connect(endpoint))
Пример #3
0
 def connect(self, endpoint):
     """Connect to the webserver at *endpoint*. *endpoint* is a tuple (<host>, <port>)."""
     self._host = None
     if type(endpoint) == type(()):
         try:
             self._host = endpoint[0]
         except: 
             pass                
     self._stream = BufferedStream(Connector.connect(endpoint))
Пример #4
0
 def connect(self, endpoint):
     """Connect to the webserver at *endpoint*. *endpoint* is a tuple (<host>, <port>)."""
     self._host = None
     if type(endpoint) == type(()):
         try:
             self._host = endpoint[0]
         except Exception:
             pass
     self._stream = BufferedStream(Connector.connect(endpoint),
                                   read_buffer_size=1024 * 8,
                                   write_buffer_size=1024 * 4)
Пример #5
0
    def connect(self, endpoint, username, password, realm, resource):

        self.socket = Connector.connect(endpoint)

        #start xml stream
        self.stream = XMPPStream(self.socket)

        self.stream.write_start(1)
        self.elements = self.stream.elements()

        #perform auth handshake
        self._handshake(username, password, realm)

        #after SASL-auth we are supposed to restart the xml stream:
        self.stream.reset()
        self.stream.write_start(2, include_xml_pi=False)
        self.elements = self.stream.elements()

        #read stream features
        element = self.elements.next()
        if element.tag != '{http://etherx.jabber.org/streams}features':
            assert False, "expected stream features, got: %s" % element.tag

        #bind resource
        self.stream.write_bind_request('bind', resource)

        element = self.elements.next()
        #TODO assert more on bind result
        if element.tag != '{jabber:client}iq':
            assert False, "expected iq, got: %s" % element.tag

        #send session request
        self.stream.write_session_request(realm, 3)

        element = self.elements.next()
        #TODO check result
        if element.tag != '{jabber:client}iq':
            assert False, 'expected iq result got: %s' % element.tag

        #now we are ready and fully logged in
        self.jid = '%s@%s/%s' % (username, realm, 'henktest')
Пример #6
0
    def connect(self, endpoint, username, password, realm, resource):

        self.socket = Connector.connect(endpoint)

        # start xml stream
        self.stream = XMPPStream(self.socket)

        self.stream.write_start(1)
        self.elements = self.stream.elements()

        # perform auth handshake
        self._handshake(username, password, realm)

        # after SASL-auth we are supposed to restart the xml stream:
        self.stream.reset()
        self.stream.write_start(2, include_xml_pi=False)
        self.elements = self.stream.elements()

        # read stream features
        element = self.elements.next()
        if element.tag != "{http://etherx.jabber.org/streams}features":
            assert False, "expected stream features, got: %s" % element.tag

        # bind resource
        self.stream.write_bind_request("bind", resource)

        element = self.elements.next()
        # TODO assert more on bind result
        if element.tag != "{jabber:client}iq":
            assert False, "expected iq, got: %s" % element.tag

        # send session request
        self.stream.write_session_request(realm, 3)

        element = self.elements.next()
        # TODO check result
        if element.tag != "{jabber:client}iq":
            assert False, "expected iq result got: %s" % element.tag

        # now we are ready and fully logged in
        self.jid = "%s@%s/%s" % (username, realm, "henktest")
Пример #7
0
 def connect(self, endpoint):
     self._stream = BufferedStream(Connector.connect(endpoint))
     self._message_writer_task = Tasklet.new(self._message_writer)()
     self._message_reader_task = Tasklet.new(self._message_reader)()
Пример #8
0
 def connect(self, endpoint):
     self._stream = BufferedStream(Connector.connect(endpoint))
     self._message_writer_task = Tasklet.new(self._message_writer)()
     self._message_reader_task = Tasklet.new(self._message_reader)()