[jdev] Gaim and gnomemeeting using jabber
Richard Dobson
richard at dobson-i.net
Thu Dec 2 03:58:55 CST 2004
> 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.
> 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.
> 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.
>> Not always no, if for example you are in a chatroom the people in that
>> room
>> will get your presence, and if you are adding your extension to presence
>> lots of people will know what your machines IP etc is, which is very bad,
>> jabber is designed in such a way that normally your IP address will not
>> be
>> revealed to all and sundry, also when chatting to people you and adding
>> them
>> to your contacts it doesnt mean you necessarily trust them enough to
>> reveal
>> your ip address uncessarily, what about DDos attacks or the various
>> buffer
>> overflow attacks that can be performed against a users machine once
>> someone
>> has their IP? The VoIP software you speak of will do nothing to protect
>> the
>> user from that.
>
> 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
:)
> 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.
> Since the beginning of the thread, I modified the patch to send&accept
> <x xmlns='jabber:x:oob'>
> <url>h323:me at there</url>
> <desc>VoIP</desc>
> </x>
> in presence, and according to JEP-066, it follows the standard ; but
> your objections are a concern :-/
As I am trying to point out you seem to be misinterpreting or reading into
the spec too much and inso doing not quite doing it the right way, if you
just follow the method of using the protocols I pointed out then as I say
you will be fine and wont have any further objections as you will be doing
things the right way :), as a recap below are the tasks and protocols you
need to use.
1) advertise a client is voip capable (this should be done using JEP-0030
and JEP-0115).
This task should be pretty easy, all you need to do is get a disco feature
setup in the Jabber Registrar representing voip support,
http://www.jabber.org/registrar/disco-features.html, the best person to ask
about this is stpeter at jabber.org he is the Jabber Registrar and will be able
to help you with this, once you have a feature defined you need to add it as
an extra feature to the disco#info response that gaim returns (which it
should be by now since JEP-0030 is now final, if it doesnt it needs support
for it), this is what allows clients to check each others capabilities, next
I would suggest you look into also supporting JEP-0115 in gaim too.
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.
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.
Richard
More information about the JDev
mailing list