And therein lies the problem:
[root@agents ~]# rasterisk -x 'dialplan show @app-announcement-16' [ Context 'app-announcement-16' created by 'pbx_config' ] 'fax' => 1. Goto(${CUT(FAX_DEST,^,1)},${CUT(FAX_DEST,^,2)},${CUT(FAX_DEST,^,3)}) [pbx_config] 's' => 1. GotoIf($["${CHANNEL(state)}" = "Up"]?begin) [pbx_config] 2. Answer() [pbx_config] 3. Wait(1) [pbx_config] [begin] 4. Noop(Playing announcement MSG_9-9-M-F) [pbx_config] 5. Playback(custom/NightMode/MSG_9-9-M-F,noanswer) [pbx_config] 6. Goto(ext-miscdests,1,1) [pbx_config] Include => 'app-announcement-16-custom' [pbx_config] -= 2 extensions (7 priorities) in 1 context. =-
The custom file is included AFTER the announcement.
I re-wrote my application to put the whole [app-announcement-XX] in extensions_override_freepbx.conf and that finally made it work. It updates about 600 announcements to run an AGI BEFORE the announcement.