summaryrefslogtreecommitdiff
path: root/pjsip/include/pjsua-lib/pjsua.h
diff options
context:
space:
mode:
Diffstat (limited to 'pjsip/include/pjsua-lib/pjsua.h')
-rw-r--r--pjsip/include/pjsua-lib/pjsua.h48
1 files changed, 39 insertions, 9 deletions
diff --git a/pjsip/include/pjsua-lib/pjsua.h b/pjsip/include/pjsua-lib/pjsua.h
index b74a209e..0ab24942 100644
--- a/pjsip/include/pjsua-lib/pjsua.h
+++ b/pjsip/include/pjsua-lib/pjsua.h
@@ -886,6 +886,36 @@ typedef struct pjsua_callback
} pjsua_callback;
+/**
+ * This enumeration specifies the usage of SIP Session Timers extension.
+ */
+typedef enum pjsua_sip_timer_use
+{
+ /**
+ * When this flag is specified, Session Timers will not be used in any
+ * session, except it is explicitly required in the remote request.
+ */
+ PJSUA_SIP_TIMER_INACTIVE,
+
+ /**
+ * When this flag is specified, Session Timers will be used in all
+ * sessions whenever remote supports and uses it.
+ */
+ PJSUA_SIP_TIMER_OPTIONAL,
+
+ /**
+ * When this flag is specified, Session Timers support will be
+ * a requirement for the remote to be able to establish a session.
+ */
+ PJSUA_SIP_TIMER_REQUIRED,
+
+ /**
+ * When this flag is specified, Session Timers will always be used
+ * in all sessions, regardless whether remote supports/uses it or not.
+ */
+ PJSUA_SIP_TIMER_ALWAYS
+
+} pjsua_sip_timer_use;
/**
@@ -1033,13 +1063,13 @@ typedef struct pjsua_config
pj_bool_t require_100rel;
/**
- * Specify whether support for Session Timers should be required by
- * default. Note that this setting can be further customized in account
- * configuration (#pjsua_acc_config).
+ * Specify the usage of Session Timers for all sessions. See the
+ * #pjsua_sip_timer_use for possible values. Note that this setting can be
+ * further customized in account configuration (#pjsua_acc_config).
*
- * Default: PJ_FALSE
+ * Default: PJSUA_SIP_TIMER_OPTIONAL
*/
- pj_bool_t require_timer;
+ pjsua_sip_timer_use use_timer;
/**
* Handle unsolicited NOTIFY requests containing message waiting
@@ -2098,12 +2128,12 @@ typedef struct pjsua_acc_config
pj_bool_t require_100rel;
/**
- * Specify whether support for Session Timers should be required for all
- * sessions of this account.
+ * Specify the usage of Session Timers for all sessions. See the
+ * #pjsua_sip_timer_use for possible values.
*
- * Default: PJ_FALSE
+ * Default: PJSUA_SIP_TIMER_OPTIONAL
*/
- pj_bool_t require_timer;
+ pjsua_sip_timer_use use_timer;
/**
* Specify Session Timer settings, see #pjsip_timer_setting.