Cannot join InstantRoom, room locked? XMPPError: item-not-found - cancel

Using smack 4.1.3

The rooms seems to be created ok. I think there is something about the room being locked. However, how do you unlock an instant room?

I am trying to create an instantRoom using the code snippet below:

MultiUserChatManager mMultiUserChatManager = MultiUserChatManager.getInstanceFor(mClientConnection);
final String jib = roomName + "@implement.nagios-office";
MultiUserChat multiUserChat = mMultiUserChatManager.getMultiUserChat(jib);
multiUserChat.create("NickName");
/* Send empty form */
multiUserChat.sendConfigurationForm(new Form(DataForm.Type.submit));

This results in the following smack debug log:

08-03 15:40:06.010  21971-22292/com.chatt D/SMACKļ¹• SENT (0): <presence to='stevesfunroom@implement.nagios-office/NickName' id='wTLTd-27'><x xmlns='http://jabber.org/protocol/muc'></x><c xmlns='http://jabber.org/protocol/caps' hash='sha-1' node='http://www.igniterealtime.org/projects/smack' ver='NfJ3flI83zSdUDzCEICtbypursw='/></presence>
08-03 15:40:06.030  21971-22293/com.chatt D/SMACKļ¹• RECV (0): <presence to="steve@nagios-office/work" id="wTLTd-27" from="stevesfunroom@implement.nagios-office/NickName"><c xmlns="http://jabber.org/protocol/caps" hash="sha-1" node="http://www.igniterealtime.org/projects/smack" ver="NfJ3flI83zSdUDzCEICtbypursw="/><x xmlns="http://jabber.org/protocol/muc#user"><item jid="steve@nagios-office/work" affiliation="owner" role="moderator"/><status code="110"/><status code="100"/><status code="201"/></x></presence>
08-03 15:40:06.040  21971-22292/com.chatt D/SMACKļ¹• SENT (0): <iq to='stevesfunroom@implement.nagios-office' id='wTLTd-29' type='set'><query xmlns='http://jabber.org/protocol/muc#owner'><x xmlns='jabber:x:data' type='submit'></x></query></iq>
08-03 15:40:06.050  21971-22293/com.chatt D/SMACKļ¹• RECV (0): <iq type="result" id="wTLTd-29" from="stevesfunroom@implement.nagios-office" to="steve@nagios-office/work"/>

The room seems to be created ok:

Then I send the invite which the invitee receives ok:

MultiUserChat multiUserChat = mMultiUserChatManager.getMultiUserChat("stevesfunroom@implement.nagios-office");
multiUserChat.join("NickName");
multiUserChat.invite("svn@nagios-office", "Welcome to Steve room of fun. Enjoy!");

This results in the following smack log:

08-03 15:44:20.749  21971-22292/com.chatt D/SMACKļ¹• SENT (0): <presence to='stevesfunroom@implement.nagios-office/NickName' id='wTLTd-33' type='unavailable'></presence>
08-03 15:44:20.749  21971-22292/com.chatt D/SMACKļ¹• SENT (0): <presence to='stevesfunroom@implement.nagios-office/NickName' id='wTLTd-34'><x xmlns='http://jabber.org/protocol/muc'></x><c xmlns='http://jabber.org/protocol/caps' hash='sha-1' node='http://www.igniterealtime.org/projects/smack' ver='NfJ3flI83zSdUDzCEICtbypursw='/></presence>
08-03 15:44:20.859  21971-22293/com.chatt D/SMACKļ¹• RECV (0): <presence to="steve@nagios-office/work" id="wTLTd-27" from="stevesfunroom@implement.nagios-office/NickName" type="unavailable"><c xmlns="http://jabber.org/protocol/caps" hash="sha-1" node="http://www.igniterealtime.org/projects/smack" ver="NfJ3flI83zSdUDzCEICtbypursw="/><x xmlns="http://jabber.org/protocol/muc#user"><item jid="steve@nagios-office/work" affiliation="owner" role="none"/><status code="110"/></x></presence>
08-03 15:44:20.859  21971-22292/com.chatt D/SMACKļ¹• SENT (0): <iq to='stevesfunroom@implement.nagios-office' id='wTLTd-36' type='get'><query xmlns='http://jabber.org/protocol/disco#info'></query></iq>
08-03 15:44:20.899  21971-22293/com.chatt D/SMACKļ¹• RECV (0): <presence to="steve@nagios-office/work" id="wTLTd-34" from="stevesfunroom@implement.nagios-office/NickName"><c xmlns="http://jabber.org/protocol/caps" hash="sha-1" node="http://www.igniterealtime.org/projects/smack" ver="NfJ3flI83zSdUDzCEICtbypursw="/><x xmlns="http://jabber.org/protocol/muc#user"><item jid="steve@nagios-office/work" affiliation="owner" role="moderator"/><status code="110"/><status code="100"/><status code="201"/></x></presence>
08-03 15:44:20.899  21971-22293/com.chatt D/SMACKļ¹• RECV (0): <iq type="result" id="wTLTd-36" from="stevesfunroom@implement.nagios-office" to="steve@nagios-office/work"><query xmlns="http://jabber.org/protocol/disco#info"><identity category="conference" name="stevesfunroom" type="text"/><feature var="http://jabber.org/protocol/muc"/><feature var="muc_public"/><feature var="muc_open"/><feature var="muc_unmoderated"/><feature var="muc_nonanonymous"/><feature var="muc_unsecured"/><feature var="muc_temporary"/><feature var="http://jabber.org/protocol/disco#info"/><x xmlns="jabber:x:data" type="result"><field var="FORM_TYPE" type="hidden"><value>http://jabber.org/protocol/muc#roominfo</value></field><field var="muc#roominfo_description" label="Description"><value>stevesfunroom</value></field><field var="muc#roominfo_subject" label="Subject"><value></value></field><field var="muc#roominfo_occupants" label="Number of occupants"><value>1</value></field><field var="x-muc#roominfo_creationdate" label="Creation date"><value>20150803T08:44:21</value></field></x></query></iq>
08-03 15:44:20.909  21971-22292/com.chatt D/SMACKļ¹• SENT (0): <message to='stevesfunroom@implement.nagios-office' id='wTLTd-39'><x xmlns='http://jabber.org/protocol/muc#user'><invite to='svn@nagios-office'><reason>Welcome to Steve room of fun. Enjoy!</reason></invite></x></message>

