diff options
author | Kim Alvefur <zash@zash.se> | 2018-08-21 17:16:30 +0200 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2018-08-21 17:16:30 +0200 |
commit | 90718419362cc8b3e29c76301f0a92e92e7cd5c7 (patch) | |
tree | 4bb8bd6f94f4e2851023121cd7ae9545c3ccb1f6 | |
parent | 41e85fb7d3f5076a78039c33b3a45c15335decaf (diff) | |
download | prosody-90718419362cc8b3e29c76301f0a92e92e7cd5c7.tar.gz prosody-90718419362cc8b3e29c76301f0a92e92e7cd5c7.zip |
mod_vcard_legacy: Respond with old vcard
-rw-r--r-- | plugins/mod_vcard_legacy.lua | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/plugins/mod_vcard_legacy.lua b/plugins/mod_vcard_legacy.lua index eedeab56..7a34e68d 100644 --- a/plugins/mod_vcard_legacy.lua +++ b/plugins/mod_vcard_legacy.lua @@ -6,6 +6,8 @@ local mod_pep = module:depends("pep"); local sha1 = require "util.hashes".sha1; local base64_decode = require "util.encodings".base64.decode; +local vcards = module:open_store("vcard"); + module:add_feature("vcard-temp"); module:add_feature("urn:xmpp:pep-vcard-conversion:0"); @@ -93,6 +95,10 @@ module:hook("iq-get/bare/vcard-temp:vCard", function (event) vcard_temp:up(); end end + else + local legacy_vcard = st.deserialize(vcards:get(jid_split(stanza.attr.to) or origin.username)); + origin.send(st.reply(stanza):add_child(legacy_vcard or vcard_temp)); + return true; end local meta_ok, avatar_meta = pep_service:get_items("urn:xmpp:avatar:metadata", stanza.attr.from); |