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

Передача номера входящего абонента в WEB-страницу

0

Добрый день. Имеется: Asterisk (Без всяких FreePBX, настроенный вручную конфигами). Имеются внутренние номера операторов call-центра. Звонки поступают операторам из очереди. Каждый оператор регистрируется в самонаписанном web-интерфейсе. Через этот web-интерфейс он осуществляет поиск по клиентской базе данных (в MySQL).

Цель: Передать в web-интерфейс внутренний номер, на который пришел входящий звонок из очереди, и номер звонящего абонента. Все должно быть в режиме real-time или по таймеру (например раз в 5 секунд).

спросил Jun 21 '13

Николай Gravatar Николай
1 1 2

обновил Jun 21 '13

5 Ответов

1

С точки зрения веба для ваших целей - вебсокеты лучше чем ажакс определенно. Если интерфейс на PHP, то рекомендую обратить внимание на Ratchet http://socketo.me (там есть некоторые проблемы с обработкой сессий, но это уже скорее тема для другого портала). Точнее хорошо сработает сочетание Ratchet плюс Marcelog PAMI + Autobahn JS. Можно использовать другие библиотеки при желании или реализовывать стек и работу с Астериск менеджером самому. Если используется очередь то устанавливаете обработчик на AMI событие "AgentCalled", там-же увидите АОН. если все-таки остановитесь на ajax схеме и не захотите к примеру связываться с AMI, то смотрите CEL (Asterisk Channel Event Logging) - можно проставить метку времени для вновь добавляемых строк - default NOW() и выбирать только недавние события теоретически...

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

ответил Jun 21 '13

octopas Gravatar octopas
111 5 1 3

обновил Jun 21 '13

0
exten => s,n,Dial(SIP/101,30,tTM(incoming_answer^101)) 

[macro-incoming_answer]
exten
=>s,1,System(/path/to/your/script/script.(php/py/sh) ${ARG1})

при ответе вызовется ваш скрипт которому передается в качестве аргумента ${ARG1} (то есть 101)

несколько аргументов соотвественно

exten => s,n,Dial(SIP/101,30,tTM(incoming_answer^101^${EXTEN})) 

[macro-incoming_answer]
exten
=>s,1,System(/path/to/your/script/script.py ${ARG1} ${ARG2})

и т.д. а в свой скрипт пишите бросалку запросов в ваш сервис или запись в БД или еще что

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

ответил Jul 8 '13

godlike Gravatar godlike flag of Ukraine
814 92 24 62

Comments

Подскажите,а где это вы настраиваете, в каком конфиге?

corsarik (Jul 12 '13)edit
0

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

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

ответил Jun 22 '13

komrad123 Gravatar komrad123
3810 5 3 44

обновил Jun 22 '13

0

FOP/FOP2 умеет вызывать ссылку по приходящему звонку. тоесть писать ничего не надо.

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

ответил Jun 22 '13

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

Comments

как вариант можно подождать * 12 и stasis-http

octopas (Jun 24 '13)edit

Кто нибудь реализовал сиё? Тоже понадобилось передавать номер входящего абонента на web-страницу...

corsarik (Jul 8 '13)edit

что там реализовывать. там в документации написано КАК.

meral (Jul 8 '13)edit
0

В самом астериске есть astman.js , рекомендую обратить внимание на его исходники и примеры к нему. Суть алгоритма довольно проста: 1. На странице , где сидит юзер запускается astman,js и инициализируется. 2. Ожидает нужного события (если из очереди, то AgentCalled, а если просто Dial, то по желанию от Ringing то Link,Bridge,etc.) 3. Выводит нужную информацию или как-то по-другому управляет броузером.

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

ответил Jun 26 '13

rad Gravatar rad flag of Ukraine
106 5
http://www.pearlpbx.com/

Comments

в доках много раз написано что это не для работы с оконечным пользователем через интернет. скорее такое подойдет для интеграции в nodejs. все-таки необходим промежуточный слой между юзером и Астером - нехорошо полагаться на Астеровский ACL для этой функции ИМХО...

octopas (Jun 26 '13)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 ленту новостей

Статистика

Задан: Jun 21 '13

Просмотрен: 2,104 раз

Обновлен: Jul 08 '13

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