Software touched: empathy.
The best way to use a IM app is minimizing it, or sending it to the systray. So, a samrter way to handle this is integrating it in the desktop.
The libnotify messages should point to this icon.
If the user doesn't like this way of chat, the classic IM clients should be used, and this button deactivated.
The message libnotify shows, is almost always, a message we should answer, so to make it quickly those messages are showed here allowing to answer or just ignore it.
Also, it could show message received while offline. All in the same pannel.
A good point on it, it that we ca caht without a window for the conversation, just receive messages and answer them. However, the classic way of conversation will be always available in a separate window (or in the conversation tab).
The contact list in three flavours: face browser, mix, and the classic MS MSN style.
This show the current chat, focusing on two things: who says what and with who am I talking.
The chat bubbles are the best way to show who says what. And the top bar is ideal to see details on any moment, like the e-mail adress.
Maybe a sub-tabs to group all the conversations would be useful, to have all of them in the same space.
Focusing only on the percent, the direction and the filename.
Aditional details (filesize, doc kind, etc.) on mouse over.
Adjust the nick, accounts, personal message, webcam, etc.