[ejabberd] mod_pubsub doesn't accept external components stanzas

Ricardo Otero dos Santos oterosantos at gmail.com
Fri Apr 16 22:07:48 MSD 2010


Hi!

I'm trying to interact with pubsub from an external component, that is
connected and working fine but apparently ejabberd can't route replies
to my component.

Here's an example where I can't get the response from the server. I
send this stanza:

<iq from='profile.localhost' id='1312' to='pubsub.localhost'
type='get' xmlns='jabber:component:accept'><query node='nodeA'
xmlns='http://jabber.org/protocol/disco#info'/></iq>

And on the debug log I get:

(...)

=INFO REPORT==== 2010-04-16 18:54:27 ===
D(<0.1592.0>:ejabberd_router:301) : route
	from {jid,[],"profile.localhost",[],[],"profile.localhost",[]}
	to {jid,[],"pubsub.localhost",[],[],"pubsub.localhost",[]}
	packet {xmlelement,"iq",
                   [{"from","profile.localhost"},
                    {"id","1312"},
                    {"to","pubsub.localhost"},
                    {"type","get"}],
                   [{xmlelement,"query",
                        [{"node","invalid_node"},
                         {"xmlns","http://jabber.org/protocol/disco#info"}],
                        []}]}


=INFO REPORT==== 2010-04-16 18:54:27 ===
D(<0.1530.0>:mod_pubsub:3625) : tree_call "pubsub.localhost" get_node
["pubsub.localhost",

<<"invalid_node">>]

=INFO REPORT==== 2010-04-16 18:54:27 ===
D(<0.1530.0>:ejabberd_router:301) : route
	from {jid,[],"pubsub.localhost",[],[],"pubsub.localhost",[]}
	to {jid,[],"profile.localhost",[],[],"profile.localhost",[]}
	packet {xmlelement,"iq",
                   [{"type","error"},
                    {"to","profile.localhost"},
                    {"from","pubsub.localhost"},
                    {"id","1312"}],
                   [{xmlelement,"query",
                        [{"node","invalid_node"},
                         {"xmlns","http://jabber.org/protocol/disco#info"}],
                        []},
                    {xmlelement,"error",
                        [{"code","404"},{"type","cancel"}],
                        [{xmlelement,"item-not-found",
                             [{"xmlns","urn:ietf:params:xml:ns:xmpp-stanzas"}],
                             []}]}]}


So it seems like the packet is OK and well formed but is never sent!

I can even interact with other components (I tested with 'vjud') and
all goes well, but not with pubsub. Is mod_pubsub blocking access from
external components? How can I solve this? I'm using ejabberd 2.1.3.

Thanks,

-Ricardo


More information about the ejabberd mailing list