[OPEN-ILS-DEV] Asterisk scheduling controls

Josh Stompro stomproj at larl.org
Tue Dec 15 15:06:37 EST 2009


Joe Atzberger wrote:
> In the course of integrating Asterisk telephony with Evergreen's 
> action/trigger notice structure, we have encountered a problem that 
> you may have already come across, or possibly even solved.  The 
> question is basically how to schedule call times (on the asterisk 
> side), i.e. start at 9AM, stop at 9PM.  
>
> We are generating callfiles that are queued by moving them into the 
> Asterisk spool directory.  We can tell Asterisk not to call before a 
> certain time by setting the file's date modified time in the future. 
>  So we have a mechanism for the "begin" time.  What we don't have is a 
> mechanism to tell asterisk *not* to call after a given "end" time. 
>  Anything that is in the dialplan logic itself does not appear 
> suitable because that still processes the callfile and either succeeds 
> or fails.  What we want is to *not* process the callfile, deferring it 
> until the next start time.  
>
> The reason there has to be a cutoff is that EG might spool up several 
> thousand calls to fire at the "begin" time, and it is conceivable that 
> not all calls would be completed by the intended end.  
>
> Things we've ruled out:
>
>     * just turning off/on asterisk -- can't do that since local
>       voicemail, incoming calls and desktop phones might depend on
>       asterisk
>     * trying to adjust callfile date modified time inside dialplan --
>       doesn't work, because the file is still processed, i.e. moved to
>       the "done" dir at the end
>
> So are there any solutions you guys have encountered?  This problem is 
> very similar to print queue management on unix, so there may be 
> products/packages in that problem-space that would work for us.  
>
> --Joe
I'm not at all familiar with the call files, so this is probably not an 
option, but would it be possible to move all spooled calls out of the 
call dir at a certain time, except the ones that are currently in use, 
and move them back in the next start time... Or modify the  date 
modified time of all the files not currently in use at 9pm every night 
to be for 9am the next morning. That would cause the system to skip them 
all until the next morning, right?

As well as set stop and start times, would it be possible to optionally 
not have the system call a customer while their home library is not 
open.  That way there would always be staff available at a customers 
library if they had questions and wanted to call back.  Assuming that EG 
takes into account holidays, it would also keep calls from being placed 
on holidays also.  This wouldn't work for every location though, so it 
should probably be a per OU setting.
Josh

-- 
Lake Agassiz Regional Library - Moorhead MN larl.org
Josh Stompro               | Office 218.233.3757 EXT-139
LARL Network Administrator | Cell 218.790.2110	




More information about the Open-ils-dev mailing list