diff options
Diffstat (limited to 'util')
-rw-r--r-- | util/xmppstream.lua | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/util/xmppstream.lua b/util/xmppstream.lua index 586ad5f9..1e65919b 100644 --- a/util/xmppstream.lua +++ b/util/xmppstream.lua @@ -241,6 +241,22 @@ function new(session, stream_callbacks, stanza_size_limit) local parser = new_parser(handlers, ns_separator, false); local parse = parser.parse; + function session.open_stream(session, from, to) + local send = session.sends2s or session.send; + + local attr = { + ["xmlns:stream"] = "http://etherx.jabber.org/streams", + ["xml:lang"] = "en", + xmlns = stream_callbacks.default_ns, + version = session.version and (session.version > 0 and "1.0" or nil), + id = session.streamid or "", + from = from or session.host, to = to, + }; + send("<?xml version='1.0'?>"); + send(st.stanza("stream:stream", attr):top_tag()); + return true; + end + return { reset = function () parser = new_parser(handlers, ns_separator, false); |