Introduction to PJSUA2 ****************************** :doc:`PJSUA2 API ` is a C++ library on top of :doc:`PJSUA-LIB API ` to provide high level API for constructing Session Initiation Protocol (SIP) multimedia **user agent** applications (a.k.a Voice over IP/VoIP softphones). PJSUA2 wraps together the signaling, media, and NAT traversal functionality into easy to use call control API, account management, buddy list management, presence, and instant messaging, along with multimedia features such as local audio and video conferencing, file streaming, local playback, and voice recording, and powerful NAT traversal techniques utilizing STUN, TURN, ICE, and uPnP. PJSUA2 provides SWIG interface for generating modules for high level languages such as Java, Python, and C#. In the next sections we will learn how to build and use PJSUA2 in these languages.