@Override public void onFailure(LiveException e) { MotechEvent event = callRequest.getOnFailureEvent(); if (event != null) { CallDetailRecord cdr = new CallDetailRecord(CallDisposition.FAILED, e.getMessage()); Map<String, Object> parameters = event.getParameters(); parameters.put(IVREventDelegate.CALL_DETAIL_RECORD_KEY, cdr); eventRelay.sendEventMessage(event); } }
@Override public void onBusy(AsteriskChannel asteriskChannel) { MotechEvent event = callRequest.getOnBusyEvent(); if (event != null) { org.asteriskjava.live.CallDetailRecord aCDR = asteriskChannel.getCallDetailRecord(); CallDetailRecord cdr = new CallDetailRecord( aCDR.getStartDate(), aCDR.getEndDate(), aCDR.getAnswerDate(), translateDisposition(aCDR.getDisposition()), aCDR.getDuration()); Map<String, Object> parameters = event.getParameters(); parameters.put(IVREventDelegate.CALL_DETAIL_RECORD_KEY, cdr); eventRelay.sendEventMessage(event); } }