From 5fa921f373816ba7a74fa892f38504533f0e3c64 Mon Sep 17 00:00:00 2001 From: Guilherme Humberto Jansen Date: Fri, 4 Aug 2017 02:33:38 -0300 Subject: [PATCH] Work in progress for ticket #34415. Issue #2271. --- .../connect/interpreter/VoiceInterpreter.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/restcomm/restcomm.interpreter/src/main/java/org/restcomm/connect/interpreter/VoiceInterpreter.java b/restcomm/restcomm.interpreter/src/main/java/org/restcomm/connect/interpreter/VoiceInterpreter.java index bd369ab8e2..a20bd5cc92 100644 --- a/restcomm/restcomm.interpreter/src/main/java/org/restcomm/connect/interpreter/VoiceInterpreter.java +++ b/restcomm/restcomm.interpreter/src/main/java/org/restcomm/connect/interpreter/VoiceInterpreter.java @@ -824,12 +824,18 @@ else if (is(gathering) || (is(finishGathering) && !super.dtmfReceived)) { // Finally proceed with call bridging final JoinCalls bridgeCalls = new JoinCalls(call, outboundCall); bridge.tell(bridgeCalls, self()); - } else if (is(forking) || is(finishDialing) || is(finished)){ + } else if (is(forking)){ // Move to next verb once media server completed Play if((dialBranches == null || dialBranches.size() == 0) && parser != null){ final GetNextVerb next = new GetNextVerb(); parser.tell(next, self()); } + } else if (is(finishDialing)) { + if (parser != null) { + // Move to next verb once media server completed Play + final GetNextVerb next = new GetNextVerb(); + parser.tell(next, self()); + } } } else { fsm.transition(message, hangingUp); @@ -1252,8 +1258,6 @@ private void onCallStateChanged(Object message, ActorRef sender) throws Transiti } else { checkDialBranch(message, sender(), attribute); } - final StopMediaGroup stop = new StopMediaGroup(); - call.tell(stop, sender); break; } else if (is(conferencing) || is(finishConferencing)) { //If the CallStateChanged.Completed event from the Call arrived before the ConferenceStateChange.Completed @@ -2522,6 +2526,8 @@ public void execute(final Object message) throws Exception { logger.info("Canceled branch: " + branch.path()+", isTerminated: "+branch.isTerminated()); } } + // Stop playing the ringing audio from inbound call + call.tell(new StopMediaGroup(), self()); } else if (outboundCall != null) { outboundCall.tell(new Cancel(), source); call.tell(new Hangup(outboundCallResponse), self());