Back to Silas S. Brown's home page

Script-driven contact management etc in Skype

Old notes: I have not tested this with more recent versions of Skype, and I don't very much use Skype now anyway (although I understand modern versions' advertisement-ridden "Home Screen" can be disabled by redirecting apps.skype.com in /etc/hosts).

Rename and/or block MSN contacts in Skype 6

In early 2013 Microsoft announced they are merging their legacy MSN (also called WLM) instant messaging service into Skype. Problems that emerged in Skype 6 include:
  1. Skype did not display any aliases (new name settings) that you had given your MSN contacts, since MSN aliases are stored in the client not the server.
  2. If you take the trouble to manually reinstate your aliases, Skype might later decide to revert them all for an unknown reason.
  3. Skype 6 is also prone to disregarding any blocks you might have placed on MSN contacts (for example, contacts that have been taken over by underhanded advertising agencies that tricked them into giving up their passwords), and attempts to remove a contact might not persist across Skype restarts.

Here is a Python 2 script to rename and/or block MSN contacts in Skype 6 by directly accessing Skype's MySQL3 database; aliases and blocks can be obtained from the XML files of Adium (or another libpurple-based client such as Pidgin), or they can be typed directly into the script. The script can be re-run whenever Skype randomly reverts your changes. It was tested in Skype 6.1 and 6.2 running on Mac OS 10.7; other systems may vary. Make sure to completely quit Skype and back up your data before running this script---usual disclaimers apply (I am not legally responsible for anything that this does to your computer)---we are accessing an undocumented database which means anything can happen. But it worked for me and I hope it will be useful for some others.

To-do: work out if it's possible to do the same job via the official Skype API (but there might be licensing issues).

"Buddy pounce" in Skype

If for some reason you need to be alerted when a particular contact changes status (yes there are legitimate uses for this, for example if the other party is a computer novice who doesn't know how to make outgoing calls and wants you to call them when they come online), the monitoring can be done with the aid of Clisk (Doug Lee's Command-Line Interface for Skype) and this pounce.py Python 2 script; it should work on Mac, GNU/Linux, and Windows (via Cygwin). See the text at the start of the script for details.

Simple Skype call recorder

Clisk can also be used for simple call recording. This record-skype.py Python script lets you record a short section of the other party's speech (perhaps for language learning) and then play it back to them so they can check. As above, it should work on Mac, GNU/Linux, and Windows (via Cygwin).
All material © Silas S. Brown unless otherwise stated.