[GSoC 2012] Message delivery notifications

Николай Антонов ostinru at gmail.com
Mon Aug 6 15:35:05 EDT 2012


04.08.2012 15:14, Tomasz Wasilczyk написал:
> Hi,
> as we were talking before, there is a possibility to introduce message
> delivery notifications in Pidgin. It's another pidgin/libpurple
> change, which is needed for better Gadu-Gadu support (and also useful
> for other protocols). I would like to implement it, but I have to
> discuss some details here.
> To introduce per-message handling, we need (at first) to assign an
> optional message ID for every message. We have two (or more?) options:
> - globally unique, string-based: it can be useful, if we introduce
> someday database-based conversation log storage
> - locally, unique for every conversation, int-based: light and fast
> ID could be auto-generated, when not provided (NULL for string, 0 for
> int-based ids), based on timestamp with microseconds.

It is doesn't matter until I can simply map libpurple message-ID to 
protocol message-ID.

> Such message ID would be passed to purple_conversation_write as
> parameter (and all dependent functions). It would be also added to all
> message-related signals. I think, this is the hardest part.
> There is also a need for a new signal, let's say "im-status-changed"
> with message ID and current status (pending, received, not received)
> passed.
> At last, conversation window have to handle this. I think, default
> theme could display some spinning circle [1] for pending ones,
> unavailable emblem [2] for not delivered ones, and nothing for
> delivered ones.

I think that spinning circle will be too annoying.
May be try qip-like icons:
   yellow envelop - pending
   green envelop  - received

Nikolay Antonov

More information about the Devel mailing list