[asterisk-bugs] [JIRA] (ASTERISK-27485) asterisk crashes when doing playback of a SLIN file and chanspy with eagi

Dror Wald (JIRA) noreply at issues.asterisk.org
Sun Dec 17 05:08:07 CST 2017


Dror Wald created ASTERISK-27485:
------------------------------------

             Summary: asterisk crashes when doing playback of a SLIN file and chanspy with eagi 
                 Key: ASTERISK-27485
                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-27485
             Project: Asterisk
          Issue Type: Bug
      Security Level: None
    Affects Versions: 14.5.0
         Environment: Debian GNU/Linux 8 (jessie)
            Reporter: Dror Wald


I have a function playback_time_tts() which I use to play a sound file and during file playing I detect a stop word. 
When I call this function with a SLIN wav file asterisk crashes. 
When I convert the wav file to GSM it works.

cotext main {
  _X. => {
Set(file_to_play1=${RAND(10000,999999)});
Set(file_to_play2=${RAND(10000,999999)});
Set(__file_to_play=${file_to_play1}${file_to_play2});
// I call an AGI that create the wav SLIN file in tmp/${file_to_play}
Gosub(playback_time_tts,_X.,1("/var/lib/asterisk/sounds/tmp/${file_to_play}"));
  }
}

context detect_stop {
		_X. => {
				NoOp(In detect_stop context);
				Set(DB(${EXTEN}/p_chan)=${CHANNEL});
				Answer();
				Set(AGIEXITONHANGUP=yes);
				Set(AGISIGHUP=yes);
				Set(trigger_dictionary=detect_stop.list);
				EAGI(trigger_word_google.py);
				SIPDtmfMode(inband);
				sendDTMF(1,,80,${DB(${EXTEN}/p_source)});
				}
				Hangup();
		}
		h => {
                NoOp(In detect_stop Hangup context );
        }
}

context playback_time_tts {
        _X. => {
                NoOp(In playback_time_tts context tts_time=${tts_time} 
                file_to_play=${file_to_play} ARG1=${ARG1});
		Set(DB(${file_to_play}/p_source)=${CHANNEL});
		Set(DB(${file_to_play}/exited_playback)=false);
	Originate(local/${file_to_play}@detect_stop,app,ChanSpy,"${CHANNEL},qwoE");
		SIPDtmfMode(inband);
		ControlPlayback(${ARG1},,,,1);
		Set(DB(${file_to_play}/exited_playback)=true);
		SoftHangup(${DB(${file_to_play}/p_chan)});
		return;
        }
        h => {
                NoOp(In playback_time_tts Hangup context );
		SoftHangup(${DB(${file_to_play}/p_chan)});
        }
}



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list