Commit Graph

219 Commits

Author SHA1 Message Date
Benny Prijono 9f468d176d Initial commit re #1263 (PJSUA-LIB Video API):
- API designed and reviewed (pjsua.h)
 - Implemented these APIs and added to pjsua sample application:
   - video device enums API
   - video capture preview API
 - refactoring in PJSUA-LIB:
   - video stuffs go to pjsua_vid.c
   - call dump goes to pjsua_dump.c

We're still missing:
 - video call API implementation
 - media info and statistic API implementation



git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3609 74dad513-b988-da41-8d7b-12977e46ad98
2011-07-07 07:46:33 +00:00
Nanang Izzuddin b6c239c6db Fix #1237, #1238, #1241:
- Fixed handling remote re-offer, where SDP media line may be added or removed.
 - Fixed bug in receiving remote offer (initial or subsequent), media channel create sdp must consider acc->cfg.max_audio_cnt setting.
 - Fixed bug media transport is not closed after call disconnected.
 - Fixed assertion in lock_codec after receiving initial answer but no acceptable media (in pjsua level, e.g: SRTP nego failed), now the call will be terminated.



git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3560 74dad513-b988-da41-8d7b-12977e46ad98
2011-05-10 05:42:28 +00:00
Nanang Izzuddin 56b2ce43d8 Re #1186:
- Added custom negotiation callback mechanism in SDP negotiator, mainly for specific formats that require SDP fmtp negotiation.
 - Modified video codec ID string to use encoding name+payload type (was encoding name+clock rate), also added encoding description in video codec info, so duplicated codecs (e.g: multiple H264 configurations) can be differentiated.
 - Few enhancements for H264 in ffmpeg wrapper (e.g: added proper profile-id & packetization-mode setup).




git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3500 74dad513-b988-da41-8d7b-12977e46ad98
2011-04-06 13:55:01 +00:00
Nanang Izzuddin 50fae73e7d Re #1201: Added pjsua API for video devices and codecs management.
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3471 74dad513-b988-da41-8d7b-12977e46ad98
2011-03-22 09:49:23 +00:00
Benny Prijono 9b61ff5873 Re #1201: replace union media stream in pjsua_call_media with struct, to avoid the conf_slot corrupting the video capturer value
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3465 74dad513-b988-da41-8d7b-12977e46ad98
2011-03-18 09:55:48 +00:00
Nanang Izzuddin bf26db1ec6 Re #1201:
- Initial version of video stream integration into pjsua-lib.
 - Replaced audio info array in pjsua_call_info with media info array.
 - Added video media info into call dump.
 - Fixed assertion caused by pjsua_set_state(NULL) logging after pjlib shutdown.



git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3463 74dad513-b988-da41-8d7b-12977e46ad98
2011-03-18 07:54:50 +00:00
Benny Prijono 0bc99a9ca3 Modifications in PJSUA-LIB to support multiple media streams (multiple audio and/or video) and dynamic creation of media transports. This closed #1185 and closed #1201.
1185: Dynamic creation of media transports
============================================
Done:
 - media transports are created on demand now

Todo:
 - media transport creation is still blocking


1201: Video support in PJSUA-LIB
===================================
Done:
 - call now supports N media (N audio and M video)
 - number of audio/video streams is configurable per acc
 - extra audio stream info in pjsua_call_info to support multiple audio streams
in one call
 - video subsys and ffmpeg initialization in PJSUA-LIB
 - ability to offer and create video SDP answer
 - "dq" for more than 1 audio streams
 - introducing pjsua_state and pjsua_get_state()

API change:
 - on_stream_created() and on_stream_destroyed() callbacks: changed session to
stream

Todo:
 - many others features are disabled, just search for DISABLED_FOR_TICKET_1185
macro (these have also been added to ticket #1193 (Issues & Todos)). Notable
missing features are:
      - creation of duplicate SDP m= lines for optional SRTP
      - mm.. that's it?
 - whole lot of testings

pjsua:
===============
 - Added --extra-audio and --video options. Specify these more than once and
each time an extra audio/video streams will be added. :)



git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3457 74dad513-b988-da41-8d7b-12977e46ad98
2011-03-17 04:34:43 +00:00
Nanang Izzuddin ec9190096e Fix #1163:
- Fixed lock codec to always be done after successful media update, and pend the lock codec until call state CONFIRMED if media update is done in call state EARLY but remote does not support UPDATE method.
 - Added additional checks in lock_codec() and perform_lock_codec(), e.g: skip locking codec when media deactivated.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3374 74dad513-b988-da41-8d7b-12977e46ad98
