else:
username = None
- if who:
- sender = <char *> who
- buddy = blist.purple_find_buddy(acc, <char *> who)
+ if who == NULL:
+ who = conversation.purple_conversation_get_name(conv)
+
+ sender = <char *> who
+ buddy = blist.purple_find_buddy(acc, <char *> who)
+ if buddy:
c_sender_alias = <char *> blist.purple_buddy_get_alias_only(buddy)
- else:
- sender = None
if c_sender_alias:
- sender_alias = c_sender_alias
+ sender_alias = unicode(c_sender_alias, 'utf-8')
else:
sender_alias = None
else:
message = None
+ # FIXME: Maybe we need add more purple flags in the future
+ if flags & conversation.PURPLE_MESSAGE_SEND:
+ flag = "SEND"
+ else:
+ flag = "RECV"
+
if conversation_cbs.has_key("write-im"):
(<object> conversation_cbs["write-im"])(username, sender, \
- sender_alias, message)
+ sender_alias, message, flag)
cdef void write_conv(conversation.PurpleConversation *conv, const_char *name, \
const_char *alias, const_char *message, \