[Telepathy] features request

Simon McVittie simon.mcvittie at collabora.co.uk
Sat Oct 14 18:04:38 PDT 2006


I see Daf has already said similar things, but to expand on what he said:

On Sat, 14 Oct 2006 at 21:16:32 +0200, Xavier Claessens wrote:
> 1) "account" param should have a default value like "user at jabber.org"
> for gabble, or "user at hotmail.com" for butterfly, "123456789" for ICQ,
> etc... This is useful to display to the user as example when gossip asks
> for the ID. Gossip's jabber protocol had an hardcoded "user at jabber.org"
> but it should be adapted for different protocols.

To clarify based on your other mail, am I right in thinking you don't
actually mean a *default* value, you mean a *sample* value? This would
be nice to have for UIs, yes. I think the distinction is important,
though.

> 2) parameters should have a default value depending on the value set for
> other parameters. For example if old-ssl=false port should get the 5222
> default value, if old-ssl=true then port=5223. Another example, if I set
> account=zdra at gmail.com default value for alias should be set to "zdra"
> and server should be set to "talk.google.com". daf told me this involves
> DNS lookup...

I don't think it's useful to set a default alias in this way - setting
the alias parameter in RequestConnection is explicitly saying "I do want
this alias".

If the user doesn't specifically set an alias in the UI, I think the UI
should not supply any alias to the CM. The CM is then free to set whatever
fallback alias it likes - in Gabble we use whatever alias is already set on
the server (e.g. by another client), and if there is none, we use the JID
(IIRC).

old-ssl linked to port number I can see your argument for, although when we
eventually support TLS (the reason the parameter is called old-ssl
rather than just ssl!) this will hopefully become increasingly irrelevent. I
understand the lack of SASL/TLS support is a libloudmouth issue? Alternatively,
we could just have no default port number (remove the "there is a
default" flag), and then if the UI doesn't give the CM any port number,
have the CM choose between 5222 and 5223 depending on old-ssl.

Like the port, the server parameter is intended as an override for
specific strange cases (e.g. a SSH tunnel terminated on localhost),
rather than something you'll always use. At the moment Loudmouth (and
hence Gabble) doesn't do a SRV lookup in DNS before connecting, whereas
the XMPP spec requires that you do, which is why Google Talk doesn't
Just Work with no tweaking.

The right thing to do would be for Gabble to do a SRV lookup in DNS -
conceptually, the right place to do this would be libloudmouth, but it
would be sufficient for Gabble to do the SRV lookup and pretend the
server and port parameters had been set accordingly. (It could even be
done by Gossip as a way to populate those parameters, although I agree
this is the wrong thing to do.)

> 3) We should have a "hidden" flag for parameters to told the UI to hide
> the input, that's very useful for parameters like "password" or
> "stun-server-password", etc. This can be added to the .manager file
> like:
> 	param-password=s hidden

This would be good to have - at the moment Cohoba special-cases password
in its UI and debug output!

It's not as simple as modifying the manager file, we do need to change
the Telepathy spec - the manager file is just meant to be a cache
of the information you can get over D-Bus, so you don't need to start up
all the CMs on the system just to interrogate them (I wrote some code in
Gabble to generate its .manager file during the build, in fact, and
I think there's code somewhere to introspect a running CM using
dbus-python and output its .manager file).

I'm working on some missing features Gossip and Kopete want at the moment
(server-side groups and avatars, hopefully followed by full vCard support)
so I might be able to look at these too.

	Simon


More information about the Telepathy mailing list