diff options
Diffstat (limited to 'pjsip/include/pjsua-lib')
-rw-r--r-- | pjsip/include/pjsua-lib/pjsua.h | 17 | ||||
-rw-r--r-- | pjsip/include/pjsua-lib/pjsua_internal.h | 4 |
2 files changed, 17 insertions, 4 deletions
diff --git a/pjsip/include/pjsua-lib/pjsua.h b/pjsip/include/pjsua-lib/pjsua.h index a964815f..553f3dad 100644 --- a/pjsip/include/pjsua-lib/pjsua.h +++ b/pjsip/include/pjsua-lib/pjsua.h @@ -4084,7 +4084,8 @@ PJ_DECL(pj_status_t) pjsua_call_get_rem_nat_type(pjsua_call_id call_id, /** * Send response to incoming INVITE request. Depending on the status * code specified as parameter, this function may send provisional - * response, establish the call, or terminate the call. + * response, establish the call, or terminate the call. See also + * #pjsua_call_answer2(). * * @param call_id Incoming call identification. * @param code Status code, (100-699). @@ -4102,9 +4103,17 @@ PJ_DECL(pj_status_t) pjsua_call_answer(pjsua_call_id call_id, /** - * Send response to incoming INVITE request. Depending on the status - * code specified as parameter, this function may send provisional - * response, establish the call, or terminate the call. + * Send response to incoming INVITE request with call setting param. + * Depending on the status code specified as parameter, this function may + * send provisional response, establish the call, or terminate the call. + * Notes about call setting: + * - if call setting is changed in the subsequent call to this function, + * only the first call setting supplied will applied. So normally + * application will not supply call setting before getting confirmation + * from the user. + * - if no call setting is supplied when SDP has to be sent, i.e: answer + * with status code 183 or 2xx, the default call setting will be used, + * check #pjsua_call_setting for its default values. * * @param call_id Incoming call identification. * @param opt Optional call setting. diff --git a/pjsip/include/pjsua-lib/pjsua_internal.h b/pjsip/include/pjsua-lib/pjsua_internal.h index 326f916d..80ebec01 100644 --- a/pjsip/include/pjsua-lib/pjsua_internal.h +++ b/pjsip/include/pjsua-lib/pjsua_internal.h @@ -108,6 +108,7 @@ typedef struct call_answer pjsua_msg_data *msg_data; /**< Answer's headers list. */ pj_str_t *reason; /**< Answer's reason phrase. */ unsigned code; /**< Answer's status code. */ + pjsua_call_setting *opt; /**< Answer's call setting. */ } call_answer; @@ -120,6 +121,8 @@ struct pjsua_call { unsigned index; /**< Index in pjsua array. */ pjsua_call_setting opt; /**< Call setting. */ + pj_bool_t opt_inited;/**< Initial call setting has been set, + to avoid different opt in answer. */ pjsip_inv_session *inv; /**< The invite session. */ void *user_data; /**< User/application data. */ pjsip_status_code last_code; /**< Last status code seen. */ @@ -170,6 +173,7 @@ struct pjsua_call } out_call; struct { call_answer answers;/**< A list of call answers. */ + pjsip_dialog *replaced_dlg; /**< Replaced dialog. */ } inc_call; } call_var; } async_call; /**< Temporary storage for async |