X-Git-Url: http://git.maemo.org/git/?p=python-purple;a=blobdiff_plain;f=signal_cbs.pxd;h=64c66d18e9fbbc3f22225072b735257abdf19b47;hp=00369e8509de02607ff9effd306abaeba1427054;hb=b18104778893417ea6ce29ceffe33adb526c86f6;hpb=3ac088be4b86dfb87718586f7a095f88b566ce42 diff --git a/signal_cbs.pxd b/signal_cbs.pxd index 00369e8..64c66d1 100644 --- a/signal_cbs.pxd +++ b/signal_cbs.pxd @@ -22,21 +22,43 @@ cimport purple signal_cbs = {} cdef void signal_buddy_signed_off_cb (blist.PurpleBuddy *buddy): - debug.c_purple_debug(debug.PURPLE_DEBUG_INFO, "signal", - "buddy_signed_off\n") + if buddy.server_alias: + name = buddy.server_alias + elif buddy.alias: + name = buddy.alias + else: + name = buddy.name + try: - (signal_cbs["buddy_signed_off"])(buddy.name) + ( signal_cbs["buddy-signed-off"])(name, buddy.name) except KeyError: pass cdef glib.gboolean signal_receiving_im_msg_cb (account.PurpleAccount *account, - char **sender, - char **message, - conversation.PurpleConversation *conv, - conversation.PurpleMessageFlags *flags): - debug.c_purple_debug(debug.PURPLE_DEBUG_INFO, "signal", - "receivinv_im_msg_cb\n") + char **sender, char **message, conversation.PurpleConversation *conv, + conversation.PurpleMessageFlags *flags): + cdef blist.PurpleBuddy *buddy = blist.c_purple_find_buddy(account, sender[0]) + + if buddy.server_alias: + name = buddy.server_alias + elif buddy.alias: + name = buddy.alias + else: + name = buddy.name + + stripped = util.c_purple_markup_strip_html(message[0]) + + try: + return ( signal_cbs["receiving-im-msg"])(sender[0], name, stripped) + except KeyError: + return False + +cdef void jabber_receiving_xmlnode_cb (connection.PurpleConnection *gc, + xmlnode.xmlnode **packet, glib.gpointer null): + + message = xmlnode.xmlnode_to_str(packet[0], NULL) + try: - (signal_cbs["receiving_im_msg"])(sender[0], message[0]) + ( signal_cbs["jabber-receiving-xmlnode"])(message) except KeyError: pass