Le vendredi 10 août 2007 à 15:57 +0100, George Wright a écrit : > On Friday 10 August 2007 15:54:40 George Wright wrote: > > - Ironing out, peer review. > > Woops, forgot that we still need to do profiles.
Profiles are the hard part I think... The following is based on NMC profile definition. Here is why I think profiles should be per client: 1) They have translated fields 2) Clients wants to select "blessed" CM that works for them. A client without MUC won't install tp-idle profile, clients don't want to support officially the last very unstable CM that will break everything. 3) There is UI related information, like which UI plugin to use to display the protocol-specific setting widget. 4) Some defaut values for CM depends on policies, like should we ignore-ssl-errors which is a security flaw but (atm) required to connect GTalk. For those reasons a client can't use a profile installed by another client. This means we won't be able to use an account created by one client in another client... And what if I uninstall one client, I loose all my accounts? That's not an option ! CM already provide their own default values, they can't add anything in a profile that isn't already available via telepathy spec. And they can't provide translated strings, protocol icon, etc. Maybe a solution would be to let MC install profiles itself, like that we don't specify a file format but only a DBus API to let clients read-only access information of all profiles. The only thing that can't be done inside MC is the UI setting plugin to use, but that's not a big lost, clients can just select the ui based on the protocol/CM name. At DBus level, AccountManager object needs a ListProfiles()->ao method. And the profile API looks like: GetConnectManagerName()-> s GetProtocolName()-> s GetDisplayName()-> s --> Translated string GetDescription() -> --> Translated string GetIconName() -> s --> Following the fd.o icon-naming spec. GetCapabilities -> as possible capabilities copied from NMC: "chat-p2p" "chat-room" "chat-room-list" "voice-p2p" "contact-search" "split-account" "registration-ui" "supports-avatars" "supports-alias" "supports-roster" GetSupportedPresences() -> au GetVCardField() -> s IsDefaultVCard() -> b Maybe we can specify a file format to store profiles and MC should then look for <all xdg dirs>/share/mission-control/*.profile Like that other programs can install additional profiles and users can add in ~/.local/ That should work but those additional profiles won't have translated strings. I'm sure there will be lots of comments :D Xavier Claessens. _______________________________________________ Telepathy mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/telepathy
