[Telepathy] On spec additions to allow a really simple IM API
Will Thompson
will.thompson at collabora.co.uk
Tue Jul 6 10:45:40 PDT 2010
On 01/07/10 20:26, Will Thompson wrote:
> • We could add send-only text channels, which you can always Create
> regardless of whether there's another channel going on. No incoming
> messages are reported by them; you can just call SendMessage().
> MessageSent fires on the send-only channel, as probably do delivery
> reports for the messages you send on that channel. Incoming messages
> don't show up.
From IRC discussion today: this seems like the least crazy option of
the three. One quirk is that EnsureChannel() without WriteOnly: True
should never return one of these write-only channels.
Another quirk is: if you send a message on a write-only channel, and
you've got a normal channel to the same contact open and being displayed
in a conversation window, what happens?
› MessageSent is only emitted on the write-only channel. An observer can
still log it, but it won't show up in the conversation window unless the
logging observer signals the conversation window out-of-band.
› MessageSent is emitted on both channels. The observer now has to
de-duplicate, but the message will definitely be shown in the
conversation window.
I'd be inclined to go for the second way, unless we want to go down the
path of handlers getting all their messages from the log, rather than
from signals on the channel. (Which is not necessarily a bad path, but
is another can of worms.)
--
Will
More information about the telepathy
mailing list