Wednesday, May 27, 2009

Steal this idea: Phone scammer/spammer warnings

Hear my phone ringin',
sound like a long distance call
-- Muddy Waters, "Long Distance Call"
Why telemarketing is an opt-out rather than opt-in process is beyond me. Nevertheless, if you do get a call from a number you don't recognize, you may want to run it by whocalled.us. I recently got a call from a telemarketer (see my report here*) and had an idea for a program to run on the phones of the future. When I say phones of the future, I mean roughly tomorrow since this idea is so simple it should be very easily doable on an iPhone, Android phone, or something else easily programmable. At least, I would hope this is easy to write (I haven't ever used these phones' APIs).

The idea is this: When I get a call from an unknown number, my phone should look it up on whocalled.us. Possibly there would be a reputation system and it could automatically report good calls to the site (though there are some potential privacy issues here which would need to be addressed) and give you the option to mark a previous call as a scam. Integration with donotcall.gov would be nice too.

* Incidentally, this phone number appears to be running multiple scams. The number is used to connect people with various scams so that the companies actually doing the scams are harder to trace. That's why the representative on the other line said that I had called her.

Sunday, May 10, 2009

Technical: Getting Skype working with Bluetooth on Ubuntu with AMD64

If you want to use Skype with Bluetooth headsets on recent versions of Ubuntu Jaunty with an AMD64 architecture, this article might be of interest. If those words didn't make any sense, this article is definitely skippable.

When using Skype with a Bluetooth headset, I was getting error messages of the following form:

ALSA lib ../../../src/pcm/pcm.c:2165:(snd_pcm_open_conf) Cannot open shared library /usr/lib32/alsa-lib/libasound_module_pcm_bluetooth.so

Since Skype only exists in 32-bit mode currently, you can only run it in AMD64 using the linux32 command. However, this requires 32-bit versions of all the libraries that Skype would need, including bluez-alsa if you want to use a Bluetooth headset. Ubuntu currently attempts to handle this with their ia32-libs package but the current version of this package is missing its bluez-alsa libraries (as indicated in the error message). This is the bug that has been reported here.

I have a horrible hack to fix this problem, mostly because I can't find where ia32-libs development takes place nor the Ubuntu development process. I downloaded the 32-bit version of bluez-alsa and used alien -t to convert it into a tar.gz file. I then extracted its contents and made an extremely simple Makefile with this content:

install:
cp ./usr/lib/alsa-lib/libasound_module_ctl_bluetooth.so /usr/lib32/alsa-lib/
cp ./usr/lib/alsa-lib/libasound_module_pcm_bluetooth.so /usr/lib32/alsa-lib/

Next, I created a Debian package with checkinstall which you can find here. To my knowledge, these files are missing in Ubuntu Karmic too, so this might help those users as well.

Takeaway message: If you want to try my hack, download my new package (which I admitedly haven't been able to test on any other machines, so any feedback is welcome) and use your favorite package installer (the graphical one is probably the easiest) to install it.