[asterisk-bugs] [JIRA] (ASTERISK-25458) Unable to set CDR variable in h extension or hangup_handler

Ross Beer (JIRA) noreply at issues.asterisk.org
Thu Jan 7 09:46:32 CST 2016


     [ https://issues.asterisk.org/jira/browse/ASTERISK-25458?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ross Beer updated ASTERISK-25458:
---------------------------------

    Comment: was deleted

(was: I think I've uncovered another issue where if variables are set before a dial, the call is answered and the far end hangs up no custom variables are set to the CDR.

I am using the 'g' option so that the call continues in this situation to play a prompt to the caller.

The dialplan resets the CDR and then a NoCDR for the following piece of logic:


exten => d-ANSWER,1,ResetCDR(w)
exten => d-ANSWER,n,NoCDR()
exten => d-ANSWER,n,Playback(vh-otherpersonhungup)
exten => d-ANSWER,n,Hangup()


Using the above, no custom variables are populated in the CDR be it if the variables are set before or after the dial.

If I remove the NoCDR() from the above a second CDR is created containing all of the custom variables. )

> Unable to set CDR variable in h extension or hangup_handler
> -----------------------------------------------------------
>
>                 Key: ASTERISK-25458
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-25458
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: CDR/General
>    Affects Versions: 13.6.0
>            Reporter: Ross Beer
>            Assignee: Ross Beer
>            Severity: Minor
>         Attachments: ASTERISK-25458-13.diff
>
>
> It is not possible to add CDR variables in the h extension or the hangup_handler. 
> The CDR should only be closed once the hangup block has been processed. This would allow for calls that dial more than one extension (or fail-over to a secondary route) to store the hangup cause etc for each dial attempt which is the same way CDRs are created in Asterisk 13.
> Matthew Jordan via the dev mailing list commented:
> "The short answer is that it is working as designed; the long answer is
> that I think the design is wrong. (As the guy responsible, I feel like
> I'm only throwing stones at myself.)
> Keeping a single CDR running after channels have left a bridge was one
> of those things that was relatively "easy" in 11 and earlier versions,
> and is a bit more challenging in 13. I think in this case that we
> probably should revisit the rules around it.
> I do know this has come up a few times on the mailing lists, but I
> don't think anyone has made an issue yet. Please do made one,
> referencing this discussion.
> Just to summarize what I think should happen:
> endbeforehexten=no should cause no new CDR to be created in the 'h'
> extension, and the 'end' time on the CDR should not be set. The CDR
> should allow manipulation of its properties via the CDR function."



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list