Not logged in. · Lost password · Register
Forum: agsXMPP RSS
Avatar
praveenkhare #1
Member since Aug 2015 · 4 posts
Group memberships: Members
Show profile · Link to this post
Subject: DiscoManager.DiscoverItems VS DiscoManager.DiscoverInformation
Hi Alex,

I have created one persistent room(using agsXMPP library) and was able to do the group chat between its users, however after some time when I tried to fetch the rooms I did not get this particular room, so when I do DiscoManager.DiscoverInformation and passes the room JID I get all the room information but when I do DiscoManager.DiscoverItems then this particular room is not there in the list of rooms which xmpp server is returning, but as soon as I restart the xmpp server again I was able to see this room and this hiding/showing of room is keep happening on restarting the xmpp server.

Not sure what could be the issue? can you please help me with this?

I am using tigase server.
Avatar
Alex #2
Member since Feb 2003 · 4295 posts · Location: Germany
Group memberships: Administrators, Members
Show profile · Link to this post
When DiscoverInformation works then this item must be also returned in your DiscoverItems query.
It look to me like a problem in Tigase, because you are saying DiscoverItems works fine after a server restart for a while.

  • Is you room setup as a persistent room?
  • Have you tried to contact the Tigase support?

Alex
Avatar
praveenkhare #3
Member since Aug 2015 · 4 posts
Group memberships: Members
Show profile · Link to this post
Yes the room created are persistent below is the code for room configuration. So far I was looking in to the code if there is any problem, now I would try to contact Tigase support.

  1. private void OnRequestConfiguration(object sender, IQ iq, object obj)
  2. {
  3.     var rName = iq.From.User;
  4.  
  5.     roomName = System.Uri.UnescapeDataString(rName.Substring(rName.IndexOf('_') + 1));
  6.  
  7.     OwnerIq oIq = new OwnerIq();
  8.     oIq.Type = IqType.set;
  9.     oIq.To = new Jid(iq.From.Bare);
  10.  
  11.     Data xForm = new Data(XDataFormType.form);
  12.     xForm.Type = XDataFormType.submit;
  13.  
  14.     Field f_title = new Field(FieldType.Text_Single);
  15.     f_title.Var = "muc#roomconfig_roomname";
  16.     f_title.AddValue(roomName);
  17.     xForm.AddField(f_title);
  18.  
  19.     Field f_public = new Field(FieldType.Boolean);
  20.     f_public.Var = "muc#roomconfig_publicroom";
  21.     f_public.AddValue("1");
  22.     xForm.AddChild(f_public);
  23.  
  24.     Field f_memberonly = new Field(FieldType.Boolean);
  25.     f_memberonly.Var = "muc#roomconfig_membersonly";
  26.     f_memberonly.AddValue("1");
  27.     xForm.AddChild(f_memberonly);
  28.  
  29.     Field f_persistentroom = new Field(FieldType.Boolean);
  30.     f_persistentroom.Var = "muc#roomconfig_persistentroom";
  31.     f_persistentroom.AddValue("1");
  32.     xForm.AddChild(f_persistentroom);
  33.  
  34.     oIq.Query.AddChild(xForm);
  35.     try
  36.     {
  37.         xmppCon.IqGrabber.SendIq(oIq, new IqCB(OnRoomConfigResult));
  38.     }
  39.     catch (Exception ex)
  40.     {
  41.         //output = "\n\n Error:" + ex.Message;
  42.     }
  43. }
This post was edited on 2015-09-15, 12:28 by Alex.
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Forum: agsXMPP RSS