2010-11-25 09:27:06 +00:00
Benny Prijono b54719ff91 Implemented SIP outbound (closed #1020)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3366 74dad513-b988-da41-8d7b-12977e46ad98
2010-11-16 03:07:46 +00:00
Benny Prijono 1e60155980 Fixed #1149 (Crash when holding the call after receiving SDP answer with multiple codecs (thanks Cyril GY for the report)):
- avoid using pre-created SDP, but rather use timer and create SDP right when the UPDATE/re-INVITE is about to be sent, to avoid the use of stale pool
 - also fixed bug in the old code when the lock codec feature is not activated after the call is confirmed


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3349 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-20 05:31:08 +00:00
Benny Prijono 6349989e20 Closed #1144: New presence callback to report subscription state (thanks Johan Lantz for the suggestion):
- added on_buddy_evsub_state() callback
 - added sample implementation in pjsua_app.c


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3339 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-12 12:45:15 +00:00
Benny Prijono dd63b997df Closed #1142 (Account based configuration to specify if "c=0.0.0.0" method should be used when putting call on hold):
- use PJSUA_CALL_HOLD_TYPE_DEFAULT to specify default global call hold type
 - use pjsua_acc_config.call_hold_type to specify call hold type for the account
 - call hold type can also be set on per call basis by changing the call_hold_type in the call structure (requires inclusion of <pjsua-lib/pjsua_internal.h>

git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3330 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-01 02:03:42 +00:00
Nanang Izzuddin 60e8aa911d Close #1137: added field reg_hdr_list into pjsua_acc_config to specify custom headers for REGISTER requests of the account.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3326 74dad513-b988-da41-8d7b-12977e46ad98
2010-09-28 10:48:48 +00:00
Benny Prijono c754578e5d Closed #1139 (Support for tel: URI in PJSUA-LIB):
- added new PJSUA API: pjsua_verify_url() which can be used for tel: URI
 - modified and tested according to spec
 - added new PJSIP error code, PJSIP_ENOROUTESET, to indicate that route set is needed to send to tel: URI
 - added couple of unit tests (we can't cover the whole tel: URI scenario yet)


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3323 74dad513-b988-da41-8d7b-12977e46ad98
2010-09-28 07:43:18 +00:00
Nanang Izzuddin 4ea1bcc610 Close #1138:
- Added new pjsua registration status callback on_reg_state2(), it includes the whole info from the lower layer registration callback pjsip_regc_cb().



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3322 74dad513-b988-da41-8d7b-12977e46ad98
2010-09-28 04:57:01 +00:00
Nanang Izzuddin 5e39a2b9d0 Closed #1129:
- Added run-time configuration for activating/deactivating stream keep-alive (non-codec-VAD mechanism), also added this config to account settings.
 - Fixed bug wrong session info pointer "si" in pjsua_media_channel_update() when call audio index is not zero.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3313 74dad513-b988-da41-8d7b-12977e46ad98
2010-09-20 06:13:02 +00:00
Nanang Izzuddin 742ef4bd30 Re #1120:
- Added enum pjsua_sip_timer_use for session timer usage types, containing: inactive, optional, required, always
 - Replaced require_timer (boolean) with above enum in global and account config setting.
 - Updated pjsua app --use-timer option accordingly.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3305 74dad513-b988-da41-8d7b-12977e46ad98
2010-09-07 09:36:15 +00:00
Sauw Ming 844c1c96d1 Fixed #1117: Configurable PJSUA-LIB lock timeout
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3304 74dad513-b988-da41-8d7b-12977e46ad98
2010-09-07 05:12:02 +00:00
Sauw Ming 48f6dbfce2 Fixed #1118: Add last error code to PJSUA-LIB account info structure
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3303 74dad513-b988-da41-8d7b-12977e46ad98
2010-09-07 05:10:25 +00:00
Benny Prijono 1c1d734e05 Implemented core multipart support and support in the invite session (re #1070)
- incoming multipart message will be handled automatically
 - for testing, enable HAVE_MULTIPART_TEST in pjsua_app.c


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3243 74dad513-b988-da41-8d7b-12977e46ad98
2010-08-01 09:48:51 +00:00
Benny Prijono 07fe230e3d Fixed #1081: Implement ICE option tag (RFC 5678)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3222 74dad513-b988-da41-8d7b-12977e46ad98
2010-06-24 12:33:18 +00:00
Benny Prijono 29c8ca331c Fixed #1095 (New option to control the Route headers in REGISTER request). Details:
- added new account config setting: reg_use_proxy. This contains bitmask values to indicate whether outbound proxies and account proxies are to be added in the REGISTER request. Default value is to add both.
 - added new pjsua cmdline option to control this: --reg-use-proxy
 - miscellaneous minor fixes in other pjsua cmdline arguments


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3216 74dad513-b988-da41-8d7b-12977e46ad98
2010-06-22 06:02:13 +00:00
Benny Prijono c6d5fdcbaf Fixed #1086 (New option to update the Contact URI in a single REGISTER request): added contact_rewrite_method account config to control this. Default is to use the new mechanism, i.e. the single REGISTER method.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3213 74dad513-b988-da41-8d7b-12977e46ad98
2010-06-20 08:58:26 +00:00
Benny Prijono 4d6ff4d62c Fixed #1077: In ICE stream transport (ice_strans.c), automaticaly retry allocation once if TURN allocation fails. If this allocation retry also fails, notify the TURN user via on_ice_complete() callback. Details:
- added new PJ_ICE_STRANS_OP_KEEP_ALIVE operation
 - also added new on_ice_transport_error() pjsua callback to allow application to react to the failure.


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3212 74dad513-b988-da41-8d7b-12977e46ad98
2010-06-19 12:35:33 +00:00
Nanang Izzuddin 93bacd0bfe Fix #476:
- Added lock codec feature to make sure that only one codec is active, by updating media session using UPDATE (if remote supports it) or re-INVITE.
 - Added few SIPp test scenarios.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3206 74dad513-b988-da41-8d7b-12977e46ad98
2010-06-15 09:56:39 +00:00
Nanang Izzuddin 2a1b9ee832 Re #1089:
- Added a feature in dialog to store and retrieve remote capabilities dug from the remote messages.
 - Added few APIs in dialog to query and update remote capabilities, also added an API in pjsua_call to query whether a capability is supported by remote.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3196 74dad513-b988-da41-8d7b-12977e46ad98
2010-06-03 10:41:32 +00:00
Nanang Izzuddin d89cc3a4c9 Re #1069:
- Added new approach of SRTP optional mode in pjsua-lib by duplicating SDP media line for secured and unsecured version of media transport.
 - Integrated this feature into pjsua app, it is activated via --use-srtp=3 param.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3172 74dad513-b988-da41-8d7b-12977e46ad98
2010-05-13 05:22:51 +00:00
Nanang Izzuddin c3ea16a66a Ticket #1057: Implemented pjsua_modify_acc().
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3144 74dad513-b988-da41-8d7b-12977e46ad98
2010-04-20 14:36:38 +00:00
Nanang Izzuddin 36dd5b607e Ticket #1044:
- Added initial version of automatic re-registration after registration failure and automatic call disconnection after re-registration attempt fails.
 - Published auto re-registration setting to pjsua app.
 - Updated pjsip_regc_send() to retrieve the transport earlier (was only in tsx_callback()).
 - Fixed TCP and TLS transport to prevent transport deletion in transport disconnection callback.
 - Fixed wrong keep-alive settings used by TLS transport (was using TCP keep-alive settings).



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3128 74dad513-b988-da41-8d7b-12977e46ad98
2010-03-30 11:13:59 +00:00
Benny Prijono 2140732ff3 More #1032 (new SIP TCP/TLS transport callback):
- PJSUA-LIB transport callback, if installed, will call the previously registered callback, to allow multiple transport callbacks to be installed
 - there seem to be a bug with the use of "pjsip_tp_state_callback" everywhere (the "pjsip_tp_state_callback" type is pointer, but most variables of this type are declared to pointer too)



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3119 74dad513-b988-da41-8d7b-12977e46ad98
2010-03-10 13:33:25 +00:00
Nanang Izzuddin 5e69da528f More ticket #1032:
- Updated transport state notification callback to return void.
 - Updated transport state enum to only contain connected and disconnected, no more bitmask value.
 - Added direction field to SIP transport.
 - Removed remote hostname hash from transport key.
 - Updated cert info dump to return -1 when buffer is insufficient.
 - Added new error code PJSIP_TLS_ECERTVERIF.
 - Updated get_cert_name() in ssl_sock_symbian.c to use heap buffer instead of stack.
 - Minors, e.g: added prefix PJ in cipher types, docs.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3110 74dad513-b988-da41-8d7b-12977e46ad98
2010-02-25 11:58:19 +00:00
Benny Prijono cca2e436db Misc (#1026): fixed wrong documentation of pjsua_acc_config.allow_contact_rewrite
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3109 74dad513-b988-da41-8d7b-12977e46ad98
2010-02-25 09:33:18 +00:00
Nanang Izzuddin 2fb937eb02 Ticket #1032:
- Initial version of server domain name verification:
   - Updated SSL certificate info, especially identities info
   - Updated verification mechanism as in the specifications in ticket desc.
   - Added server domain name info in pjsip_tx_data.
   - Added alternative API for acquiring transport and creating transport of transport factory to include pjsip_tx_data param.
   - Server identity match criteria:
     - full host name match
     - wild card not accepted
     - if identity is URI, it must be SIP/SIPS URI
 - Initial version of transport state notifications:
   - Added new API to set transport state callback in PJSIP and PJSUA.
   - Defined states: connected/disconnected, accepted/rejected, verification errors.
 - Minors: 
   - Updated SSL socket test: dump verification result, test of requiring client cert, and few minors.
   - Updated test cert to include subjectAltName extensions.
   - Added SSL certificate dump function.
   - Updated max number of socket async operations in Symbian sample apps (RSocketServ::Connect()) to 32 (was default 8).




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3106 74dad513-b988-da41-8d7b-12977e46ad98
2010-02-24 05:43:34 +00:00
Benny Prijono 166d502e3a Ticket #995: Send un-PUBLISH when pjsua_acc_set_registration(FALSE) is called (thanks Johan Lantz for the suggestion)
- in this implementation, when pjsua_acc_set_registration(FALSE) is called, the un-REGISTER request will be sent immediately after un-PUBLISH, unlike the process during shutdown where the un-REGISTER request will be sent only after un-PUBLISH transaction is complete


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3096 74dad513-b988-da41-8d7b-12977e46ad98
2010-02-10 14:24:48 +00:00
Nanang Izzuddin 06839e722b Ticket #1028: Recommit r3074 with updated codec.h.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3078 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-27 11:48:31 +00:00
Benny Prijono 0ff300cbeb Undo r3074 for ticket #1028 as it is missing updated codec.h hence causing build errors (thanks Michael Bradley Jr for the report)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3075 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-26 18:54:28 +00:00
Nanang Izzuddin 721750538f Ticket #1028:
- Added new API pjmedia_codec_mgr_set_default_param() to set/update default codec parameter and implemented pjsua_codec_set_param() based on it.
 - Added mutex in codec manager to protect states manipulations.
 - Modified API pjmedia_codec_mgr_init() to add pool factory param.
 - Added new API pjmedia_codec_mgr_destroy().
 - Updated passthrough codec AMR to regard peer's mode-set setting.
 - Fixed VAS audio device to apply AMR encoding bitrate setting.
 - Fixed IPP codec codec_open() to update AMR bitrate info (for stream) when AMR encoding bitrate is not using the default, e.g: requested by peer via format param 'mode-set' in SDP.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3074 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-26 15:29:23 +00:00
Benny Prijono fe1bd34b90 More ticket #982 (MWI): support for Asterisk unsolicited MWI requests:
- undo r3019 which put unsolicited MWI support in pjsua app only
 - put the unsolicited MWI support in PJSUA-LIB instead
 - unsolicited MWI is by default enabled
 - on_mwi_info() callback will be called just as the solicited MWI version


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3021 74dad513-b988-da41-8d7b-12977e46ad98
2009-11-20 23:33:07 +00:00
Benny Prijono 4dd961b2fb Implement ticket #982: Support for SIP Message Summary/Message Waiting Indication (MWI, RFC 3842)
- PJSIP-SIMPLE:
    - implement MWI
 - PJSUA-LIB:
    - added "mwi_enabled" flag in account config
    - added "on_mwi_info" callback
 - pjsua app:
    - added "--mwi" option to enable MWI on account
    - added simple callback to log the NOTIFY message
 - other:
     - added SIPp scenario files to simulate UAS side
 - build:
     - added MWI support on VS6, VS2005, MMP, and Makefile


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2968 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-26 11:21:37 +00:00
Benny Prijono 4d79b0f7f1 Initial commit for ticket #950: QoS support:
- implementation:
     - PJLIB (sock_qos*.*)
 - added QoS support in:
     - SIP UDP transport, 
     - SIP TCP transport,
     - media UDP transport (done in pjsua-lib), 
     - pjnath ICE stream transport,
     - pjnath STUN socket,
     - pjnath TURN client
 - added QoS options in pjsua-lib:
     - QoS fields in pjsua_transport_config
 - added "--set-qos" parameter in pjsua

Notes:
 - QoS in TLS transport is not yet implemented, waiting for #957
 - build ok on VS6, VS2005 (multiple targets), Carbide, and Mingw
 - no run-time testing yet



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2966 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-25 09:02:07 +00:00
Benny Prijono 6ab0532a18 More #937 (presence):
- added protection to not resubscribe immediately if initial SUBSCRIBE is responded with 481 for some reason


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2960 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-21 03:03:06 +00:00
Benny Prijono 73bb72384f Initial commit for ticket #937: Revamping of presence management to make it more efficient
Presence enhancements:
 - finer grained buddy lock object, instead of using global PJSUA-LIB's mutex
 - individual resubscription timer for buddies and also add random delay interval so that resubscriptions don't happen simultaneously (may hog processing and bandwidth).
 - in general reduced the use of global PJSUA-LIB's mutex for more efficiency
 - added last termination code in buddy info
 - use the RPID note's text for buddy's offline status rather than the default "offline" status, if available
 - resubscribe automatically on several termination causes as explained in the ticket (still untested)

General enhancements:
 - added pjsua_schedule_timer() and pjsua_cancel_timer() APIs




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2956 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-20 13:56:26 +00:00
Benny Prijono f5d9f1f381 Ticket #881: send UPDATE or re-INVITE after ICE negotiation, if the default candidate has changed
- done
 - added pj_ice_strans_state (to be used for informational purposes for now)
 - added pjmedia ICE transport specific info, and display it in call dump output
 - misc fixes (changed pjmedia_transport_info.spec_info_cnt from int to unsigned)


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2945 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-14 13:13:18 +00:00
Benny Prijono 384dab4d61 Ticket #970: More gracefull PJSUA-LIB shutdown sequence. Enhancements:
- wait for unregistration to complete (or a preconfigured delay expires)
 - new account config field to set the maximum delay to wait for unregistration
 - rejects incoming requests (INVITE, SUBSCRIBE, and OPTIONS) when shutdown is in progress


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2943 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-14 01:58:04 +00:00
Benny Prijono 534a9ba6a0 Ticket #364: Upon unregistration, (un)REGISTER should be sent only after (un)PUBLISH has completed successfully
- wait for unpublication to complete or some delay expires, before sending unregistration
 - added unpublish_max_wait_time_msec field in account config to control how long to wait


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2942 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-13 14:01:59 +00:00
Benny Prijono fe50c9ecfe Ticket #411: Cannot update account presence's status while previous PUBLISH is in progress (thanks Olivier Beytrison for the report)
- enable request queueing. If PUBLISH is to be sent while another one is still in progress, queue the request and send it later when the ongoing request completes
 - this behavior is controlled by new pjsip_publishc_opt structure to control session's options
 - default behavior is to queue the request


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2940 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-12 07:44:14 +00:00
Benny Prijono 971a287a6e Misc (#915): removed unused fields (refresh_tm and hangup_tm) from pjsua_call
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2874 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-13 15:55:47 +00:00
Benny Prijono bb995fd284 Ticket #866: Allow application to specify more than one STUN servers for more robustness, and continue application startup if STUN resolution fails
PJSUA-LIB:
 - New fields in pjsua_config to specify more than one STUN servers (the stun_srv_cnt and stun_srv array)
 - The existing stun_host and stun_domain fields are deprecated, but backward compatibility is maintained. If stun_srv_cnt is zero, the library will import the entries from stun_host and stun_domain
 - The library will now resolve the STUN server entries one by one and test it before using it
 - New auxiliary API pjsua_resolve_stun_servers() to perform resolution and test against array of STUN servers

pjsua application:
 - The "stun-srv" command line options can now be specified more than once



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2864 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12 11:03:23 +00:00
Nanang Izzuddin 65add62e5e Ticket #833:
- Renamed pjsip_timer_default_setting() to pjsip_timer_setting_default().
 - Updated session timer settings in pjsua-lib as whole session timer setting struct (pyhton version remains using se & min_se).
 - Added output param SIP status code in pjsip_timer_process_resp() and pjsip_timer_process_req() to specify the corresponding SIP status code when function returning non-PJ_SUCCESS.
 - Fixed print header functions in sip_timer.c to have buffer check.
 - Added PJSIP_SESS_TIMER_DEF_SE setting to specify the default value of session timer interval.
 - Fixed role reference of the refresher, it is transaction role, not dialog role.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2859 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-11 16:26:20 +00:00
Nanang Izzuddin 59dffb1a5c Ticket #833:
- Initial version of Session Timers (RFC 4028).
 - Added new options in pjsua app to configure Session Timers settings.
 - Added python tests for Session Timers.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2858 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-11 12:42:38 +00:00