mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 02:37:10 +00:00 
			
		
		
		
	Merged revisions 53749 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r53749 | file | 2007-02-09 14:33:31 -0500 (Fri, 09 Feb 2007) | 2 lines Temporarily change musicclass on channel to one specified in Dial so that the 'm' option functions properly. (issue #8969 reported by christianbee) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@53750 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
		| @@ -937,8 +937,11 @@ static int do_privacy(struct ast_channel *chan, struct ast_channel *peer, | ||||
| 	   time and make the caller believe the peer hasn't picked up yet */ | ||||
|  | ||||
| 	if (ast_test_flag(opts, OPT_MUSICBACK) && !ast_strlen_zero(opt_args[OPT_ARG_MUSICBACK])) { | ||||
| 		char *original_moh = ast_strdupa(chan->musicclass); | ||||
| 		ast_indicate(chan, -1); | ||||
| 		ast_string_field_set(chan, musicclass, opt_args[OPT_ARG_MUSICBACK]); | ||||
| 		ast_moh_start(chan, opt_args[OPT_ARG_MUSICBACK], NULL); | ||||
| 		ast_string_field_set(chan, musicclass, original_moh); | ||||
| 	} else if (ast_test_flag(opts, OPT_RINGBACK)) { | ||||
| 		ast_indicate(chan, AST_CONTROL_RINGING); | ||||
| 		pa->sentringing++; | ||||
| @@ -1443,7 +1446,14 @@ static int dial_exec_full(struct ast_channel *chan, void *data, struct ast_flags | ||||
| 		strcpy(pa.status, "NOANSWER"); | ||||
| 		if (ast_test_flag(outgoing, OPT_MUSICBACK)) { | ||||
| 			moh = 1; | ||||
| 			ast_moh_start(chan, opt_args[OPT_ARG_MUSICBACK], NULL); | ||||
| 			if (!ast_strlen_zero(opt_args[OPT_ARG_MUSICBACK])) { | ||||
| 				char *original_moh = ast_strdupa(chan->musicclass); | ||||
| 				ast_string_field_set(chan, musicclass, opt_args[OPT_ARG_MUSICBACK]); | ||||
| 				ast_moh_start(chan, opt_args[OPT_ARG_MUSICBACK], NULL); | ||||
| 				ast_string_field_set(chan, musicclass, original_moh); | ||||
| 			} else { | ||||
| 				ast_moh_start(chan, NULL, NULL); | ||||
| 			} | ||||
| 			ast_indicate(chan, AST_CONTROL_PROGRESS); | ||||
| 		} else if (ast_test_flag(outgoing, OPT_RINGBACK)) { | ||||
| 			ast_indicate(chan, AST_CONTROL_RINGING); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user