Thank you all for the help and sorry for the late reply, I did some tests with originate_disposition and endpoint_disposition. ${originate_disposition} looks good in a 'controlled environment' with my asterisks and my dialplans but then it gets quirky when dealing with the real trunk. But it's the trunk's fault: they do all sorts of failovers and retries with a single call and the result is a messy TC. So for now I'm adding originate_disposition to my cdr and i'll add some code to 'guess' the best TC among the various cdr fields. Thank you all and have great holidays :) On Sat, 3 Aug 2019 20:49:49 +0200 Keith <keith@rhizomatica.org> wrote:
On 02/08/2019 15:51, morbidus@rx900.org wrote:
But i'm unable to get a 'final' termination cause for the calls as i'm used to get with asterisk: i'd like to have something like 'answered', 'cancel', 'busy', 'congestion', 'chanunavail', and so on
Can you also check whether originate_disposition, (and maybe endpoint_disposition) contain the info you want?
so i'm writing last_bridge_hangup_cause, bridge_hangup_cause and hangup_cause in my cdr
I'm wondering now. Is last_bridge_hangup_cause in the CDR the "correct" one, verified by your knowledge of what actually happened?
You /could/ run a hangup hook from XML dialplan, but I think you need to run some lua, could be inline lua.. but you can print the value of a variable and check it against what you are seeing in your CDR?
something along the lines of: https://lists.freeswitch.org/pipermail/freeswitch-users/2011-August/075103.h...