Author Message
TyOh2
Joined: Nov 21, 2013
Messages: 23
Offline
Hi we are using the latest Breeze SDK to intercept calls divert them.

We catch calls from
public void callIntercepted(final Call call)

Then use
call.divertTo(destination);

The problem we face is, we have no idea how to implement Redirect On No Answer.
If the destination does not answer the call, we would like to put the call back.
The call started off from an Implicit User number, we would ideally like to put it back in there.

Thanks
JoelEzell
Joined: Nov 15, 2013
Messages: 780
Offline
Hello. Is the destination here a Communication Manager VDN or are you sending it directly to a user's endpoint? If it's going to a VDN which answers the dialog right away and then to the actual user endpoint, you won't get any indication of the user answering unless you use AES or Engagement Call Control (which uses AES under the covers).

If you are sending the call directly to the end user's endpoint, this is actually fairly easy to implement. The steps are:
- In callIntercepted, invoke CallPolicies.setCallTerminationPolicy to set the policy to NO_PARTICIPANT_REMAINS. This ensures that the call won't drop if it goes down to one party.
- In callIntercepted, create an EJB timer for your desired wait time for answer. Store any timer reference you need in an attribute on the call
- If you get a callAnswered callback before your timer expires, cancel the timer
- If your timer expires, invoke dropParticipant to drop the participant that never answered.
- You can then play media if you want to, and/or offer the call to somebody else by invoking addParticipant().

Note that you need an AMS for this flow, even if you don't explicitly play any announcement files.
TyOh2
Joined: Nov 21, 2013
Messages: 23
Offline
Hi Joe

Super thanks for this, I would have replied much earlier, I didn't seem to get any email notication this time.

Yes, we are simply doing divertTo to a station. Some stations ares CM H323 stations and some are SM SIP stations.

So, do dropParticipant, then addParticipant?
Can we do addPartipant to another station then?
We tried to do divertTo again back to the implicit User Number, but this did something weird, where the call went somewhere but we lost control.

So, after dropParticipant, you can't to divertTo anymore?

Thanks so much.
Go to:   
Mobile view