comparison mod_rest/jsonmap.lib.lua @ 3854:25c34c9f755c

mod_rest: Add mapping of XEP-0092: Software Version
author Kim Alvefur <zash@zash.se>
date Sat, 25 Jan 2020 00:40:38 +0100
parents 66f96b98d219
children 0e1e900577c4
comparison
equal deleted inserted replaced
3853:fb29d7cd698b 3854:25c34c9f755c
38 end; 38 end;
39 }; 39 };
40 40
41 -- XEP-0199 41 -- XEP-0199
42 ping = {"bool_tag", "urn:xmpp:ping", "ping"}, 42 ping = {"bool_tag", "urn:xmpp:ping", "ping"},
43
44 -- XEP-0092: Software Version
45 version = {"func", "jabber:iq:version", "query",
46 function (s)
47 return {
48 name = s:get_child_text("name");
49 version = s:get_child_text("version");
50 os = s:get_child_text("os");
51 }
52 end,
53 function (s)
54 local v = st.stanza("query", { xmlns = "jabber:iq:version" });
55 if type(s) == "table" then
56 v:text_tag("name", s.name);
57 v:text_tag("version", s.version);
58 if s.os then
59 v:text_tag("os", s.os);
60 end
61 end
62 return v;
63 end
64 };
43 65
44 -- XEP-0030 66 -- XEP-0030
45 disco = { 67 disco = {
46 "func", "http://jabber.org/protocol/disco#info", "query", 68 "func", "http://jabber.org/protocol/disco#info", "query",
47 function (s) --> array of features 69 function (s) --> array of features
133 155
134 local implied_kinds = { 156 local implied_kinds = {
135 disco = "iq", 157 disco = "iq",
136 items = "iq", 158 items = "iq",
137 ping = "iq", 159 ping = "iq",
160 version = "iq",
138 161
139 body = "message", 162 body = "message",
140 html = "message", 163 html = "message",
141 replace = "message", 164 replace = "message",
142 state = "message", 165 state = "message",