RemoteControlApplet
Launchpad Entry: https://blueprints.launchpad.net/ubuntu/+spec/remote-control-applet
Created: 2007-05-31 LoicDardant
Contributors: LoicDardant, DenisGautherot
Packages affected: lirc
See also: MediaCenter/SoftwareSpecs , RemoteControls
Summary
This specification describes how to improve the facility of use a remote with Lirc.
Rationale
Told described here, a robust support for remote controls is needed in both Debian and Ubuntu, and is a must for the UbuntuMediaCenter.
To use your remote, you need to install Lirc. It allow you with a the lircd daemon, to catch the ir signal. Then this signal is send to programs so you can manage your programs with your remote. But there are lot of problems to start this deamon or other tools provided by Lirc at the start of your computer (trust me ;)).
Use Cases
- Jack owns an new remote. He wants to manage his computer with it, but when he starts his computer, the remote doesn't respond.
- Elise wants to start the daemon, but there is problem, she doesn't know what is a deamon and how to stop it.
Design
a. Create the interface
Fisrt of all, we can develop the interface. We want to use Python and Gtk (pygtk). The interface of an applet is very easy, so it can be a good start point to have a vision of this tools. Possiblity to develop the interface with Glade, because the main problem is the core.
There is another point with the interface, the logo. Each applet has a logo/icon. Lirc has a diode for logo. But it's maybe time to have other choices. A try can be found here On and Off. The idea is that the power button is:
- green when the daemon runs and receives a signal,
- red when the daemon runs but nothing is received,
- gray if the daemon isn't running (ie "Remote control support disabled").
If some graphists have ideas, don't hesitate to send this on the mailing !!!
b. Create the core
Define which tool should run. There are some : irexec, lircd,... Maybe the possibility to choose. But for a base user, he doesn't know. And the spirit is he mustn't know how it work. A use of lib os in python will be great ! We need to do :
- send actions (irexec)
activate / deactivate the remote support (ie invoke-rc.d lirc) {start,stop} + options at-boot => use gksu
c. Testing time
Test the applet on different configurations, with different remotes. When it's done, the next point can be applied.
d. Other features
Configuration (ie auto detection / choice of the remote, ability to configure extern programs (Elisa, Mythtv, Kaffeine...) Note : need to be discuss : extern tool (possibility to have an other team on this task, separate start daemon/configure remote) or integrate with the applet (have all in one tool) ?
e. Discussion with Lirc for an inclusion
Discuss with the developpers of Lirc to include this tool in Lirc. It's a part of the RemoteControls spec, with for example the new name space standard. Give a new power of the Lirc project !
Implementation
Milestone 1 (target: Gutsy)
Implement the following solutions:
Task name
Task status
Assignee
Comments
a. Create the interface
underway (80 %)
b. Create the core
just started (60 %)
under investigation
c. Testing time
not started (10 %)
Milestone 1 or 2 (target: Gutsy or Gutsy+1)
Task name
Task status
Assignee
Comments
d. Other features
not started (0 %)
e. Discussion with Lirc for an inclusion
not started (0 %)
Note : if you want to participate, don't hesite to contact LoicDardant or mail to the mailing list.
References
- Kdelirc (maybe same same as irkick)
RemoteControlApplet (last edited 2008-08-06 16:35:42 by localhost)