summaryrefslogtreecommitdiff
path: root/include/asterisk/res_pjsip.h
diff options
context:
space:
mode:
authorGeorge Joseph <george.joseph@fairview5.com>2015-04-18 12:36:19 -0600
committerGeorge Joseph <george.joseph@fairview5.com>2015-04-19 20:07:45 -0500
commit298faf7c500175307f2707897997024859c6f514 (patch)
tree015e3911e8a12c28341b8f801b489e9e610f6c12 /include/asterisk/res_pjsip.h
parent8435a0cdff848f77ff55e709a393ea96635e5b19 (diff)
pjsip_options: Fix non-qualified contacts showing as unavailable
The "Add qualify_timeout processing and eventing" patch introduced an issue where contacts that had qualify_frequency set to 0 were showing Unavailable instead Unknown. This patch checks for qualify_frequency=0 and create an "Unknown" contact_status with an RTT = 0. Previously, the lack of contact_status implied Unknown but since we're now changing endpoint state based on contact_status, I've had to add new UNKNOWN status so that changes could trigger the appropriate contact_status observers. ASTERISK-24977: #close Change-Id: Ifcbc01533ce57f0e4e584b89a395326e098b8fe7
Diffstat (limited to 'include/asterisk/res_pjsip.h')
-rw-r--r--include/asterisk/res_pjsip.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/include/asterisk/res_pjsip.h b/include/asterisk/res_pjsip.h
index 99b65ab08..12fc400d2 100644
--- a/include/asterisk/res_pjsip.h
+++ b/include/asterisk/res_pjsip.h
@@ -177,7 +177,8 @@ struct ast_sip_contact {
*/
enum ast_sip_contact_status_type {
UNAVAILABLE,
- AVAILABLE
+ AVAILABLE,
+ UNKNOWN
};
/*!
@@ -2002,5 +2003,13 @@ unsigned int ast_sip_get_keep_alive_interval(void);
*/
unsigned int ast_sip_get_max_initial_qualify_time(void);
+/*!
+ * \brief translate ast_sip_contact_status_type to character string.
+ *
+ * \retval the character string equivalent.
+ */
+
+const char *ast_sip_get_contact_status_label(const enum ast_sip_contact_status_type status);
+const char *ast_sip_get_contact_short_status_label(const enum ast_sip_contact_status_type status);
#endif /* _RES_PJSIP_H */