mirror of
https://github.com/bjc/prosody.git
synced 2025-04-01 20:27:39 +03:00
Merge 0.12->trunk
This commit is contained in:
commit
a7799e11a9
2 changed files with 30 additions and 0 deletions
|
@ -173,6 +173,8 @@ module:hook("iq-get/bare/http://jabber.org/protocol/disco#info:query", function(
|
|||
if not stanza.attr.to or (expose_admins and target_is_admin) or is_contact_subscribed(username, module.host, jid_bare(stanza.attr.from)) then
|
||||
if node and node ~= "" then
|
||||
local reply = st.reply(stanza):tag('query', {xmlns='http://jabber.org/protocol/disco#info', node=node});
|
||||
reply:tag("feature", { var = "http://jabber.org/protocol/disco#info" }):up();
|
||||
reply:tag("feature", { var = "http://jabber.org/protocol/disco#items" }):up();
|
||||
if not reply.attr.from then reply.attr.from = origin.username.."@"..origin.host; end -- COMPAT To satisfy Psi when querying own account
|
||||
local node_event = { origin = origin, stanza = stanza, reply = reply, node = node, exists = false};
|
||||
local ret = module:fire_event("account-disco-info-node", node_event);
|
||||
|
@ -193,6 +195,8 @@ module:hook("iq-get/bare/http://jabber.org/protocol/disco#info:query", function(
|
|||
else
|
||||
reply:tag('identity', {category='account', type='registered'}):up();
|
||||
end
|
||||
reply:tag("feature", { var = "http://jabber.org/protocol/disco#info" }):up();
|
||||
reply:tag("feature", { var = "http://jabber.org/protocol/disco#items" }):up();
|
||||
module:fire_event("account-disco-info", { origin = origin, reply = reply });
|
||||
origin.send(reply);
|
||||
return true;
|
||||
|
|
26
spec/scansion/disco_self.scs
Normal file
26
spec/scansion/disco_self.scs
Normal file
|
@ -0,0 +1,26 @@
|
|||
# Basic login and initial presence
|
||||
|
||||
[Client] Romeo
|
||||
jid: discoverer@localhost
|
||||
password: password
|
||||
|
||||
---------
|
||||
|
||||
Romeo connects
|
||||
|
||||
Romeo sends:
|
||||
<iq type="get" id="info1">
|
||||
<query xmlns="http://jabber.org/protocol/disco#info"/>
|
||||
</iq>
|
||||
|
||||
Romeo receives:
|
||||
<iq type="result" id="info1">
|
||||
<query xmlns="http://jabber.org/protocol/disco#info" scansion:strict="false">
|
||||
<identity xmlns="http://jabber.org/protocol/disco#info" category="account" type="registered"/>
|
||||
<feature var="http://jabber.org/protocol/disco#info"/>
|
||||
<feature var="http://jabber.org/protocol/disco#items"/>
|
||||
</query>
|
||||
</iq>
|
||||
|
||||
Romeo disconnects
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue