We typically use call files to execute a variety of outreaches, using the userfield to report out on progress and outcomes. This works well except it does not account for the non-answered calls (bad number, no human/machine pickup). Where reporting is easy, using the userfield for the connected calls, it is considerably more difficult for the others.
I had a new idea, where I would make the customer phone number a set variable in the call file and instead dial the local extension 5555555555. The 5555555555 context would only exist to write a “Dialing” status in the userfield before calling the customer and connecting true answers to the real context.
I think I have it all worked out how I would do this, except:
Have the 5555555555 extension call out to the customer and wait for an answer (amd), on pickup it would go to the original context
[outreach-context]for amd and processing.
After 45 seconds if there was no answer, or we got an invalid/disconnected number, we would note “call failure” in the user field and hangup.
Any ideas for dialplan here? Any other ideas that might accomplish the same goal (capturing outreach results for no answer dispositions)?
Note: FreePBX broadcast is not a viable option due to limited flexibility in the messaging that can go out and the fact that broadcast is hardcoded to a 30 second ring time, which is not long enough to hit major US carrier voicemails.