Changes between Initial Version and Version 1 of Py_PJSUA


Ignore:
Timestamp:
Jul 15, 2008 9:05:44 AM (16 years ago)
Author:
bennylp
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Py_PJSUA

    v1 v1  
     1 
     2 '''Note:''' :: 
     3   '''This Python module has been deprecated. Please use the [wiki:Python_SIP_Tutorial newer tutorial] instead''' 
     4 
     5= Getting Started = 
     6 
     7The Python language binding for PJSUA-API is available in PJSIP release 0.5.10 or later. 
     8 
     9 
     10== What is it? == 
     11 
     12'''[/repos/browser/pjproject/trunk/pjsip-apps/src/py_pjsua py_pjsua]''' is a Python module implemented in C language to provide '''[http://www.pjsip.org/pjsip/docs/html/group__PJSUA__LIB.htm PJSUA-API]''' for [http://www.python.org Python] applications. Using '''[/repos/browser/pjproject/trunk/pjsip-apps/src/py_pjsua py_pjsua]''' enables Python application to exploit the features of PJSIP, for example: 
     13 * multiple SIP accounts 
     14 * SIP for presence (SIMPLE) and instant messaging 
     15 * multiple/unlimited calls 
     16 * call hold and transfer (attended or unattended) 
     17 * DTMF support 
     18 * conferencing with multiple/unlimited sources 
     19 * wideband and ultra-wideband audio support 
     20 * WAV files playback, playlist, and recording 
     21 * adaptive jitter buffer, silence detection, packet lost concealment, etc. 
     22 * tone generation 
     23 * multiple sound devices (planned) 
     24 * ICE support (planned) 
     25 * and so on. 
     26 
     27== Status == 
     28 
     29The '''py_pjsua''' module has just been released on 0.5.10 version and therefore it's expected to contain few bugs, so it's still in alpha/beta stage. 
     30 
     31Also since the Python abstraction is created manually (rather than using automated Python abstraction generation tools), it is expected that there will be time lag between introduction of new API in PJSUA-API (the C API) and the implementation in the Python module. 
     32 
     33 
     34== Building py_pjsua Module == 
     35 
     36Using Microsoft Visual Studio projects: 
     37 * Open '''pjsip-apps.dsw''' from {{{pjsip-apps\build}}} directory. 
     38 * Select '''py_pjsua''' project. 
     39 * Build the project 
     40 * The Python module will be placed in {{{pjsip-apps\lib}}} directory. 
     41 
     42Using Python build script: 
     43 * Go to {{{pjsip-apps/src/py_pjsua}}} directory. 
     44 * Run '''{{{'python ./setup.py build'}}}''' 
     45 * The Python module will be placed in {{{build}}} directory inside current directory. 
     46 * Alternatively run '''{{{'python ./setup.py install'}}}''' to install the '''py_pjsua''' module to Python's site_packages directory. 
     47 
     48 
     49= Developing Python SIP Application = 
     50 
     51== Introduction == 
     52 
     53The Python API is pretty much the same like PJSUA-API - each Python function corresponds to one function in PJSUA-API, therefore one can use [http://www.pjsip.org/pjsip/docs/html/group__PJSUA__LIB.htm PJSUA-API Documentation] or [wiki:PJSIP_Tutorial PJSUA Tutorial] to learn about the Python API. 
     54 
     55To highlight the similarities between PJSUA-API and the py_pjsua API, below are some sample names: 
     56 
     57{{{ 
     58         PJSUA-API:                       py_pjsua API: 
     59 
     60  #include <pjsua-lib/pjsua.h>  ==>   import py_pjsua 
     61 
     62  pjsua_create()                ==>   py_pjsua.create() 
     63  pjsua_init()                  ==>   py_pjsua.init() 
     64   
     65  pjsua_call_make_call()        ==>   py_pjsua.call_make_call() 
     66}}} 
     67 
     68 
     69 
     70 
     71== Sample Application == 
     72 
     73Please see [/repos/browser/pjproject/trunk/pjsip-apps/src/py_pjsua/pjsua_app.py pjsua_app.py] for a sample/simple Python application. 
     74 
     75 
     76== Documentation == 
     77 
     78The documentation for the Python module is integrated with '''[http://www.pjsip.org/pjsip/docs/html/group__PJSUA__LIB.htm PJSUA-API Documentation]'''. Please follow the step by step on how to use the API there, as well as specific instructions to use each PJSUA feature. 
     79