Summary: | ASTERISK-22756: [patch]Correct cause code for chan_dahdi request when trunk congested | ||
Reporter: | Michael Walton (mike@farsouthnet.com) | Labels: | patch |
Date Opened: | 2013-10-24 01:43:31 | Date Closed: | |
Priority: | Minor | Regression? | No |
Status: | Open/New | Components: | Channels/chan_dahdi |
Versions: | 1.8.24.0 12.0.0-beta1 13.18.4 | Frequency of Occurrence | |
Related Issues: | |||
Environment: | Any | Attachments: | ( 0) chan_dahdi.c.correct-trunk-cause.r400911.patch |
Description: | New channel request in dahdi_request currently returns AST_CAUSE_CONGESTION for group matched with no channel available, but returns AST_CAUSE_BUSY for channel matched. This is fine for non-trunk channels, but breaks dialplan logic for trunk channels (e.g. FXO with fxsks signaling), because AST_CAUSE_BUSY is interpreted as "unable to reach party by any means" and terminates trunk hunting logic e.g. in FreePBX. The corrected cause, AST_CAUSE_CONGESTION, is interpreted as "try another means to reach party", resulting in selection of next priority trunk as intended. This patch uses the ISTRUNK() macro to determine the cause:
ISTRUNK(p) ? AST_CAUSE_CONGESTION : AST_CAUSE_BUSY | ||
Comments: |