Using pointers in arguments of a signal via DBus

Liangent liangent at gmail.com
Tue Jul 20 13:19:08 EDT 2010


Hi,

I'm listening to a signal in Python via DBus with the following code:

def cb_jabber_receiving_message(gc, type, id, from_, to, message):
    # some code ...

bus.add_signal_receiver(
    cb_jabber_receiving_message,
    dbus_interface = 'im.pidgin.purple.PurpleInterface',
    signal_name = 'JabberReceivingMessage',
)

I cannot figure out how the message argument can be used. I tried some
Xmlnode* functions exported via DBus, but they always fail with
"DBusException: im.pidgin.purple.InvalidHandle: xmlnode object with ID
= 729930 not found" (where 729930 is the value of message argument). I
guess the reason is that the xmlnode was freed before DBus function's
invoking, then how can I read the content of message?

--Liangent




More information about the Support mailing list