[Adium-devl] libpurple: personal message != status message

Felipe Contreras felipe.contreras at gmail.com
Wed Sep 10 13:13:12 EDT 2008

On Wed, Sep 10, 2008 at 7:42 PM, Peter Hosey <boredzo at adiumx.com> wrote:
> On Sep 10, 2008, at 06:27:03, John Bailey wrote:
>> I still see no reason to treat this as anything other than a status
>> message…
> Reading the MSN-pecan ticket, it sounds like some users (perhaps
> coming from one or both of the official Microsoft clients) are used to
> a "personal message" field, and are looking for and not finding the
> same thing in Pidgin/Adium.
> It's a case of different expectations. You and I are used to status
> state and status message together in a single status record; the MSN/
> Windows Live expatriates are used to status state and personal message
> separate.

Not really, the same thing applies for XMPP, it's not protocol-specific.

Let's say you want to set a twitter-like message: "Dark-Knight was
awesome!". Why do you need to click the status control? You shouldn't;
it's conceptually independent.

You might even have twitter plugin in Pidgin that sends your personal
message to twitter. You certainly don't want the message to change
when you go away, or go to lunch.

Now, you might want to have a message: "In a meeting". *That* is a
status message. As soon as you go to Available you don't want to have
that message anymore.

I think the problem is like the public/private aliases, people are
predisposed by their previous experiences.

Let's think instead on two fields: A, and B, which are
protocol-independent. Both are somehow mapped into a "message".

In MSN that "message" is called the "personal message" and is usually
associated with field A, but some people use it manually for field B.

In XMPP the "message" is called "status message" and is usually
associated with field B, but some people use it as field B.

If you look at the implementation the "personal message" of MSN is
completely unrelated to the status, while in XMPP it's tied, as the
name "status message" suggest.

However, people use "status messages" in XMPP as MSN "personal
messages" and vice-versa. Therefore it's meaningful to conceptually
separate them, they are both a "message"

The UI however, can promote one usage vs the other, that's when field
A and B come up, something I'm proposing.

Field A, is always visible, just like the buddy icon. You can click on
it and change it right away. Its manual, not tied to anything else.

Field B is not always visible, it's tied to a status, and it changes
whenever the status changes. When a status doesn't have field B set,
then it's not visible. The only way to change field B is when editing
a custom status.

But there's only one "message", so someone needs to choose between
field A and field B. IMO the UI should do that, what I think it's
sensible is to display field A only when field B is not set.

That means "Dark Knight was awesome!" will only be shown when there's
no custom status with a message like "In A Meeting".

A twitter-like plugin then can use filed A and ignore field B.

> Conceptually, I think the Pidgin/Adium is better: you are either
> available doing something (Available, "Eating at my desk") or away
> doing something (Away, "At In-n-Out"). Adium provides UI to edit the
> current state (and save it or not) if the user wants to change either
> property alone; it could be more obvious, but I think it's a solid
> foundation.

Actually I was reminded of the issue because of a bug report in Adium:


Felipe Contreras

More information about the Devel mailing list