Johnny Talker
VoIP the easy way


Already available

Those things are already available and ready to use:


Things planned to implement in the nearest future:

If you have more ideas please share it with us using mailing list.


Even though I started to develop this project in may 2005 and spent long hours since, first public release (20051031) is really development release and is aimed at people who want to use it in the future. I would like to hear opinions of others in order to better match project with its expectations.
This also allows to complete whole VoIP application together with stable Johnny's version.



Currently developer who wants to write VoIP application (or add only ability to call to his software) needs to have wide knowledge. Following issues are required (at least):

Developer needs to concentrate on low level aspects which unnecessarily take his time.
My idea was to create "black box" which takes care about all those things and offers comfortable, good designed and documented interface.

The tool has a dual form.
Johnny Talker is a core in form of daemon, which works in background and makes all hard labor related to VoIP. It runs independently of the final application. There is only one version for every client program.
Johnny Client is a client library which makes control and communication with server comfortable and transparent. It should be static or dynamic compiled with final application.

VoIP network structure

Johnny Talker

It's full featured VoIP application which allows to make, receive, reject calls, etc. It's running all the time and it's independent from target client software.

Johnny Client

Wraps connection with daemon. Communication (via BSD sockets) with server for developer is transparent. It looks like using builtin library, but has many more advantages. It doesn't really matter which client is used (GTK+, Qt, MFC, ncurses or console commands). Everyone can choose what he/she likes!


Johnny Talker was created to deliver tool for fast and simple creation of VoIP-based applications. Its goal is to allow everyone with basic programming knowledge to write his/her own VoIP program in really short time.
I was discontented with lack of voice comunication in my favorite Jabber client - Psi. At the begining I wanted to add that functionality to Psi, but after some reflections I decited to try to do something bigger.

In my intention, Johnny can be used in many new VoIP applications, but also (or maybe especially) in already extisting programs of various soft. IM clients are perfect candidates, but it could be also mail readers or even calculators ;-) .
Various programs (using Jahnny Talker) could talk each other transparently for user (something like different Jabber cliens).


Johnny Talker - server

Johnny Talker - VoIP core is available under the terms of GNU General Public License version 2 or (at your opinion) any later version. You can read whole license in text format.

Johnny Client - client library

Johnny Client - client library is available under the terms of GNU Lesser General Public License version 2.1 or (at your opinion) any later version. You can read whole license in text format.


Disclaimer: I'm not a lawyer and text below isn't legally state the distribution terms for that software, but hopefully it helps understand GPL/LGPL.

Johnny Talker (server) is a separate program that allow to use it with every kind of applications. Even if your program is close source there is no adversities to communicate with it.
You have to remember that if you modify server for your use, you are obligated to release it under the terms of GNU General Public License. In that case you could tell about it on the mailing list to help in software developent.

Johnny Client (library) can be used with both open and proprietary software. However if you don't release a source code of your application, you are obligated to link dynamically (to allow user to easy change library version). But if it's hard to realize in your situation, you can ask for permission to link statically anyway. Usually it's consider favorably.
If you modify Johnny Client, you are obligated to remain GNU Lesser General Public License.