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

Как сделать выброку CDR через Realtime

0

Есть задача программно получить записи  таблицы. Как для этой задачи воспользоваться механизмом Realtime?

спросил Apr 16 '12

jorikfon Gravatar jorikfon flag of Russian Federation
130 9 1 10
http://www.telefon1c.ru/

обновил Apr 16 '12

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/

Comments

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

meral (Apr 16 '12)edit

1 Ответ

2

в общем прочитать можно тут http://voip.rus.net/tiki-index.php?page=Asterisk+RealTime

кокректно делается так

1) идете в resmysql.conf или resodbc.conf по выбору(обычно mysql), прописываете там базу например вот так

2) /etc/asterisk/extconfig.conf

[settings]

;<conf filename> => <driver>,<databasename>~np~[~/np~,table_name~np~]~/np~

 cdr
=> mysql,asteriskcdrd,cdr

3) в диалпане пишите

http://www.voip-info.org/wiki/view/Asterisk+func+realtime

exten => _X.,1,Noop(${REALTIME(cdr,accountcode,1234)})

смотрите вывод и действуете соответсвенно(cut, пеерменные и так далее)

маленький хак. если нужно сложное условие делается вот так

exten => _X.,1,Noop(${REALTIME(cdr,'calldate>\'2012-01-01\' and calldate<\'2012-02-02\'' --,1234)})

в этом случае -- сработает как коментарий внутри mysql и будет использоваться ваше условие.

плюсы - все соединения к базе открывает астериск, делает пул, работает внутри астриска и быстро.

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

ответил Apr 16 '12

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/

обновил Apr 16 '12

Comments

Хм, интересно. Спасибо. Правильно ли я понимаю что должен быть установлен соответствующий драйвер ODBC в системе для данного решения?

jorikfon (Apr 16 '12)edit

вопросы одбс не рассматриваются. если mysql то должен быьт скомпилен в астериске. для одбс надо и скомпилен в астриске,и установлен драйвер, и в системе DSN работать коректно.

meral (Apr 16 '12)edit

ну то ж сдр а не реалтайм. у них обратная задача, извлеч записи.

meral (Apr 16 '12)edit

Тут возникает проблема с тем что нужно кастомизировать установленный и работающий asterisk, не каждый на этот шаг пойдет. Если ставить систему с нуля, то без проблем можно сделать что угодно. В реале мы постоянно сталкиваемся с тем что нужно лезть в рабочую систему, это многих останавливает. Через ODBC мы можем с компьютера пользователя лазить в базу CDR напрямую не трогая вообще Asterisk.

jorikfon (Apr 16 '12)edit

А вообще для 1С-ки пишут внешнюю компоненту, а она уже через AMI взаимодействует с Asterisk.

bolshoy_plohish (Apr 16 '12)edit

Мы ее и пишем.

jorikfon (Apr 16 '12)edit

ну так и лазте напрямую. зачем тогда астериск трогать то? одбс драйвер для мускл вполне доступен.

meral (Apr 16 '12)edit

У нас есть 3 варианта на текущий момент. 1. Для тех к кого есть деньги на сервер 1С (приложение позволяющее выполнять фоновые задачи) - мы ловим по ajam CDR эвенты и складываем в 1С, после чего вся обработка и работа с историей происходит внутри 1С. Самый лучший, но самый затратный для клиента. До 15 реалтайм пользователей 1С обычно не покупают сервер. 2. Обращение из 1С клиента к базе CDR используя ODBC драйвер. Удобно, не надо костылей, но на каждом компьютере надо ставить mysql коннектор и открывать доступ средствами mysql или выносить mysql вообще за периметр Asterisk сервера, тогда еще на Asterisk надо ODBC ставить. 3. Вариант костыли из соседнего поста, возможно перепишем с использованием PHPAGI. Ну и возможно в качестве лабораторного теста соберем Realtime для изучения.

jorikfon (Apr 17 '12)edit

у вас странные костыли. это как костыли из бивней мамонат в мегаполисе. кажися проще ведь с 1с по http запросить,нет? а скрипт который это выдаст вообще тривиальный. и выдаст вам сразу в csv. вообщем извините, но вам lead программиста надо уволить.

meral (Apr 17 '12)edit

Мы исследуем разные варианты. Страницу PHP генерирующую XML структуру c историей звнков мы попробуем сделать. В этом плане нам очень понравилось то как отдает историю Switchvox. Наверное попробуем оттуда взять логику.

jorikfon (Apr 17 '12)edit

выборка статистики с такогото по такоето в 1c это час разобы. но вы иследуйте конечно. еще раз говорю, меняйте lead.

meral (Apr 17 '12)edit

Не получится менять, лид я.

jorikfon (Apr 17 '12)edit

вот засада. тогда ищите консультанта или архитекта.

meral (Apr 17 '12)edit

Ваш ответ

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 ленту новостей

Статистика

Задан: Apr 16 '12

Просмотрен: 1,030 раз

Обновлен: Apr 16 '12

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