<div dir="ltr">Hello, <br><div><br></div><div>I have a setup with asterisk 16.8.0, I'm facing a problem where calls that fail (CONGESTION) don't have filled in some extra fields we add to the CDRs in the database.</div><div><br></div><div>We use cdr_adaptive_odbc with MySQL as backend.</div><div><br></div><div>To simplify the scenario:</div><div><br></div><div>[sub-hanguphandler]<br>exten => s,1,Set(CDR(foo)=${bar})<br>same => n,Return()</div><div><br></div><div>[default]<br></div><div>exten => _X.,1,NoOp(New test call)<br>same => n,Set(CHANNEL(hangup_handler_push)=sub-hanguphandler,s,1)<br>same => n,Dial(...)<br></div><div>same => n,Hangup()</div><div><br></div><div><br></div><div>With the above config:</div><div><br></div><div>1- An answered call: foo is filled in db</div><div>2- A cancelled call: foo is filled in db</div><div>3- A failed call: foo is NOT filled in db</div><div><br></div><div>In all 3 cases, with verbose logs enabled I can see the sub-hanguphandler subroutine is being executed, so it's confusing.</div><div><br></div><div>I would understand if the hangup handler is NOT executed for failed calls, but seeing it in the logs and then seeing the field empty in the db doesn't make sense to me.</div><div><br></div><div>Any tips on where/how I can troubleshoot this?<br></div><div><br></div><div><br></div><div>Thanks, </div><font color="#888888"><div>Joel.</div></font></div>