1 |
1 |
2 local init_xmlhandlers = require "core.xmlhandlers"; |
2 local new_xmpp_stream = require "util.xmppstream".new; |
3 local st = require "util.stanza"; |
3 local st = require "util.stanza"; |
4 require "net.httpclient_listener"; -- Required for net.http to work |
4 require "net.httpclient_listener"; -- Required for net.http to work |
5 local http = require "net.http"; |
5 local http = require "net.http"; |
6 |
6 |
7 local stream_mt = setmetatable({}, { __index = verse.stream_mt }); |
7 local stream_mt = setmetatable({}, { __index = verse.stream_mt }); |
184 self:debug("%s", debug.traceback()); |
184 self:debug("%s", debug.traceback()); |
185 self:_disconnected(); |
185 self:_disconnected(); |
186 return; |
186 return; |
187 end |
187 end |
188 local session = { notopen = true, log = self.log }; |
188 local session = { notopen = true, log = self.log }; |
189 local parser = lxp.new(init_xmlhandlers(session, stream_callbacks), "\1"); |
189 local stream = new_xmpp_stream(session, stream_callbacks); |
190 parser:parse(response); |
190 stream:feed(response); |
191 return session.payload; |
191 return session.payload; |
192 end |
192 end |
193 |
193 |
194 function stream_mt:_make_body() |
194 function stream_mt:_make_body() |
195 self.bosh_rid = self.bosh_rid + 1; |
195 self.bosh_rid = self.bosh_rid + 1; |