Thursday, October 23, 2008

Hauppauge Win-TV-HVR-950Q Works With Ubuntu Hardy on Mac Mini G4

I have had a very robust MythTV setup since spring 2005 using a Hauppauge WinTV-PVR-150 Media Center edition. Given the impending conversion to ATSC digital TV in February 2009, I ordered a Hauppauge WinTV-HVR-950Q external USB digital TV capture device.

Meanwhile, to reduce noise, heat, and power consumption, I am also switching from an i386-based workstation/server to an almost silent Mac Mini PowerPC G4 1.25 GHz running Ubuntu Hardy server with the lightweight Xubuntu desktop.

Today, I received the 950Q and was able to install it on the Mini without any trouble following Scott Bronson's detailed instructions to the letter. Thanks, Scott, for providing these wonderful, accurate instructions!

The Mini is too slow to play live video without mplayer's -framedrop option, but it is mostly a server anyway. The next step is to configure MythTV to record from the 950Q...no problem.

Meanwhile, I have upgraded all my systems to Jaunty, where the device is supported out of the box once you copy the firmware to /lib/firmware. Please see my recent comment for more details.

Saturday, October 11, 2008

Simplified Gizmo5 Backdoor Dialing Asterisk Gateway Interface Script

Using Gizmo5 backdoor dialing, one can make free VoIP calls to a growing double-digit percentage of domestic US phones. This article shows how to integrate this mechanism into FreePBX.

In an earlier article, I described a DYI VoIP setup that uses plain Asterisk for routing calls among various VoIP providers, analog phone adapters (ATAs), and the building door phone. Since I wrote that article, I have moved this Asterisk installation to a Linksys NSLU2 ("slug") and want to keep it as minimal as possible.

Starting with an updated version of the Monetra callerID lookup script, which performs some very basic screen scraping to look up callerID information from several web sites, I wrote a similar script that checks whether a given phone number can be called for free using Gizmo5 backdoor dialing and caches the result. Gizmo5 has a very simple web service for this purpose that powers its lookup form.

The script can be used in extensions.conf as follows, assuming your Gizmo5 account is set up correctly in sip.conf.
[macro-gizmo5backdoor]
exten => s,1,AGI(gizmo5backdoor_shell.agi|${MACRO_EXTEN})
exten => s,n,GotoIf($[ "${foundroute}" = "yes" ]?backdoor:pstn)
exten => s,n(backdoor),Goto(backdoor,010${MACRO_EXTEN},1)
exten => s,n(pstn),Dial(SIP/other-provider/${MACRO_EXTEN})

[domestic]
exten => _1NXXNXXXXXX,1,Macro(gizmo5backdoor,${EXTEN})

[backdoor]
exten => _0101NXXNXXXXXX,1,Dial(SIP/gizmo5/${EXTEN})
Both scripts are available from the Asterizmo project site.