mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 02:37:10 +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
					
						 Friendly Automation
						Friendly Automation
					
				
			
			
				
	
			
			
			
						parent
						
							8bc6511c0c
						
					
				
				
					commit
					25edc8ba47
				
			| @@ -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; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user