DAHDI Configuration PHP Error causing config problems

We just had an incident where the PRI wouldn’t spin up, and I finally determined that the config for it in chan_dahdi*.conf was missing. Those files are regenerated by FreePBX on reload, and there appears to be a bug in the dahdi_cards.class.php script that I think is wiping out this config.

When we go to the DAHDI Configuration page in the FreePBX GUI we get this error.

Version:0.9 StartHTML:00000157 EndHTML:00000577 StartFragment:00000191 EndFragment:00000541 SourceURL:http://10.9.0.29/admin/config.php?display=dahdi#
Whoops\Exception\ErrorException
Undefined index: min_ch
File:/var/www/html/admin/modules/dahdiconfig/includes/dahdi_cards.class.php:195

I can’t navigate to any of the “settings” pages on this page (System Settings, Modprobe Settings, Sangoma Settings, etc. ) Clicking on those does nothing.

I tried updating the DAHDI Config module in FreePBX, but this error continues. To solve the problem I have placed the PRI config in /etc/asterisk/chan_dahdi_channels_custom.conf and restarted, it is now working.

root@asterisk-01:~ # cat /etc/schmooze-release /etc/schmooze/pbx-version;fwconsole ma list
SHMZ release 6.6 (Final)
10.13.66-12
No repos specified, using: [standard,extended,commercial,unsupported] from last GUI settings

