PyGCID is a graphical CallerID application written in Python with the GTK toolkit. It uses an external program to fetch numbers from your CID hardware. It maintains a small database with the incoming calls, and has the ability to store a comment and a note on each call. It can also dial the numbers using an external program, and run a specific program for each number (for example, you can play different sounds for different numbers).
VoiceXML::Client is a library that provides Perl programs with the ability to act as a user agent that fetches Voice Extensible Markup Language (VoiceXML) documents, parses them, and then executes the instructions therein by playing prompts and collecting user DTMF input/voice recordings through a handle to some type of telephone or other device interface. VoiceXML::Client's focus is on the client side. The XML documents are generated by a distinct process of your choice, unrelated to the library.
WebCID is a caller ID application for analog phone services. It consists of a daemon that listens for caller ID from a modem and a Web interface for viewing caller ID logs, which are stored in a MySQL database. It is useful for retrieving caller ID information when away from home.