[mythtv] Caller ID
Ken Bass
kbass at kenbass.com
Wed Oct 22 01:19:10 EDT 2003
[Please accept this patch into the baseline - it is a patch to the 0.12
tarball. It also appears to patch successfully to todays CVS. I've been
running this for about a month with no problems under 0.11.]
Here is a README file.
History:
I thought it would be very useful if when the phone rings I could
have 'Caller ID' information displayed on the mythTV "on screen
display" (OSD) while watching live tv or viewing recordings.
It would also be nice to provide other notifications to the screen.
Solution:
I wrote three programs to address this problem (see contrib
directory) and I modified the 'mythtv' package to support
displaying notifications via the OSD.
1) mythTV changes - I created a patch so that the mythtv task listens
for a special XML formatted 'notification' packet on a UDP port
(default 6948). Using UDP eliminates a lot of complex coding and allows
the data to comes from any machine on the network. See mythtvosd below.
2) mythtvosd - This program is a command line utility for displaying
information on the OSD. It takes command line arguments, and XML
file as a template, and send the data via UDP to mythtv. See the
mythtvosd README file for details of usage and XML format.
3) mythudprelay - This is a generic relay program. It receives XML
packets via UDP. It then uses XSLT to transform the input XML to an
output XML that myth requires. See the mythudprelay README
for details.
4) cidbcast - This is a caller id monitoring program. It requires a
caller id capable modem and that you subscribe to the caller ID
service. When the phone rings, a caller ID capable modem decodes the
caller ID information (which gets transmitted by the phone company
between the 1st and 2nd ring). The modem then outputs this info to
the serial port. The cidbcast program broadcasts an XML structure
via UDP. All clients on your LAN can receive and process it. In the
future, I plan to write some 'java' clients that will run under
windows to provide notification of caller id info. See the cidbcast
README for details.
Caller ID Uses:
This package is pretty flexible and there are many ways to
accomplish the same thing.
Scenario 1) If you have a caller ID capable modem in a linux box
somewhere on your network and you want to dedicate it to caller ID:
a) Run cidbcast on the machine with the caller ID capable modem.
b) Run mythudprelay on any machine (the machine with the modem or
even your mythfrontend)
Scenario 2) If you want to use some external program to monitor your
caller ID modem:
a) Have your external program invoke cidbcast with the '--once'
option and pass proper command line arguments (such as caller name
/ number, etc) as options. This will invoked cidbast in the 'single
shot' mode. A single UDP packet will be sent - no modem interaction
takes place. The program exits immediately after sending.
b) Run mythudprelay on any machine (the machine with the modem or even
your mythfrontend)
Other Uses:
You can use this package for more than just caller ID. Perhaps
email notification, CPU temperature overheat warning, etc. Use the
'mythtvosd' program to generate myth notification events. See
mythtvosd README for details.
Enjoy!
---Ken
-------------- next part --------------
A non-text attachment was scrubbed...
Name: notify-0.12.patch.bz2
Type: application/octet-stream
Size: 20928 bytes
Desc: not available
Url : http://mythtv.org/pipermail/mythtv-dev/attachments/20031022/c4d917eb/notify-0.12.patch.obj
More information about the mythtv-dev
mailing list