Mercurial > prosody-modules
view mod_compat_vcard/mod_compat_vcard.lua @ 1216:81a3bf8aba90
mod_component_client: Use the net.server connection abstraction for sending whitespace keep-alive, and not the raw socket (fixes a traceback which lead to an infinite timer loop in libevent)
author | Waqas Hussain <waqas20@gmail.com> |
---|---|
date | Mon, 28 Oct 2013 11:55:59 -0400 |
parents | 1a7cdc874b8c |
children | 3df303543765 |
line wrap: on
line source
-- Compatibility with clients and servers (i.e. ejabberd) that send vcard -- requests to the full JID -- -- https://support.process-one.net/browse/EJAB-1045 local jid_bare = require "util.jid".bare; local st = require "util.stanza"; local core_process_stanza = prosody.core_process_stanza; module:hook("iq/full", function(event) local stanza = event.stanza; local payload = stanza.tags[1]; if payload.name == "vCard" and stanza.attr.type == "get" and payload.attr.xmlns == "vcard-temp" then local fixed_stanza = st.clone(event.stanza); fixed_stanza.attr.to = jid_bare(stanza.attr.to); core_process_stanza(event.origin, fixed_stanza); return true; end end, 1);