Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Queue log + Пауза

0

Есть небольшой КЦ. Агенты авторизуются через VMAuthenticate. Логин и логаут -- по паролю, пауза -- без пароля (это обязательно). Таким образом, в queuelogprocessed (по мануалу с voip-info.org делал) события AGENTLOGIN и AGENTLOGOUT в поле agentdev имеют персональный номер оператора, а события PAUSE и UNPAUSE имеют в этом поле CallerID агента. Реально ли без огромного количества запросов в системе отчетности сделать таким образом, чтобы я видел, какой оператор ушел на паузу. Или же придется городить запросы явно не для новичка?

удалить закрыть спам изменить тег редактировать

спросил 2012-03-01 14:49:21 +0400

ikt Gravatar ikt
1 3 4

Comments

UPD: мне нужен именно ЛОГ, а не в режиме реального времени.

tesak89 ( 2012-03-01 15:08:12 +0400 )редактировать

Ну тебе-то может и нужен, а что нужно топикстартеру?

switch ( 2012-03-01 15:26:46 +0400 )редактировать

А топикстартеру нужно то же самое =) Коллега писал вопрос, с ним вдвоем уже думаем.

tesak89 ( 2012-03-01 15:36:01 +0400 )редактировать

Посмотрел на свои отчеты - я не учитывал паузы в рабочем времени...

switch ( 2012-03-01 15:43:30 +0400 )редактировать

Хм , а мы вот учитываем и мониторим)

zzuz ( 2012-03-01 17:00:25 +0400 )редактировать

zzuz, а про вас мы в курсе и мониторим =) Сможете как-нибудь помочь с Вашим монитором нагрузки? Шо-то не завелось как-то, потом не смотрел, вот думаю на днях еще разок покурить тему эту.

tesak89 ( 2012-03-02 00:53:31 +0400 )редактировать

Да не проблема . У нас везде заводится) . Я правильно понял , что речь идет про pbx-monitor? Там вроде всё просто , bash и php , ничего лишнего. Кстати там добавлена возможность мониторить удаленные машины с астерисками.

zzuz ( 2012-03-02 04:12:47 +0400 )редактировать

я так понял стандартное решение данной проблемы - это создание отдельной таблицы для агентов? А если операторы универсальные (входящие и исходящие звонки). Отдельный код на исходящий звонок чтоли делать?

asdasd1d ( 2012-03-02 15:03:11 +0400 )редактировать

Ну а как иначе? В * оператор ставится так же на паузу, а в свой лог падает другое действие.

tesak89 ( 2012-03-05 18:20:11 +0400 )редактировать

3 Ответа

1

Сделайте просто: в процедуре постановки на паузу добавляйте нужные записи в БД и все...

ссылка удалить спам редактировать

ответил 2012-03-01 15:44:23 +0400

switch Gravatar switch
8334 11 7 92
http://lynks.ru/

Comments

[code] context auth { _*1XXXX => { Answer(); Wait(1); // VMAuthenticate(${EXTEN:2}@operators,s); Set(queue-announce-success=1); goto queues-manip,I${EXTEN:2},1; };

    _*2XXXX => {
            Answer();
            Wait(1);

// VMAuthenticate(${EXTEN:2}@operators,s); Set(queue-announce-success=1); MySQL(Connect connid localhost root finger asterisk); MySQL(Query resultid ${connid} UPDATE\ agent_status\ SET\ agentStatus\ =\ LOGGEDOUT\ where\ agentId='${EXTEN:2}'); goto queues-manip,O${EXTEN:2},1; };

    *3 => {
            Answer();
            Wait(1);
            Set(queue-announce-success=1);
            goto queues-manip,P${CALLERID(num)},1;
    }

    *4 => {
            Answer();
            Wait(1);
            Set(queue-announce-success=1);
            goto queues-manip,U${CALLERID(num)},1;
    };

} [/code]

tesak89 ( 2012-03-01 15:49:42 +0400 )редактировать

Проблема в том, что при логине и логауте используется ид агента, а при паузе -- номер телефона, с которого он работает.

tesak89 ( 2012-03-01 15:54:11 +0400 )редактировать

дык пишите в БД значение, которое вам нужно.

switch ( 2012-03-01 16:06:29 +0400 )редактировать

Дык неоткуда его взять... =(

tesak89 ( 2012-03-01 16:15:19 +0400 )редактировать

tesak89, используй силу!

А вообще у меня сделано просто: в Astdb хранится соответствие номера телефона и агента

switch ( 2012-03-01 16:19:12 +0400 )редактировать

Использовал =) Как раз на бумажке накидал новый алгоритм авторизации агентов и таблицы с их состояниями.

tesak89 ( 2012-03-01 16:46:45 +0400 )редактировать

Ну вот видишь! Не забываем плюсовать ;)

switch ( 2012-03-01 16:48:06 +0400 )редактировать
1

Можно через CLI команду queue show получить эту информацию. Для AMI нужно использовать команду QueueStatus. Вот тут все есть: http://www.voip-info.org/wiki/view/Asterisk+manager+API

ссылка удалить спам редактировать

ответил 2012-03-01 14:54:44 +0400

switch Gravatar switch
8334 11 7 92
http://lynks.ru/

Comments

У меня пхп морда, берет данные из mysql базы, в которой ЛОГ вызовов есть.

tesak89 ( 2012-03-01 15:07:13 +0400 )редактировать

А у меня есть пхп вебморда которая состояние очередей показывает в реальном времени и даже с анимацией!

switch ( 2012-03-01 15:08:50 +0400 )редактировать

Я прошу прощения, вопрос не совсем точно был задан.

tesak89 ( 2012-03-01 15:13:45 +0400 )редактировать

Да, бывает. Но вопрос нормально задан.

switch ( 2012-03-01 15:14:56 +0400 )редактировать

необходимо не выдавать информацию в реальном времени, а сделать отчет за день, из которого выводится информация количество пауз и общее время работы оператора

ikt ( 2012-03-01 15:15:51 +0400 )редактировать
0

www.asternic.biz has the best queue_log parser

ссылка удалить спам редактировать

ответил 2012-10-26 07:34:26 +0400

Agustin Gravatar Agustin
1

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2012-03-01 14:49:21 +0400

Просмотрен: 978 раз

Обновлен: Oct 26 '12

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.