+----------------------+--------------+-----------------------------------+------------+
| Module               | Version      | Status                            | License    |
+----------------------+--------------+-----------------------------------+------------+
| accountcodepreserve  | 13.0.2       | Enabled                           | GPLv2      |
| announcement         | 13.0.6       | Enabled                           | GPLv3+     |
| areminder            | 2.11.6       | Disabled                          | Commercial |
| arimanager           | 13.0.4       | Enabled                           | GPLv3+     |
| asterisk-cli         | 13.0.4       | Enabled                           | GPLv3+     |
| asteriskinfo         | 13.0.7       | Enabled                           | GPLv3+     |
| backup               | 13.0.25      | Enabled                           | GPLv3+     |
| blacklist            | 13.0.14      | Enabled                           | GPLv3+     |
| bria                 | 2.11.0.14    | Disabled                          | Commercial |
| broadcast            | 2.11.8.2     | Disabled                          | Commercial |
| builtin              |              | Enabled                           |            |
| bulkdids             | 13.0.2       | Enabled                           | GPLv3+     |
| bulkextensions       | 13.0.3       | Enabled                           | GPLv3+     |
| bulkhandler          | 13.0.13      | Enabled                           | GPLv3+     |
| callback             | 13.0.5       | Enabled                           | GPLv3+     |
| callerid             | 2.11.0.7     | Disabled                          | Commercial |
| callforward          | 13.0.4       | Enabled                           | AGPLv3+    |
| calllimit            | 2.11.0.10    | Disabled                          | Commercial |
| callrecording        | 13.0.11      | Enabled                           | AGPLv3+    |
| callwaiting          | 13.0.4       | Enabled                           | GPLv3+     |
| campon               | 13.0.3       | Enabled                           | GPLv3+     |
| cdr                  | 13.0.29.8    | Enabled                           | GPLv3+     |
| cel                  | 13.0.25      | Enabled                           | GPLv3+     |
| certman              | 13.0.34      | Enabled                           | AGPLv3+    |
| cidlookup            | 13.0.11      | Enabled                           | GPLv3+     |
| conferences          | 13.0.22      | Enabled                           | GPLv3+     |
| conferencespro       | 2.11.0.13    | Disabled                          | Commercial |
| configedit           | 13.0.7       | Enabled                           | AGPLv3+    |
| contactmanager       | 13.0.33      | Enabled                           | GPLv3+     |
| core                 | 13.0.113     | Enabled                           | GPLv3+     |
| cos                  | 2.11.12      | Disabled                          | Commercial |
| customappsreg        | 13.0.5       | Enabled                           | GPLv3+     |
| customcontexts       | 13.0.2       | Enabled                           | GPLv2+     |
| cxpanel              | 3.1.10       | Disabled                          | GPLv3      |
| dahdiconfig          | 13.0.33      | Enabled                           | GPLv3+     |
| dashboard            | 13.0.24      | Enabled                           | AGPLv3+    |
| daynight             | 13.0.13      | Enabled                           | GPLv3+     |
| dictate              | 13.0.5       | Enabled                           | GPLv3+     |
| digium_phones        | 13.0.3       | Enabled                           | GPLv2      |
| digiumaddoninstaller | 2.11.0.12    | Enabled                           | GPLv2      |
| directory            | 13.0.16      | Enabled                           | GPLv3+     |
| disa                 | 13.0.6       | Enabled                           | AGPLv3+    |
| donotdisturb         | 13.0.3       | Enabled                           | GPLv3+     |
| dundicheck           | 2.11.0.3     | Enabled                           | GPLv3+     |
| endpoint             |              | Not Installed (Locally available) | Commercial |
| endpointman          | 13.0.6.7     | Enabled                           | GPLv2+     |
| extensionroutes      | 13.0.9.1     | Disabled                          | Commercial |
| extensionsettings    | 13.0.4       | Enabled                           | GPLv3+     |
| fax                  | 13.0.38      | Enabled                           | GPLv3+     |
| faxpro               | 13.0.31      | Enabled                           | Commercial |
| featurecodeadmin     | 13.0.6       | Enabled                           | GPLv3+     |
| findmefollow         | 13.0.37      | Enabled                           | GPLv3+     |
| firewall             | 13.0.39.1    | Enabled                           | AGPLv3+    |
| framework            | 13.0.188.8   | Enabled                           | GPLv2+     |
| freepbx_ha           | 13.0.8.5     | Disabled                          | Commercial |
| fw_langpacks         | 12.0.7       | Enabled                           | GPLv3+     |
| hotelwakeup          | 13.0.16      | Enabled                           | GPLv2      |
| iaxsettings          | 13.0.5       | Enabled                           | AGPLv3     |
| infoservices         | 13.0.1       | Enabled                           | GPLv2+     |
| irc                  | 2.11.0.7     | Enabled                           | GPLv3+     |
| ivr                  | 13.0.25      | Enabled                           | GPLv3+     |
| javassh              | 2.11.2       | Enabled                           | AGPLv3+    |
| languages            | 13.0.6       | Enabled                           | GPLv3+     |
| logfiles             | 13.0.10      | Enabled                           | GPLv3+     |
| manager              | 13.0.2.5     | Enabled                           | GPLv2+     |
| miscapps             | 13.0.2.4     | Enabled                           | GPLv3+     |
| miscdests            | 13.0.4       | Enabled                           | GPLv3+     |
| music                | 13.0.22      | Enabled                           | GPLv3+     |
| outroutemsg          | 13.0.2       | Enabled                           | GPLv3+     |
| paging               | 13.0.24      | Enabled                           | GPLv3+     |
| pagingpro            | 13.0.15      | Disabled                          | Commercial |
| parking              | 13.0.18.1    | Enabled                           | GPLv3+     |
| parkpro              | 13.0.19      | Disabled                          | Commercial |
| pbdirectory          | 2.11.0.5     | Enabled                           | GPLv3+     |
| phonebook            | 13.0.5.5     | Enabled                           | GPLv3+     |
| phpagiconf           | 2.11.0.2     | Enabled                           | GPLv3+     |
| phpinfo              | 13.0.2       | Enabled                           | GPLv2+     |
| pinsets              | 13.0.8       | Enabled                           | GPLv3+     |
| pinsetspro           | 13.0.8       | Enabled                           | Commercial |
| presencestate        | 13.0.7       | Enabled                           | GPLv3+     |
| printextensions      | 13.0.3       | Enabled                           | GPLv3+     |
| queuemetrics         | 2.11.0.3     | Enabled                           | GPLv3+     |
| queueprio            | 13.0.2       | Enabled                           | GPLv3+     |
| queues               | 13.0.30      | Enabled                           | GPLv2+     |
| qxact_reports        | 13.0.14      | Enabled                           | Commercial |
| recording_report     | 13.0.22      | Disabled                          | Commercial |
| recordings           | 13.0.28      | Enabled                           | GPLv3+     |
| restapi              | 13.0.19      | Enabled                           | AGPLv3     |
| restapps             |              | Not Installed (Locally available) | Commercial |
| ringgroups           | 13.0.21      | Enabled                           | GPLv3+     |
| setcid               | 13.0.5       | Enabled                           | GPLv3+     |
| sipsettings          | 13.0.23.12   | Enabled                           | AGPLv3+    |
| sipstation           | 2.11.1.6     | Disabled                          | Commercial |
| sms                  | 13.0.7       | Disabled                          | Commercial |
| sng_mcu              | 13.0.5       | Enabled                           | Commercial |
| soundlang            | 13.0.15      | Enabled                           | GPLv3+     |
| speeddial            | 2.11.0.4     | Enabled                           | GPLv3+     |
| superfecta           | 13.0.3.19    | Enabled                           | GPLv2+     |
| sysadmin             | 13.0.67      | Enabled                           | Commercial |
| timeconditions       | 13.0.32      | Enabled                           | GPLv3+     |
| tts                  | 13.0.8       | Enabled                           | GPLv3+     |
| ttsengines           | 13.0.6       | Enabled                           | AGPLv3     |
| ucp                  | 13.0.41.2    | Enabled                           | AGPLv3+    |
| ucpnode              | 13.0.31      | Enabled                           | Commercial |
| userman              | 13.0.73      | Enabled                           | AGPLv3+    |
| versionupgrade       |              | Not Installed (Locally available) | Commercial |
| vmblast              | 13.0.8       | Enabled                           | GPLv3+     |
| vmnotify             | 13.0.14      | Disabled                          | Commercial |
| voicemail            | 13.0.53      | Enabled                           | GPLv3+     |
| voicemail_report     | 13.0.11      | Disabled                          | Commercial |
| vqplus               | 13.0.22      | Disabled                          | Commercial |
| weakpasswords        | 13.0.1alpha1 | Enabled                           | GPLv3+     |
| webcallback          | 13.0.10      | Enabled                           | Commercial |
| webrtc               | 13.0.28      | Enabled                           | GPLv3+     |
| xmpp                 | 13.0.14      | Enabled                           | AGPLv3     |
| zulu                 | 13.0.43      | Enabled                           | Commercial |
+----------------------+--------------+-----------------------------------+------------+