(I am asking this here because this may have something to do with Android's Push C2DM support or its Wifi Sleep Policy.)
Suppose I have this conversation in Facebook or MSN:

When I check my Instant Messaging app in my phone later why does it
- sometimes have all six messages,
- sometimes have only the green ones, or
- sometimes have none at all.
This happens in eBuddy, Go!Chat, Nimbuzz, Imo.im, Trillian, Friendcaster or IM+. Note that at least the first three of these support Google C2DM Push Notifications.
- Is this a bug or limitation of Facebook chat?
- Is this a bug or limitation of these Android IM clients? or
- Is this a bug or limitation of Android C2DM?
What's the solution here: Never turn off my phone? Keep Mobile Data active always? I never ever have this problem with my desktop IM clients.