Not logged in. · Lost password · Register
Forum: XMPP Protocol RSS
Avatar
mayprog #1
Member since Mar 2006 · 61 posts
Group memberships: Members
Show profile · Link to this post
Subject: Muc questions
Hallo Alex,
now i am trying to harness the muc beast!
I do have some questions that your opinion will help much:

What version of jep 045 you have implemented ? ( i can see from missing status codes that it is not the latest one)
About status codes, i am using wildfire as our testing server and i can see that it won't give me all the required status codes (for example when my own presence is sent  to me status code 110 isn't appended to the presence element). Is wildifre's implementation out of date or i shouldn't rely on status codes?
Most important : I want to be able to enable/disable features for the client to do in the room (kick, ban users etc). I can see that in order to find out if a user is permitted to apply such actions many things must be checked (my role, my affiliation, users role, users affiliation etc) and also the room configuration. The problem is that according to jep 0045 i cannot query the room configuration (or i haven't found a way to do that). I can only get the room info by using DiscoInfo which won't give me needed information regarding room configuration.
Is there another whey to achieve that?

Thank you very much for your support!
Avatar
Alex #2
Member since Feb 2003 · 4449 posts · Location: Germany
Group memberships: Administrators, Members
Show profile · Link to this post
Hello mayprog,

Questions 1: We have implemented one of the latest verions of the JEP. I think there was only one new release since our implementation. The status code stuff was added after our implementation. Status codes and reserved rooms are on our TODO list.

Quesstion 2: The wildfire team implemented MUC a long time ago. So its possible that it's not 100% compatible with the latest XEP. XEP's which are not in a final state can change. You always should keep this in mind when working with extensions which are not final.

Quesstion 2: In the JEP 5.2.1 Privileges you can some tables which show all the privileges associated with affiliations. Using Disco Info requests is correct for query the room for its configuration. But for the MUC server its optional to return the detailed configuration. Did you look at some other existing clients how they hanlde his privileges?

Alex
Avatar
mayprog #3
Member since Mar 2006 · 61 posts
Group memberships: Members
Show profile · Link to this post
Alex you are 100% right!
Some times i catch myself trying to reinvent the wheel!

1) If you want i could help you find out missing components and sent you some code and modifications i found trying to use the muc protocol.

2) You are right, but i have asked you and in aprevious thread, how can i now what version does each server implement (i have the same problems for pub sub protocol)?

3) You where right. I watched sparks debug window and found out they are using the following code to get room's info
<iq id="1g028-42" to="user5_d9y@conference.im.ipxgate.gr" type="get">
  <query xmlns="http://jabber.org/protocol/muc#owner"/>
</iq>
I wonder, is this jives implementation which won't work with other servers?I will try to find it in the xep 0045.

Thank you very much for your support!
Avatar
mayprog #4
Member since Mar 2006 · 61 posts
Group memberships: Members
Show profile · Link to this post
No, i was wrong about 3), this is happening to get the configuration info before spark registers a new room.
When spark is invited from another client it won't try to get any room info.
I suppose it handles user's actions just by checking the roles and affiliations of the users.

I suppose there isn't any way to get 100% of room configuration info, after all xep 0045 doesn't mention anything about this.
Avatar
mayprog #5
Member since Mar 2006 · 61 posts
Group memberships: Members
Show profile · Link to this post
For starters i have added some code to bug report.
Avatar
Alex #6
Member since Feb 2003 · 4449 posts · Location: Germany
Group memberships: Administrators, Members
Show profile · Link to this post
Hello mayprog,

there is no way in XMPP to get the version of an XEP implementation of a server or client. As i said before it's always a risk to implement XEP's which son't have the status of final. This protocols are still under development and can change. And this is also the reason why current server implementation could behave different. But MUC is in an advanced state and used in many applications yet. So i don't think there will be more changes.

I think the most Muc clients just look at the affiliation and build the "action menues" from that (kick, ban etc...). Which does not mean that this is 100% correct and you could do it better. You should be able to request the room configuration at any time, not only when you create new rooms.

Alex
Avatar
mayprog #7
Member since Mar 2006 · 61 posts
Group memberships: Members
Show profile · Link to this post
Hallo Alex,
I agree that i should be able to get configuration settings but I cant find out how!
I suppose there is nothing mentioning that in the xep because of security reasons, but again there are no security reasons if everyone knows the configuration
of the room...

Anyway, about versioning, the two biggest and most interesting xep's that xmpp has to offer i think is Muc and PubSub, but none of them is yet completed.
It's not a pleasant situation, but one has to take the risk of using them.

Alex, thank you very much for your support!
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: