mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-02 19:16:15 +00:00
chan_sip deprecation.
This officially deprecates chan_sip in Asterisk 17+. A warning is printed upon startup or module load to tell users that they should consider migrating. chan_sip is still built by default but the default modules.conf skips loading it at startup. Very important to note we are not scheduling a time where chan_sip will be removed. The goal of this change is to accurately inform end users of the current state of chan_sip and encourage movement to the fully supported chan_pjsip. Change-Id: Icebd8848f63feab94ef882d36b2e99d73155af93
This commit is contained in:
11
CHANGES
11
CHANGES
@@ -8,6 +8,17 @@
|
||||
===
|
||||
==============================================================================
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
--- Functionality changes from Asterisk 16 to Asterisk 17 --------------------
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
chan_sip
|
||||
------------------
|
||||
* The chan_sip module is now deprecated, users should migrate to the
|
||||
replacement module chan_pjsip. See guides at the Asterisk Wiki:
|
||||
https://wiki.asterisk.org/wiki/x/tAHOAQ
|
||||
https://wiki.asterisk.org/wiki/x/hYCLAQ
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
--- Functionality changes from Asterisk 16.0.0 to Asterisk 16.1.0 ------------
|
||||
------------------------------------------------------------------------------
|
||||
|
@@ -27,6 +27,12 @@
|
||||
|
||||
New in 17.0.0:
|
||||
|
||||
chan_sip:
|
||||
- The chan_sip module is now deprecated, users should migrate to the
|
||||
replacement module chan_pjsip. See guides at the Asterisk Wiki:
|
||||
https://wiki.asterisk.org/wiki/x/tAHOAQ
|
||||
https://wiki.asterisk.org/wiki/x/hYCLAQ
|
||||
|
||||
func_callerid:
|
||||
- The CALLERPRES() dialplan function, deprecated in Asterisk 1.8, has been
|
||||
removed.
|
||||
|
@@ -176,7 +176,7 @@
|
||||
/*** MODULEINFO
|
||||
<use type="module">res_crypto</use>
|
||||
<use type="module">res_http_websocket</use>
|
||||
<support_level>extended</support_level>
|
||||
<support_level>deprecated</support_level>
|
||||
***/
|
||||
|
||||
/*! \page sip_session_timers SIP Session Timers in Asterisk Chan_sip
|
||||
@@ -35321,6 +35321,37 @@ static const struct ast_sip_api_tech chan_sip_api_provider = {
|
||||
.sipinfo_send = sipinfo_send,
|
||||
};
|
||||
|
||||
static void deprecation_notice(void)
|
||||
{
|
||||
ast_log(LOG_WARNING, "chan_sip has no official maintainer and is deprecated. Migration to\n");
|
||||
ast_log(LOG_WARNING, "chan_pjsip is recommended. See guides at the Asterisk Wiki:\n");
|
||||
ast_log(LOG_WARNING, "https://wiki.asterisk.org/wiki/x/tAHOAQ\n");
|
||||
ast_log(LOG_WARNING, "https://wiki.asterisk.org/wiki/x/hYCLAQ\n");
|
||||
}
|
||||
|
||||
/*! \brief Event callback which indicates we're fully booted */
|
||||
static void startup_event_cb(void *data, struct stasis_subscription *sub, struct stasis_message *message)
|
||||
{
|
||||
struct ast_json_payload *payload;
|
||||
const char *type;
|
||||
|
||||
if (stasis_message_type(message) != ast_manager_get_generic_type()) {
|
||||
return;
|
||||
}
|
||||
|
||||
payload = stasis_message_data(message);
|
||||
type = ast_json_string_get(ast_json_object_get(payload->json, "type"));
|
||||
|
||||
if (strcmp(type, "FullyBooted")) {
|
||||
return;
|
||||
}
|
||||
|
||||
deprecation_notice();
|
||||
|
||||
stasis_unsubscribe(sub);
|
||||
}
|
||||
|
||||
|
||||
static int unload_module(void);
|
||||
|
||||
/*!
|
||||
@@ -35534,6 +35565,12 @@ static int load_module(void)
|
||||
ast_websocket_add_protocol("sip", sip_websocket_callback);
|
||||
}
|
||||
|
||||
if (ast_fully_booted) {
|
||||
deprecation_notice();
|
||||
} else {
|
||||
stasis_subscribe_pool(ast_manager_get_topic(), startup_event_cb, NULL);
|
||||
}
|
||||
|
||||
return AST_MODULE_LOAD_SUCCESS;
|
||||
}
|
||||
|
||||
@@ -35751,7 +35788,7 @@ static int unload_module(void)
|
||||
}
|
||||
|
||||
AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_LOAD_ORDER, "Session Initiation Protocol (SIP)",
|
||||
.support_level = AST_MODULE_SUPPORT_CORE,
|
||||
.support_level = AST_MODULE_SUPPORT_DEPRECATED,
|
||||
.load = load_module,
|
||||
.unload = unload_module,
|
||||
.reload = reload,
|
||||
|
@@ -20,7 +20,7 @@
|
||||
*/
|
||||
|
||||
/*** MODULEINFO
|
||||
<support_level>extended</support_level>
|
||||
<support_level>deprecated</support_level>
|
||||
***/
|
||||
|
||||
#include "asterisk.h"
|
||||
|
@@ -20,7 +20,7 @@
|
||||
*/
|
||||
|
||||
/*** MODULEINFO
|
||||
<support_level>extended</support_level>
|
||||
<support_level>deprecated</support_level>
|
||||
***/
|
||||
|
||||
/*** DOCUMENTATION
|
||||
|
@@ -20,7 +20,7 @@
|
||||
*/
|
||||
|
||||
/*** MODULEINFO
|
||||
<support_level>extended</support_level>
|
||||
<support_level>deprecated</support_level>
|
||||
***/
|
||||
|
||||
#include "asterisk.h"
|
||||
|
@@ -20,7 +20,7 @@
|
||||
*/
|
||||
|
||||
/*** MODULEINFO
|
||||
<support_level>extended</support_level>
|
||||
<support_level>deprecated</support_level>
|
||||
***/
|
||||
|
||||
#include "asterisk.h"
|
||||
|
@@ -25,7 +25,7 @@
|
||||
*/
|
||||
|
||||
/*** MODULEINFO
|
||||
<support_level>extended</support_level>
|
||||
<support_level>deprecated</support_level>
|
||||
***/
|
||||
|
||||
#include "asterisk.h"
|
||||
|
@@ -22,7 +22,7 @@
|
||||
*/
|
||||
|
||||
/*** MODULEINFO
|
||||
<support_level>extended</support_level>
|
||||
<support_level>deprecated</support_level>
|
||||
***/
|
||||
|
||||
#include "asterisk.h"
|
||||
|
@@ -41,4 +41,6 @@ noload => chan_console.so
|
||||
noload => res_hep.so
|
||||
noload => res_hep_pjsip.so
|
||||
noload => res_hep_rtcp.so
|
||||
;
|
||||
|
||||
; Do not load chan_sip by default, it may conflict with res_pjsip.
|
||||
noload => chan_sip.so
|
||||
|
Reference in New Issue
Block a user