[jdev] Gaim and gnomemeeting using jabber

PUYDT Julien julien.puydt at laposte.net
Thu Dec 2 06:17:24 CST 2004


Le jeudi 02 décembre 2004 à 09:58 +0000, Richard Dobson a écrit :
> > JEP-066, example 6?
> 
> Yes well JEP-0066 is simply showing a web url that someone can execute if 
> they want to, in the same way as when you execute url's in any other 
> application of jabber:x:oob, but you seem to be trying to use it to express 
> the fact that you are in a call, that is against it, you shouldnt be using 
> jabber:x:oob for anything really other than sending the user a uri to 
> execute, you are trying to use it to express something it is not designed 
> for and inso doing will likely break clients that currently handle 
> jabber:x:oob as the spec says it should, also example 6 seems to really be 
> showing is a way for someone to look up more information from that user 
> while they are offline, it says nothing about using jabber:x:oob in online 
> presence stanzas.

Hmmmm... I'm sending an uri that people can use to call me if they want
to (and my voip client will ask me to accept). I'm not expressing that
I'm in a call but that I'm available at that uri for a call. 

> > Well, I did test my patch, and it does work...
> 
> Did you test it when its sending it to every different client to make sure 
> it works? Or did you just test it against your patched gaim?
> If you did do a proper test to make sure it doesnt cause problems with any 
> other client then thats good, but if you havent you cant really say you have 
> tested it and it works.

I tried it with:
* patched gaim ;
* unpatched gaim ;
* gossip.

My patched gaim didn't seem to give any headache to either of the
innocent clients...

> > JEP-066 doesn't call what I do 'wrong', it says 'creative usage' ;-)
> 
> JEP-0066 does not say anything about what you are trying to do with it im 
> afraid.

JEP-0066, paragraph 3 (jabber:x:oob):
"However, the 'jabber:x:oob' namespace is useful for communicating a URL
to other users or applications. This is done by including an <x/> child
element qualified by the 'jabber:x:oob' namespace in either a <message/>
and <presence/> stanza; the <x/> child MUST contain a <url/> child
specifying the URL of the resource, and MAY contain an optional <desc/>
child describing the resource."

> > Arg. Point taken.
> 
> Good good, we dont want to make all those poor windows users with the 
> default security setup that havent updated in ages even more as risk do we 
> :)

Notice that I fail to see the huge security gain between:
1) exporting the voip uri right away ;
2) exporting the voip feature, and giving the corresponding uri on
request.

> > Step 3 can wait.
> 
> Good good, then I suggest you just follow the first two tasks I outlined 
> using those existing standard protocols as they are intended to be used, if 
> you do that you will be fine.

I don't see very well what should go one way and the other ; could you
write a mockup (like I did to show what the patch I have does)?

> 2) initiate a chat with another voip capable client (this should be done
> using JEP-0020, then JEP-0066).
> 
> Next you use JEP-0020 to negotiate which voip protocol to use to talk to 
> another user, i.e. sip/h323/iax, etc then once the two clients have used 
> JEP-0020 to decide which protocol to use JEP-0066 in jabber:iq:oob to send 
> the voip uri that the other user needs to use to connect.

Why do I always have the impression that you think having the voip uri
gives anything to anyone? You know, a typical voip uri is much like a
jabber uri: it tells you to which server you have to ask for whom ; for
example: "h323:ils.seconix.com/that.user at you.know" . That doesn't
generally give you an ip, but just a mean to find it out.

Once you have a voip-uri:
* your client must ask the server for your ip (and the server can
refuse!) ;
* your client must connect to your voip-client (and you may refuse!).

> There we have it voip support done all using the existing standard protocols 
> as they are supposed to be used.
> 
> > Back to the chalkboard :-/
> 
> Yup but as I say, just follow those protocols for tasks 1 and 2 and you wont 
> need to create any new protocols, just use what is already there and in the 
> correct way. If you need any further help on implementing or understanding 
> those protocols and how they fit together just ask as I have experience 
> implementing those and know how they work.

Yes, a mockup client-client discussion would be nice.

Thanks,

JP




More information about the JDev mailing list