The problem happens when the invitee tries and joins this room, code snippet:

MultiUserChat multiUserChat = mMultiUserChatManager.getMultiUserChat("stevesfunroom@implement.nagios-office");
multiUserChat.join("svnnickname");

This results in the following smack debug log:

08-03 15:52:48.152  11768-11878/com.chatt D/SMACKļ¹• SENT (0): <iq to='stevesfunroom@implement.nagios-office' id='3JZn0-42' type='get'><query xmlns='http://jabber.org/protocol/disco#info'></query></iq>
08-03 15:52:48.158  11768-11879/com.chatt D/SMACKļ¹• RECV (0): <iq type="result" id="3JZn0-42" from="stevesfunroom@implement.nagios-office" to="svn@nagios-office/work"><query xmlns="http://jabber.org/protocol/disco#info"><identity category="conference" name="stevesfunroom" type="text"/><feature var="http://jabber.org/protocol/muc"/><feature var="muc_public"/><feature var="muc_open"/><feature var="muc_unmoderated"/><feature var="muc_nonanonymous"/><feature var="muc_unsecured"/><feature var="muc_temporary"/><feature var="http://jabber.org/protocol/disco#info"/><x xmlns="jabber:x:data" type="result"><field var="FORM_TYPE" type="hidden"><value>http://jabber.org/protocol/muc#roominfo</value></field><field var="muc#roominfo_description" label="Description"><value>stevesfunroom</value></field><field var="muc#roominfo_subject" label="Subject"><value></value></field><field var="muc#roominfo_occupants" label="Number of occupants"><value>1</value></field><field var="x-muc#roominfo_creationdate" label="Creation date"><value>20150803T08:52:48</value></field></x></query></iq>
08-03 15:52:48.167  11768-11878/com.chatt D/SMACKļ¹• SENT (0): <presence to='stevesfunroom@implement.nagios-office/svnnickname' id='3JZn0-44'><x xmlns='http://jabber.org/protocol/muc'></x><c xmlns='http://jabber.org/protocol/caps' hash='sha-1' node='http://www.igniterealtime.org/projects/smack' ver='NfJ3flI83zSdUDzCEICtbypursw='/></presence>
08-03 15:52:48.177  11768-11879/com.chatt D/SMACKļ¹• RECV (0): <presence to="svn@nagios-office/work" id="3JZn0-44" from="stevesfunroom@implement.nagios-office/svnnickname" type="error"><x xmlns="http://jabber.org/protocol/muc"/><c xmlns="http://jabber.org/protocol/caps" hash="sha-1" node="http://www.igniterealtime.org/projects/smack" ver="NfJ3flI83zSdUDzCEICtbypursw="/><error code="404" type="cancel"><item-not-found xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></presence>

I really think this has something to do with the unlocking of the room, but not show how.

Many thanks for any suggestions,

It appears you already figured that item-not-found may indicate a locked room (XEP-45 7.2.11). Iā€™d look more into why the server is sending this, since the room should have got unlocked because you created an instant room (XEP-45 10.1.2). You could try the ā€œsameā€ code against e.g. muc.xmpp.org (a public XMPP service).

Hope it helps.

Managed to resolve the issue if anyone else has the same problem.

In openfire I set the ā€˜default room settingsā€™ to enable only the following:

List room in Directory

Can anyone discover real JID of occupants

Allow Occupants to change nicknames

Allow user to register with the room

Log room converstations

Saved them restarted openfire i.e. ./openfire restart

Not sure if this is the real fix, it might have been enough just to restart openfire.

Hope it helps someone else.

1 Like

Hello,

I am also facing the issue, but itā€™s not constant. The issue is being occuring since last 3-4 days and that to on 1 issue anytime during a day.

Donā€™t know where to look for it. I cannot replicate this issue.

This topic was automatically closed 62 days after the last reply. New replies are no longer allowed.