mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
chan_sip.c Fix pickup on channel that are in AST_STATE_DOWN
resolve issue with pickup on device that uses "183" and not "180" ASTERISK-29832 Change-Id: I4c7d223870f8ce9a7354e0f73d4e4cb2e8b58841
This commit is contained in:
committed by
Joshua Colp
parent
bfc4d63d15
commit
e505337065
@@ -26607,7 +26607,14 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, str
|
||||
if (!error && ast_strlen_zero(pickup.exten) &&
|
||||
ast_channel_state(replaces_chan) != AST_STATE_RINGING &&
|
||||
ast_channel_state(replaces_chan) != AST_STATE_RING &&
|
||||
ast_channel_state(replaces_chan) != AST_STATE_UP) {
|
||||
ast_channel_state(replaces_chan) != AST_STATE_UP &&
|
||||
/*
|
||||
* Check the down state as well because some SIP devices do not
|
||||
* give 180 ringing when they can just give 183 session progress
|
||||
* instead. same fix the one in ast_can_pickup
|
||||
* git show 0a8f9d2cf08
|
||||
*/
|
||||
ast_channel_state(replaces_chan) != AST_STATE_DOWN) {
|
||||
ast_log(LOG_NOTICE, "Supervised transfer attempted to replace non-ringing or active call id (%s)!\n", replace_id);
|
||||
transmit_response_reliable(p, "603 Declined (Replaces)", req);
|
||||
error = 1;
|
||||
|
3
doc/CHANGES-staging/chan_sip_pickup_AST_STATE_DOWN.txt
Normal file
3
doc/CHANGES-staging/chan_sip_pickup_AST_STATE_DOWN.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
Subject: chan_sip.c
|
||||
|
||||
resolve issue with pickup on device that uses "183" and not "180"
|
Reference in New Issue
Block a user