Basically what I have done is add a column to the asterisk.recording_log table called `processed` which is a simple boolean field. I have a script that sits on our main corporate server that looks through the recording log grabbing the `recording_id` and `location` of all rows that have `processed`='0'.
Then I loop through that result and use ftp_get to pull the recording from the archive, do a little processing on our main server, and then upload it into our cloud files. Once successful the row is updated with `processed`='1'.
So this script works 95% of the time beautifully. However I've started to notice that there is a growing number of unprocessed rows each day. All of these fail on the ftp_get with a File Not Found error.
I've taken a look at all the log entries where the ftp_get is failing and they are indeed not present on the archive server.
My question then is: "Under what circumstances would a call be entered into the recording_log, call_log, and vicidial_log, and be given a (what looks to be) proper entry in the recording_log.location column but then not actually have a matching recording on the archive server?"
I'm thinking it may be a Call Status thing, or some kind of setting that's telling vicidial not to save certain types of calls even though all my campaigns have ALLFORCE for recordings...
Just need a little guidance here; thanks in advance.