* Option to use SIP UPDATE for refreshing calls in IP change
* Updated docs
* Add AccountIpChangeConfig.reinvUseUpdate in PJSUA2
* Add logs for debugging and display menu 'I' for IP change in pjsua app (the IP change action was already there just hidden).
* Improve robustness of sample apps. Fixing crash in aviplay
* Changes in documentation
* Add first pjsua2 hello world sample (from PJSUA2 guide)
* Fix doxygen documentation for docs.pjsip.org v2
* Add make clean-doc target
* Replace Trac ticket URL with GitHub issues URL
* Remove pjsip-book because the correct one is in pjproject_docs
Warning: potential backward incompatibility issue, previously the replacing call can use any account (selected using pjsua_acc_find_for_incoming() and app may override via callback), now it is forced to use the same account.
* Use PJ_ASSERT_RETURN on pjsip_auth_create_digest
* Use PJ_ASSERT_RETURN on pjsua_init_tpselector()
* Fix incorrect check.
* Add return value to pjsip_auth_create_digest() and pjsip_auth_create_digestSHA256()
* Modification based on comments.
* Added pjsip_tsx_set_timers to change timers at runtime
Added new function pjsip_tsx_set_timers in sip_transaction.c
which allows to change session timers during runtime.
It also allows to change timer values independently,
currently all timers are set at various ratios from
t1 during init. This was required for server which could
change timeout configuration on runtime, but could be
usable in other projects.
* Add synchronization of timer values in pjsip_cfg().
Add synchronization of timer values to pjsip_cfg() and another
function to (re)synchronize timer values from pjsip_cfg(),
`pjsip_tsx_initialize_timer_values()`.
`pjsip_tsx_set_timers` now accepts zeroed arguments to mean
that it should not change that timer value.
Added the following APIs:
pjsip_multipart_find_part_by_header()
pjsip_multipart_find_part_by_header_str()
pjsip_multipart_find_part_by_cid_str()
pjsip_multipart_find_part_by_cid_uri()
* Fix issues in updating media dir to NONE in the middle of a call
* Update PJSUA2 CallSetting::mediaDir declaration for SWIG. Note: adding SWIG template for MediaDirVector as vector of pjmedia_dir enum causes some error: SWIG treats enum as int, so vector of pjmedia_dir will be wrapped as vector of int, as there is already IntVector, SWIG rejects duplicated vector of int.
- Add new APIs to update/refresh video conference bridge port: `pjmedia_vid_conf_update_port(), pjsua_vid_conf_update_port(), VideoMedia::update()`.
- Use the new API in PJSUA-LIB to update renderer & stream decoder in format changed event.
- Add fullscreen mode PJMEDIA_VID_DEV_FULLSCREEN_DESKTOP (no video mode change), which is mapped to SDL_WINDOW_FULLSCREEN_DESKTOP.
- Fix resizing while in full-screen.
- Update PJSUA, PJSUA2 & pjsua app, e.g: fullscreen setting was boolean (fullscreen enabled/disabled), now it is enum: disabled, fullscreen, or fullscreen desktop.
* Avoid deadlock when restarting SIP UDP transport due to holding pjsua
lock.
* Add callback to lock/unlock any lock held when waiting for the read spin loop finish.
* Use simpler approach by unlocking before restarting UDP transport.
* Add doc to pjsip_udp_transport_restart() and pjsip_udp_transport_restart2() of the possibility of deadlock.
- Improve trickling state management (fix no SIP INFO when initial INVITE responded immediately with 200, strayed SIP INFO after trickling is done, etc).
- Fix issues when rtcp-mux is enabled.
- Allow process incoming SIP INFO before receiving remote SDP.
- Use regular ICE on re-INVITE (with reinit media flag).
- Avoid calling pj_ice_strans_get_running_comp_cnt() for loop condition.
- Fix bug in pjnath-test: TURN server set wrong peer channel number.
- Added timer for end-of-candidate indication from remote & don't flag ice-mismatch if remote uses default address in trickle ICE
- Allow <note> element in <tuple> set in pjsip_pres_status.info[0].rpid.note without having RPID element in presence message body.
- Fix wrong parent node for finding note element in get_tuple_note().
- Update docs: fix typo, etc.
* send keep alive when stream is started.
* modification based on comments.
* Add documentation.
* Modification based on comments.
* Grouped configuration.
Also updated docs:
- on_send_ack(): explicitly mention that ACK request must be created using pjsip_inv_create_ack().
- pjsip_inv_create_ack(): SDP answer to be set using pjsip_inv_set_sdp_answer(), was pjsip_create_sdp_body().
Make several pool sizes settable via compile time macro settings. This can be used to deal with memory fragmentation issues in long running applications that encounter temporary high loads.
* pjsip: Add new status phrases
Taken from various (newer) SIP RFC's.
* psjip: Make status phrases match the RFC's
Replace homebrew phrases with the standard phrases from the SIP RFC's.
* pjsip: Add new status codes to pjsip_status_code enum
* Update symbols.i
* Fix indentation of symbols.i
Co-authored-by: sauwming <ming@teluu.com>