I use SageTV with my Xlobby setup (installed on the same machine). Sage is extremely versitile in that it can be controlled via a windows sendmessage utility from within Xlobby.
I use the Xmovewindow plugin to "embed" a smaller SageTV within within Xlobby for a "more seamless" look. Xlobby button are then used to maximize the window as needed. With Sage, you get DVR, commercial skipping, a programming guide etc....a very nice, mature package. (imho).
Below is an except about the SageTV sendmessage capability.....
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Appendix J: Using the SendMessage Utility
When SageTV is installed, SendMessage.exe (version 2.2) is also placed in your SageTV
directory. If that file is not in your SageTV directory it may be downloaded from the attachment
to this forum post:
http://forums.sagetv.com/forums/showthr ... ostcount=1This utility was created by a SageTV user and is provided by SageTV “as-is”. Use of this
utility is not supported by SageTV’s technical support. If you need help using this utility,
please go to our discussion forum at forums.sagetv.com/forums.
The SendMessage utility can be used to send commands to SageTV as Windows messages, using
the command event numbers. See: Sending Commands via Windows Messages. While SageTV
itself can also do this with its -event parameter, SendMessage has a few advantages:
1. The SendMessage exe file is smaller than the SageTV exe file, so it will load and run
faster.
2. Unlike the -event parameter, the SendMessage utility is capable of sending multiple
commands each time the program is run, making it easier to ‘batch process’ a series of
commands.
3. SendMessage can be used to send messages to any Windows program.
Usage
If SendMessage is run without any parameters, it will display a dialog with a brief outline of its
usage instructions. The utility uses the following command line format:
SendMessage WindowClass WindowName MsgID wParam lParam <repeat param list> …
The above-referenced Sending Commands via Windows Messages section lists the values to be
used for each of those parameters in order to send command event numbers to SageTV or
SageTVClient. To send multiple messages, simply send another series of those five parameters
after the first five.
In addition to those parameters, default values for each parameter can be defined when you wish
to send multiple messages: once a default value is set, that value can be skipped in the list of
parameters for additional messages to be sent. To define default values, use the following
options. Note that the values are not case sensitive (-c is the same as –C):
-C WindowClass – Define the window class name to receive multiple messages.
-N WindowName – Define the name of the window to receive multiple messages.