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)
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))
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)
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')
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")
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)()