GNOME Bugzilla – Bug 338450
Ekiga should call the gnome-power-manager InhibitInactiveSleep command
Last modified: 2006-08-27 09:14:25 UTC
From: https://launchpad.net/distros/ubuntu/+source/ekiga/+bug/39543 "I was just in the middle of a voice call and my machine suspended. It would be excellent if ekiga could let Gnome-Power-Manager know not to go to sleep using the InhibitInactiveSleep call. Please find more information: http://live.gnome.org/GnomePowerManager/Faq#head-ec399a12ba6d1a8461e5d6af7394d9560a838bc4 http://bugzilla.gnome.org/show_bug.cgi?id=334809 This is distinguished from Bug #30659 [gnome bugzilla: Bug #330237 ] because I do not expect ekiga to inhibit the screensaver. I don't mind if the screen blanks (in fact I would like it to do so), but I can't think of a good reason why it should suspend when you are *in* a call (the inhibit should begin as a call begins and stop when the call ends - so that it doesn't inhibit when it is sitting idle 'waiting' for a call)."
Hmmm... looks like a work for the DBUS component again...
Snark, don't confuse the DBUS component as a server (which is the current state), and as a client (which corresponds to the current bug report).
The DBUS component makes ekiga available through DBUS... hence if the power manager has to know about ekiga through DBUS, it will be through that component, isn't it ?
Perhaps I misunderstood. I thought Ekiga had to warn gnome-power-manager using DBUS, not gnome-power-manager querying Ekiga.
The function in the DBUS component which signals call states will do a switch on the state and call the required methods through DBUS too. So it will be ekiga warning the gnome-power-manager and the screensaver.
That's exactly what I'm saying :-) The current DBUS component is sort of a "server" offering services to other DBUS "clients". Here it is just the reverse situation. Anyway, that's for 2.2.
Yes, it's for 2.2. And I hope it will be soon :-)
As Damien says, I believe that the work involved in making a DBus call to GPM is far less than making ekiga act as a server receiving DBus calls. To let you know, it seems that the call only works in GPM 2.15+ so it may be worth checking your version before testing any code that you write :).
I intended to make the method call without checking for errors or whatever. It works or I don't care.
You'll want to use Inhibit() rather than InhibitInactiveSleep. See http://cvs.gnome.org/viewcvs/*checkout*/gnome-power-manager/docs/gnome-power-manager.html#pm-Compatibility -- this is due to the XDG standardisation. I have also (with Richard's help) compiled some information on this in the Ubuntu wiki. Please see https://wiki.ubuntu.com/GnomePowerManagerInactiveSleep
*** This bug has been marked as a duplicate of 353077 ***