Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / Конфигурация и настройка / Автоматический обзвон

Автоматический обзвон

некоторые call-файлы как-будто не обрабатываются астериском
Сообщений: 14

Автоматический обзвон

Автоматический обзвон

Версия Asterisk
Asterisk 1.4.26.3, Copyright (C) 1999 - 2008 Digium, Inc. and others.
Сборка с FreePBX

Имеется скрипт РHP который создает call-файлы, по определенной логике из БД,
и перемещает их в outgoing, таким образом.

exec("chown asterisk:asterisk $filename");
exec("mv $filename /var/spool/asterisk/outgoing/");
touch ("/var/spool/asterisk/outgoing/$filename", $delay);


Кол-во файлов в среднем от 1500 - 5000 (создается за один раз)

Проблема #1
Иногда не все колл-файлы обрабатываются,
из начально они все созданы, но в процессе их обработки,
может часть просто пропасть(из 3000 до ~10~15 файлов), в логах астериска ни чего не нашел,
как будто они и не были обработаны(файл просто исчезает со временем).

При использовании параметра call-файла Archive: Yes - он небыл перемещен
(в смысле чать файлов которая потерялась) в outgoing_done

Такое происходит редко, заметил такую зависимость(но и в других случаях такое было), когда я смотрел(читал)
папку outgoing через mc, сверяя кол-во файлов.


Проблема #2

Также в некоторых случаях может быть такое, что при создании
кол-файлов с указанием времени звонка например через час.
из 1000 кол-файлов например один из них зонит сразу же.


причем когда это 1000 файлов создается, этот звонок не в начале списка не в конце,
а где то в середине списка

Я сделал вывод, что у меня они сначала перемещаются в outgoing (и астериск успевает обработать файл до назначения ему времени модификации)
а затем назначется им время модификации.

Exec("mv $filename /var/spool/asterisk/outgoing/");
touch ("/var/spool/asterisk/outgoing/$filename", $delay);


Если делать наоборот, то при перемещении файла, время его модифкации
обновляется на момет перемещения,

Может быть есть еще какой то способ их перемещения, без изменения даты модификации?
т.е. мы например сначала их создадим с определенной датой, а затем переместим.



2010-10-22 11:39

Avatara of noize
Откуда: Москва
Сообщений: 398

Re: Автоматический обзвон

Использовать AMI + Originate
2010-10-22 11:45

Сообщений: 14

Re: Автоматический обзвон

noize:

Использовать AMI + Originate
Да все верно, я тоже об этом думал, это в корне должно изменить ситуацию.
Но получается нужно менять всю технологию системы.


но тогда, обзвон должен управляться клиентом(который должен быть постоянно открыт)

или писать какой-то сервер, а к нему клиента для пользователя
2010-10-22 11:49

Avatara of zzuz
Откуда: SPb
Сообщений: 1307

Re: Автоматический обзвон

exec("chown asterisk:asterisk $filename");
exec("mv $filename /var/spool/asterisk/outgoing/");
touch ("/var/spool/asterisk/outgoing/$filename", $delay);

использование shell в сприптах php - верх оригинальности!

файлы ваши не исполняются по уже изъезженной теме .Пока астериск до них доберется , время создания уже будет в прошлом , без Archive удаляются , и как заметил автор , с Archive остаются. Я не спец в пхп , но как мне помнится touch не изменяет время создания файла.
http://линия24.рф - Астериск и прочие бубны!
2010-10-22 11:53

Сообщений: 14

Re: Автоматический обзвон

Если бы touch не изменял время создания файла, то система у меня бы не работала вообще )))

2010-10-22 11:59

Сообщений: 14

Re: Автоматический обзвон

Вообщем ответа 2-а я так понимаю?
1. Либо остаться с этими глюками
2. Либо менять технологию на использование AMI

так?
2010-10-22 12:01

Откуда: NiNo
Сообщений: 112

Re: Автоматический обзвон

to bracus:

1 - тех файлов совсем нет или астериск их просто не обрабатывает ?

2 - шеловский mv не меняет время создания файла ( да и нет его в линуксах совсем, это время модификации )
http://code.google.com/p/virtual-pbx - я не червонец, чтобы нравиться всем....
2010-10-22 13:28

Сообщений: 14

Re: Автоматический обзвон

to bracus:

1 - тех файлов совсем нет или астериск их просто не обрабатывает ?
Файлы создаются все норм, и какое-то время хранятся в outgoing как положено.
Дата модификация у них корректная на сколько я мог судить визуальным анализом
списка в 3000 файлов, писал скрипт PHP для листинга директории
с описанием файла(дата модификации).
И замерял по общему количеству файлов в директории.
Затем в процессе их обработки, опять же очень сложно заметить сразу,
у меня через AGI пишется статистика в БД, часть звонков до конца не обработано(всмысле все попытки дозвона).

У меня два типа обзвона обычный, это когда используется Retries - количество дозвонов при недозвоне.
и С фиксированным количество попыток, когда сразу на один номер создается определенное количество call-файлов
с датой модификации например через 5 мин.

Так вот такие проблемы пока замечены только во втором случае.

Причем хочу заметить, что при Arhive: yes, потерянные звонки(кол-файлы) НЕ попадают в outgoing_done
Они просто теряются куда-то, смотрел логи самого астера, там было видно что этих звонков он не совершал.


например обзвон на 249 номеров с 12 попытками = 2988 файлов через каждые 5 мин
при меньшем количестве номеров(кол-файлов) н-р: 100, проблем не замечал.

Может думаю изменить схему создания файлов, т.е. не создавать их сразу(последующие попытки на каждый номер), а создавать следующую попытку(следующий кол-файл) касательно конкретного номера, после обработки предыдущей(щего)



to bracus:

2 - шеловский mv не меняет время создания файла ( да и нет его в линуксах совсем, это время модификации )



Насколько я читал, да он не должен менять дату модификации если файл переносится относительно одного раздела.

мой скрипт создающий кол-файлы находится в /var/www/autodial и переносит файлы в /var/spool/outgoing
в принципе раздел один, может быть PHP создает их изначально где-то в другом месте, я не проверял.

Но если поменять строчки местами
exec("mv $filename /var/spool/asterisk/outgoing/");
touch ("/var/spool/asterisk/outgoing/$filename", $delay);

то система не реагирует на заданную дату система сразу же начинает набирать номер






2010-10-22 15:08

Добавить страницу в закладки:  Delicious Google Slashdot Yahoo Yandex.ru Reddit Digg Technorati Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Vaau.ru Memori.ru Rucity.com Moemesto.ru News2.ru Mister-Wong.ru Myscoop.ru 100zakladok.ru