Libjingle | |
Libjingle is a set of components provided by Google to interoperate with Google | |
Talk's peer-to-peer and voice capabilities. This package will create several | |
static libraries you may link to your project as needed. | |
-talk - No source files in talk/, just these subdirectories | |
|-base - Contains basic low-level portable utility functions for | |
| things like threads and sockets | |
|-p2p - The P2P stack | |
|-base - Base p2p functionality | |
|-client - Hooks to tie it into XMPP | |
|-session - Signaling | |
|-phone - Signaling code specific to making phone calls | |
|-third_party - Components that aren't ours | |
|-mediastreamer - Media components for dealing with sound hardware and | |
| voice codecs | |
|-xmllite - XML parser | |
|-xmpp - XMPP engine | |
In addition, this package contains two examples in talk/examples which | |
illustrate the basic concepts of how the provided classes work. | |
The xmllite component of libjingle depends on expat. You can download expat | |
from http://expat.sourceforge.net/. | |
mediastreamer, the media components used by the example applications depend on | |
the oRTP and iLBC components from linphone, which can be found at | |
http://www.linphone.org. Linphone, in turn depends on GLib, which can be found | |
at http://www.gtk.org. This GLib dependency should be removed in future | |
releases. | |
Building Libjingle | |
Once the dependencies are installed, run ./configure. ./configure will return | |
an error if it failed to locate the proper dependencies. If ./configure | |
succeeds, run 'make' to build the components and examples. | |
When the build is complete, you can run the call example from | |
talk/examples/call and the pcp example from talk/examples/pcp. | |
Relay Server | |
Libjingle will also build a relay server that may be used to relay traffic | |
when a direct peer-to-peer connection could not be established. The relay | |
server will build in talk/p2p/base/relayserver and will listen on UDP | |
ports 5000 and 5001. See the Libjingle Developer Guide at | |
http://code.google.com/apis/talk/index.html for information about configuring | |
a client to use this relay server. | |
STUN Server | |
Lastly, Libjingle builds a STUN server which implements the STUN protocol for | |
Simple Traversal of UDP over NAT. The STUN server is built as | |
talk/p2p/base/stunserver and listens on UDP port 7000. See the Libjingle | |
Developer Guide at http://code.google.com/apis/talk/index.html for information | |
about configuring a client to use this STUN server. |