I'm trying to send/emit a signal. I've tried to follow the example from here (referring to the syntax notes here), and so far can't get it to behave.
Things break when I call bus.publish(). I get this Exception:
Exception: GLib 2.46 is required to publish objects; it is impossible in older versions.
My environment:
I'm running Ubuntu 14.04.5, which I know by default has a GLib version older than 2.46
But in an attempt to get to GLib 2.46 I've found and installed what claims to be 2.46 from a PPA (here). Not sure if that really worked, but the packages show as installed with good version numbers. And yet I still get the above Exception.
Am I missing something obvious? For instance, am I mistaken to think I need to publish the class/interface? But if I don't publish it, how does it get associated with the right bus? (BTW, I need to be on the system bus.)
So, what does anyone think?
Maybe I need to work harder (i.e., do something more - but what?) to get to GLib 2.46
Maybe I'm suffering a basic misunderstanding and can emit a signal without having to publish my class/interface
Maybe my OS Release is just too far behind and I need to use a different (older and less Pythonic) dbus binding?
I'm trying to send/emit a signal. I've tried to follow the example from here (referring to the syntax notes here), and so far can't get it to behave.
Things break when I call
bus.publish()
. I get this Exception:Exception: GLib 2.46 is required to publish objects; it is impossible in older versions.
My environment:
Am I missing something obvious? For instance, am I mistaken to think I need to publish the class/interface? But if I don't publish it, how does it get associated with the right bus? (BTW, I need to be on the system bus.)
So, what does anyone think?
What advice does anyone have?
Thank you,
Steve