FreePBX Version
FreePBX 17
Issue Description
Issue: cel_general_custom.conf cannot override events= set in cel_general_additional.conf
Expected behaviour: Following the standard FreePBX custom config override pattern, adding a [general] section with a specific events= list to /etc/asterisk/cel_general_custom.conf
should override the events=all set in the auto-generated cel_general_additional.conf, which is included first.
Actual behaviour: events=all in cel_general_additional.conf is dominant regardless of include order. Any events= list in cel_general_custom.conf is silently ignored. asterisk -rx "cel
show status" continues to show CEL Tracking Event: ALL.
Root cause: events=all in Asterisk CEL is a flag that enables all events and cannot be overridden by a subsequent events= line in the same config context. Since FreePBX hardcodes
events=all in Cel.class.php line 356 with no UI setting to change it, and the custom file override mechanism doesn't work for this specific setting, there is no supported way to
filter CEL events.
Impact: On a small company with ~300 calls/day, the CEL table accumulates ~1.56 million records/month. CHAN_START, CHAN_END and HANGUP account for 92% of records — the
majority generated by queue ring attempts — with no supported mechanism to reduce this.
Workaround: Directly edit /var/www/html/admin/modules/cel/Cel.class.php line 356, replacing 'events=all' with a specific event list. This is overwritten on CEL module updates.
Fix requested:
- Add a CEL_EVENTS setting to FreePBX Advanced Settings to control which events are logged, OR
- Change the hardcoded events=all to a sensible default that excludes CHAN_END (redundant with HANGUP), OR
- Document that cel_general_custom.conf cannot override the events setting and explain the correct workaround
Operating Environment
Environment
- OS: Debian 12.11
- Asterisk: 22.3.0
- FreePBX: 17.0.28
- CEL Module: 17.0.2.13
- PHP: 8.2.29
Relevant log output
FreePBX Version
FreePBX 17
Issue Description
Issue: cel_general_custom.conf cannot override events= set in cel_general_additional.conf
Expected behaviour: Following the standard FreePBX custom config override pattern, adding a [general] section with a specific events= list to /etc/asterisk/cel_general_custom.conf
should override the events=all set in the auto-generated cel_general_additional.conf, which is included first.
Actual behaviour: events=all in cel_general_additional.conf is dominant regardless of include order. Any events= list in cel_general_custom.conf is silently ignored. asterisk -rx "cel
show status" continues to show CEL Tracking Event: ALL.
Root cause: events=all in Asterisk CEL is a flag that enables all events and cannot be overridden by a subsequent events= line in the same config context. Since FreePBX hardcodes
events=all in Cel.class.php line 356 with no UI setting to change it, and the custom file override mechanism doesn't work for this specific setting, there is no supported way to
filter CEL events.
Impact: On a small company with ~300 calls/day, the CEL table accumulates ~1.56 million records/month. CHAN_START, CHAN_END and HANGUP account for 92% of records — the
majority generated by queue ring attempts — with no supported mechanism to reduce this.
Workaround: Directly edit /var/www/html/admin/modules/cel/Cel.class.php line 356, replacing 'events=all' with a specific event list. This is overwritten on CEL module updates.
Fix requested:
Operating Environment
Environment
Relevant log output