KDE Telepathy and Kubuntu
Daniele E. Domenichelli
daniele.domenichelli at gmail.com
Sun Mar 11 03:43:20 UTC 2012
On 10/03/12 17:10, David Edmundson wrote:
> Telepathy message indicator works differently to how the indicator
> works with every other app. Normally (like in konversation) there is a
> Kubuntu patch which emits some signals saying (I've got a message").
>
> However, instead of patching anything there is a message indicator
> plugin (cleverly called telepathy-indicator) which builds an entire
> approver into the message indicator. (for Jonathan's benefit; this
> means the message indicator is listening for the telepathy backend
> broadcasting "I've got a new message channel!!!", but we also have our
> stuff that listens for that too)
>
> It's this plugin which has the hardcoded "I guess you're using
> empathy". If you don't have this installed you won't be get
> telepathy-based-indications.
>
> If we patched our stuff, if the user still has this plugin installed,
> no matter how much we patch our stuff they'd get multiple alerts
> unless we change this plugin.
Ok, I still don't understand fully this indicator stuff, but I think I'm
starting to understand the problem, so a few more thoughts (sorry if it
is a long and boring mail, if you want to skip reading, my conclusion is
"Dear User, if you installed both it's just your fault, not mine.").
They chose to write a plugin that is an approver, it makes sense for
them, but I'm not sure if this is the way where we should go.
We already have one approver that does his job preferring our
applications over the others. If the plugin has hardcoded empathy icon,
it will probably prefer empathy stuff as well. In my opinion the way to
go from our side is "don't mess with empathy/gnome/ubuntu clients". If
we want to support message indicator, let's just use our approver and
just emit the messages in the same way as Konversation does.
As far as I know about Telepathy approvers (sorry for the incoming high
number of "approve" in this sentence), Mission Control will request to
all the approvers if they can approve one channel, the first one that
replies positively gets to approve it. Therefore, if the
telepathy-indicator plugin is an approver, unless it is really nasty and
send the notification before he gets to approve the channel, just one of
the approver will get to approve the channel and to send the notification.
So theoretically (if my understanding of the approval mechanism is
correct and they are not doing weird stuff) the user should always get
one and just one notification per message. If the user installs the
plugin, it is his fault, perhaps he will get the notification from the
"wrong" approver (perhaps it's not wrong for him), but he should always
get just one. It is the same if he installs any other component that can
replace one of ours, he might get stuff delivered to the "wrong"
component. That's how Telepathy works.
If you really want to avoid this problem, on a packaging level, it is
just possible to have ktp-approver conflict with
telepathy-indicator-plugin (or whatever is the name of the package), so
that the user can install it if he really wants it, but ktp-approver
will be removed and kde-telepathy meta-package broken.
Final thought, if you install 2 xmpp clients (let's say kopete and
kde-telepathy since I just tried it) and you configure both on the same
account, you will get the notification twice for each message, if you
install at the same time Muon and Apper you will get the notification
that you have system updates twice, etc. That's something normal if you
install two applications to do the same thing.
Cheers,
Daniele
More information about the KDE-Telepathy
mailing list