我已经编写了一个PHP应用程序,它向数据库中的电话号码广播语音消息。
现在我想给它添加一个“调度”功能。这基本上意味着管理员将能够为特定的语音文件设置未来的日期和时间。语音消息将准确地在该日期和时间广播。
我该如何编码呢?一些代码片段将非常受欢迎。
谢谢,阿米特
发布于 2011-07-16 02:09:59
您需要查看CRON作业以自动执行脚本。请查看:http://net.tutsplus.com/tutorials/php/managing-cron-jobs-with-php-2/获取更多信息。
发布于 2011-07-16 03:06:25
正如Tom Walters所说,cron (如果您使用的是windows,则是计划任务)可能是一个很好的方法(至少在一开始是这样)。
Cron的最大分辨率是1分钟,所以希望这足够精确。
考虑这样一个表:
create table calls(
id int,
target_time datetime not null,
actual_time datetime default null
-- plus whatever data are necessary
);然后,您可以编写一个执行以下操作的脚本:
SELECT * FROM calls WHERE actual_time IS NULL and target_time <= NOW())然后,使用cron (或其他工具)每X分钟运行一次该脚本。
这是一个基本的架构,应该可以让您开始工作。
当然,如果您有多条出站呼叫线路或其他特殊需求,事情就会变得更加复杂。
如果您需要接近秒级的精度,cron将达不到要求。此时,您可以考虑编写一个或多个守护进程(连续运行的脚本)来更频繁地轮询数据库。
https://stackoverflow.com/questions/6711366
复制相似问题