Author Message
P.Bobek
Joined: Sep 14, 2015
Messages: 13
Offline
I'm creating a call and when the call gets answered I'm playing a WAVE file.
After this operation completes I drop the call.
In some cases the playCompleted() method does get invoked after playing the announcement.
But sometimes this method does not get invoked.
This results in a call where the announcement got played but the call only terminates when the called party drops.

I'm using Breeze version 3.2.0.1.320111.
There are no hints in the SnapIn or Media server logs.
There seems to be no regularity when playCompleted() gets invoked and when not.
Tested with multiple WAVE files and devices.
The WAVE files are PCM 16 bit, 8kHz and mono as suggested in the Development Guide.

I would be grateful if you could tell me if this is a known problem and what could be the cause of this problem.

Here are the important code snippets:


Participant callingParty = ParticipantFactory.create("123");
Call call = CallFactory.create(callingParty, "456");
call.initiate();

@TheCallListener
public class CallListener extends CallListenerAbstract {

...

@Override
public void callAnswered(Call call) {
MediaListener mediaListener = new PlayCompletedListener(Call call);

PLayItem playItem = MediaFactory.createPlayItem();
playItem.setSource("http://.../item.wav"); // WAVE file with 4 seconds content

MediaService mediaService = MediaFactory.createMediaService();
mediaService.play(playItem, call.getCalledParty(), mediaListener);
}
}

public class PlayCompletedListener extends MediaListenerAbstract {

...

@Override
public void playCompleted(UUID playOperation, PlayOperationCause cause) {
logger.info("Play operation completed"); // Does not get called
call.drop();
}
}
RobertFavero
Joined: Mar 31, 2015
Messages: 27
Offline
It's not clear what might be going on. Could you enable finest logging ("ce dlogon" from the Breeze command line) and then run the test several times so that you capture 1 successful case and 1 failed case? Then attach the asm.log file(s) that include the success and failure? Also, be sure to indicate the time (machine time) that the call started for each case.

Thank you.
Go to:   
Mobile view