IVR Selection Tracking or "Custom Logging"


Here’s my goal - I want to track IVR selections for inbound calls. Fair enough, parse the full log they say, and yes found it in the logfile so fair enough, but there’s a lot of noise in the full log for one little digit to try to pull out. I’m sure that could be fun with regex to get the right detail but yeah … Are there other methods to this, I thought!?

So, I looked up ways that I can create my OWN logs from the dialplan and found the Log application. But, does this just log to the full logfile? So, sure, I could use something like Log(NOTICE,{$CALLERID} made selection 1) - this might make the log processing a little easier as I know exactly what I’m looking for. However, is it possible to get this application to log to a completely different file altogether? I couldn’t find much information about this.

Then, I checked out CEL in the FPBX13 Admin interface, and it is super hot! I really like it - compared to normal CEL events, this interface really dumbs it down into something very readable. However, IVR selections are not logged as a CEL event - so, can they be? Or, can I use CELGenUserEvent to insert my own event into the CEL logging? Something like CELGenUserEvent(ivr-selection,{$CALLERID} selected 1).

So that’s the two methods that I just need to clarify and work on. Next up is, if I can even get this into the dial plan that FreePBX generates for an IVR. Thinking that with extensions_custom.conf I could do something like

exten => 0,n(ivrsel-0),Log(NOTICE,{$CALLERID} Selected 0)

To add the above line, underneath;

exten => 0,1(ivrsel-0),Goto(ivr-2,s,1)

in extensions_additional.conf.

Forgive my syntax and etc in the above, really, just trying to figure out if I can achieve this outcome of logging IVR selections for a unique log file, and if I am chasing the correct rabbit.

Thanks in advance!