<div dir="ltr">Hi,<div><br></div><div>I have a dial plan where I need to notify an external system when a call was answered and when the call hung up. In both requests the start time needs to be the same. My Dialplan looks something like this:</div><div><br></div><div><br></div><div>[outbound]</div><div>Exten => _X.,1,Dial(SIP/${<a href="mailto:EXTEN%7D@1.1.1.1">EXTEN}@1.1.1.1</a>,,U(call-answer-from-carrier))</div><div><br></div><div>Exten => h,1,NoOp(ANSWERED_TIME: ${ANSWEREDTIME} >>> DIAL_TIME: ${DIALEDTIME} >>> HANGUP_TIME: ${EPOCH} >>> ANSWERED TIME ${MATH(${EPOCH}-${ANSWEREDTIME},int)})</div><div><br></div><div>[call-answer-from-carrier]</div><div>Exten => s,1,Noop(CALL WAS ANSWERED AT ${EPOCH}</div><div>Exten => s,n,Agi(some_script.py)</div><div><br></div><div>Now in theory the hangup time of the call (${EPOCH} in the h extension) minus the answered time should be the same as the noop from my subroutine. I am finding that some times they match and some times they are off by a second. My issue is that the external system expects the answered time to the same for when we call it from the SubRoutine as well as from the h extension. I assume the difference is based on the microsecond of when we look at EPOCH how DIALEDTIME is rounded.</div><div><br></div><div>Any tips on how I can get the same answered time across the board?</div><div><br></div><div>TIA.</div><div><br></div><div>Dovid</div><div><br></div></div>