[jdev] Fw: Unexpected 503 error code returned by MUC (ejabberd), help required

Abhinav Singh abhinavsingh at ymail.com
Mon Aug 23 09:09:44 CDT 2010


Hi,

I think i got the clue. This problem disappears when i restart ejabberd server 
and destroy existing rooms.
However problem starts to re-appear after some time.

I get a hint that max_user_conferences which defaults to 10 is the problem here.
As user imjaxlim tries to enter 11th room, it starts getting 503 error code, 
while other users do not.

Though now it is out of jdev list probably, can I set custom 
max_user_conferences for specific users?
Thanks for the help.

--
Abhinav Singh,
Founder, Jaxl Inc.
Bangalore, India
http://abhinavsingh.com/blog




________________________________
From: Abhinav Singh <abhinavsingh at ymail.com>
To: kevin at kismith.co.uk; Jabber/XMPP software development list <jdev at jabber.org>
Sent: Mon, August 23, 2010 6:57:30 PM
Subject: Re: [jdev] Fw: Unexpected 503 error code returned by MUC (ejabberd), 
help required


Hi,

Probably these will help explain my misery. As I wrote before sending 
http://jabber.org/protocol/muc qualified namespace presence stanza makes no 
difference to the output.

Below are the logs from my XMPP client library:
[10339] 2010-08-23 03:18:42 - [[XMPPSend]] 153
<presence from="imjaxlim at im.jaxl.im/jaxl.1282558721" 
to="jaxl.im-b-global at muc.jaxl.im/imjaxlim">
    
</presence>

[10339] 2010-08-23 03:18:43 - [[XMPPSend]] 171
<presence  from="jaxl at im.jaxl.im/jaxl.1282558719" 
to="jaxl.im-b-global at muc.jaxl.im/jaxl">
    
</presence>

[10339] 2010-08-23 03:18:44 - [[XMPPGet]]
<presence from='jaxl.im-b-global at muc.jaxl.im/imjaxlim' 
to='imjaxlim at im.jaxl.im/jaxl.1282558721' type='error'>
    http://jabber.org/protocol/muc'/>
    <error code='503' type='cancel'>
        <service-unavailable xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
    </error>
</presence>
<presence from='jaxl.im-b-global at muc.jaxl.im/jaxl'  
to='jaxl at im.jaxl.im/jaxl.1282558719'>
    http://jabber.org/protocol/muc#user'>
    <item affiliation='none' role='participant'/>
        <status code='201'/>
    </x>
</presence>

Below is the corresponding ejabberd log:
=INFO REPORT==== 2010-08-23 03:18:42 ===
D(<0.5744.0>:ejabberd_receiver:320) : Received XML on stream = " 
http://jabber.org/protocol/muc\"> "

=INFO REPORT==== 2010-08-23 03:18:42 ===
D(<0.5745.0>:ejabberd_router:313)  : route
        from {jid,"imjaxlim","im.jaxl.im","jaxl.1282558721","imjaxlim",
                  "im.jaxl.im","jaxl.1282558721"}
        to {jid,"jaxl.im-b-global","muc.jaxl.im","imjaxlim",
                "jaxl.im-b-global","muc.jaxl.im","imjaxlim"}
        packet {xmlelement,"presence",
                   [{"from","imjaxlim at im.jaxl.im/jaxl.1282558721"},
                     {"to","jaxl.im-b-global at muc.jaxl.im/imjaxlim"}],
                   [{xmlelement,"x",
                        [{"xmlns","http://jabber.org/protocol/muc"}],
                        []}]}

=INFO REPORT==== 2010-08-23 03:18:42 ===
D(<0.3771.0>:mod_muc:557) : MUC: open new room 'jaxl.im-b-global'

=INFO REPORT==== 2010-08-23 03:18:42 ===
I(<0.5758.0>:mod_muc_room:126) : Created MUC room jaxl.im-b-global at muc.jaxl.im 
by imjaxlim at im.jaxl.im/jaxl.1282558721

=INFO REPORT==== 2010-08-23  03:18:42 ===
D(<0.5758.0>:ejabberd_router:313) : route
        from {jid,"jaxl.im-b-global","muc.jaxl.im","imjaxlim",
                  "jaxl.im-b-global","muc.jaxl.im","imjaxlim"}
        to {jid,"imjaxlim","im.jaxl.im","jaxl.1282558721","imjaxlim",
                "im.jaxl.im","jaxl.1282558721"}
        packet {xmlelement,"presence",
                   [{"type","error"},
                     {"to","imjaxlim at im.jaxl.im/jaxl.1282558721"},
                    {"from","jaxl.im-b-global at muc.jaxl.im/imjaxlim"}],
                   [{xmlelement,"x",
                        [{"xmlns","http://jabber.org/protocol/muc"}],
                        []},
                     {xmlelement,"error",
                        [{"code","503"},{"type","cancel"}],
                        [{xmlelement,"service-unavailable",
                             [{"xmlns","urn:ietf:params:xml:ns:xmpp-stanzas"}],
                             []}]}]}

=INFO REPORT==== 2010-08-23 03:18:43 ===
D(<0.5744.0>:ejabberd_receiver:320) : Received XML on stream = " 
http://jabber.org/protocol/muc\"> "

=INFO REPORT==== 2010-08-23 03:18:43 ===
D(<0.5745.0>:ejabberd_router:313) : route
        from {jid,"jaxl","im.jaxl.im","jaxl.1282558719","jaxl","im.jaxl.im",
                  "jaxl.1282558719"}
        to {jid,"jaxl.im-b-global","muc.jaxl.im","jaxl","jaxl.im-b-global",
                "muc.jaxl.im","jaxl"}
        packet  {xmlelement,"presence",
                   [{"from","jaxl at im.jaxl.im/jaxl.1282558719"},
                    {"to","jaxl.im-b-global at muc.jaxl.im/jaxl"}],
                   [{xmlelement,"x",
                        [{"xmlns","http://jabber.org/protocol/muc"}],
                        [{xmlelement,"history",[{"maxstanzas","10"}],[]}]}]}

=INFO REPORT==== 2010-08-23  03:18:43 ===
D(<0.3710.0>:mod_muc:507) : MUC: send to process <0.5758.0> 

=INFO REPORT==== 2010-08-23 03:18:43 ===
D(<0.5758.0>:ejabberd_router:313) : route
        from {jid,"jaxl.im-b-global","muc.jaxl.im","jaxl","jaxl.im-b-global",
                  "muc.jaxl.im","jaxl"}
        to {jid,"jaxl","im.jaxl.im","jaxl.1282558719","jaxl","im.jaxl.im",
                "jaxl.1282558719"}
        packet {xmlelement,"presence",
                    [{"from","jaxl at im.jaxl.im/jaxl.1282558719"},
                    {"to","jaxl.im-b-global at muc.jaxl.im/jaxl"}],
                   [{xmlelement,"x",
                        [{"xmlns","http://jabber.org/protocol/muc#user"}],
                        [{xmlelement,"item",
                              [{"affiliation","none"},{"role","participant"}],
                             []},
                         {xmlelement,"status",[{"code","201"}],[]}]}]}




More information about the JDev mailing list