Рубрика «asterisk» - 22

Asterisk в примерах: балансировка каналовВсё больше и больше организаций выбирают для телефонии не астрономически дорогие, жутко запутанные и ограниченные по функционалу готовые ATC, а современный, расширяемый и абсолютно бесплатный софт, который можно установить на любой дистрибутив Linux. Самым известным и широко распространённым решением для телефонии на базе Linux является, безусловно, Asterisk.

К сожалению для системных администраторов, Asterisk недалеко ушёл от корпоративных АТС в плане простоты настройки. Безусловно, Asterisk может, пожалуй, всё, что только возможно вообразить, но ценой этому является далеко не тривиальная настройка.

У меня за время работы с Asterisk накопилось множество различных примеров конфигурации. Полностью цифровые факсы с возможностью отправки из любого приложения в один клик, интеллектуальная запись звонков, всякие штуки с IVR и т.д. и т.п. Будет заинтересованность — со временем выложу.

В этом же посте хотелось бы поделиться системой простой балансировки исходящих соединений исходя из «веса» канала. Простейший пример, для чего это может понадобиться — звонки через обычные SIM нескольких операторов с безлимитными тарифами. У всех операторов есть некое максимальное значение минут, которые можно бесплатно проговорить в рамках тарифа в месяц. Поэтому хотелось бы распределить исходящие звонки по симкам в некой пропорции.
Читать полностью »

Предпосылки

В жизни любой крупной развивающейся компании рано или поздно встаёт вопрос о расширении возможностей телефонной станции и переходе от классической телефонии к IP.

Далёкой весной 2011 и перед нашей компанией встал такой вопрос, т. к. внешние и внутренние линии требуют постоянного расширения, а количество портов на старом Panasonic KX-TA624 было задано статично и расширению не подлежало. Открытие офисов в других городах и внедрение единой службы по работе с клиентами в других городах так же подталкивало к качественным переменам.

Техническое задание

Конечный продукт должен иметь следующие характеристики:
1) иметь большое количество (в нашем случае не менее 100) внешних и внутренних линий и быть готовым к расширению;
2) уметь приветствовать пользователей в рабочее время и сообщать о том, что они позвонили в нерабочее время, когда никого нет на месте;
3) таймауты переадресации при не ответе/занятости/недоступности должны настраиваться индивидуально;
4) должны быть предусмотрены очереди. Очередь — группа номеров, распределение звонков внутри которой происходит по определенным правилам;
5) записывать лог сообщений (как текстовый, так и аудио);
6) иметь гибкую политику распределения прав на внешние звонки. Должны быть предусмотрены пользователи, которые могут звонить только на внутренние номера; на городские номера; на любые номера;
7) в зависимости от времени суток, звонить на тот или иной номер. Читать полностью »

В данном посте я расскажу вам о возможностях отправки уведомлений о пропущенных звонках с помощью Asterisk. Я постараюсь привести простые примеры конфигурации и подробнее раскрыть данную тему, далее вы можете экспериментировать по своему усмотрению или потребностям. Asterisk предлагает довольно широкие возможности для решения различных задач, поэтому одну и ту же задачу можно решать по разному, главное результат — стабильная работа ваших сервисов.

Отправка отчета о пропущенном звонке на email

Что имеем:
Входящая многоканальная линия с номером +7 (495) 1234567, IVR, 4 оператора в очереди вызова.

Задачи:
1. Отправлять отчет о пропущенном звонке, с указанием номера звонящего, времени поступления звонка и времени ожидания на линии.
2. Если абонент ждал на линии более 10 секунд и по какой-либо причине положил трубку, не дождавшись ответа оператора — отправляем отчет о пропущенном звонке.
3. Заносить в БД (в текущем примере MySQL) данные о том, какой оператор в очереди ответил звонок и фиксируем время в которое разговор был завершен.

В качестве решения приведу пример конфигурации (один из возможных вариантов решения), с комментариями на самых интересных по-моему мнению моментах.
Вот так выглядит конфигурация IVR рабочего времени + очереди вызова:

[globals]
CIDFILE=/etc/asterisk/inc-calls/call-noanswer
SQLHOST=db.domain.ru
SQLUSER=asterisksql
SQLPASS=Gt6Rju8FkS
SQLDB=asteriskdb
IVRWORK=custom/IVR_company_wav

[incoming-74951234567]
exten => h,1,Set(WAITTIME=10)
exten => h,n,Set(CTALL=$[${CDR(duration)}])
exten => h,n,Set(CTANSWER=$[${CDR(billsec)}])
exten => h,n,Set(CTDTIME=$[${CTALL}-${CTANSWER}])
exten => h,n,NoOP(${CDR(disposition)})
exten => h,n,NoOP(${CTDTIME})
exten => h,n,GotoIf($["${CDR(disposition)}" = "NO ANSWER"]?timecheck:n1)
exten => h,n(n1),GotoIf($["${CDR(disposition)}" = "BUSY"]?timecheck:n2)
exten => h,n(n2),GotoIf($["${CDR(disposition)}" = "FAILED"]?timecheck:n3)
exten => h,n(n3),GotoIf($["${CDR(disposition)}" = "ANSWERED"]?n4:misscall)
exten => h,n(n4),MYSQL(Connect connid ${SQLHOST} ${SQLUSER} ${SQLPASS} ${SQLDB})
exten => h,n,MYSQL(Query resultid ${connid} UPDATE office_calls SET active=0 WHERE asterisk_id='${QID}')
exten => h,n,MYSQL(Clear ${resultid})
exten => h,n,MYSQL(Disconnect ${connid})
exten => h,n(hang),Hangup()
exten => h,n(timecheck),GotoIf($[${CTDTIME} > ${WAITTIME}]?misscall:hang)
exten => h,n(misscall),Goto(noanswer,s,1)
exten => s,1,NoOp(${CALLERID(num)})
exten => s,n,Set(CALLID=74951234567)
exten => s,n,Set(CALLER=${CALLERID(num)})
exten => s,n,Set(__QID=${CDR(uniqueid)})
exten => s,n(begin),GotoIfTime(10:00-22:00,mon-sat,*,*?workdays:outofoffice)
exten => s,n(workdays),NoOp(Incoming CALL from ${CALLERID(num)} to ${EXTEN})
exten => s,n,Answer()
exten => s,n,ResetCDR(w)
exten => s,n,Wait(1)
exten => s,n,Background(${IVRWORK})
exten => s,n,Queue(operators,t,,,300,,startflag1)
exten => s,n,NoOp(${DIALSTATUS})
exten => s,n,Goto(noanswer,s,1)
exten => s,n,Hangup()

Читать полностью »

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

Утро

Не могу больше спать, болит живот. На часах четыре. Офис в Новосибирске уже онлайн. Спрашиваю Ирину, какие новости.Читать полностью »

Звонки внутри организации с Корпоративного портала
Многие организации используют массу разнообразных информационных систем и технических решений для обеспечения и облегчения своей работы. Рано или поздно встает вопрос об интеграции этих систем и решений, и нередко выбор «связующего звена» принимается в пользу веб-технологий. В такой момент перед веб-программистом возникает необходимость всеми этими доселе незнакомыми продуктами и решениями овладеть.

В данной статье я опишу процесс интеграции:

на примере создания системы звонков с точки зрения веб-программиста.

Читать полностью »

Asterisk распознавание речи через Google + умный IVR

Доброго времени суток, уважаемые хабра-пользователи.
В одном проекте необходимо было сделать умный IVR на базе IP-АТС Asterisk. Что подразумевается под словом «умный»: при звонке на определенный номер станция просит назвать имя абонента, человек на другом конце провода называет имя и станция связывает его с нужным абонентом.

В моем случае я использовал уже готовую сборку AsteriskNow с уже предустановленным FreePBX, хотя в данном случае это особой роли не играет, т.к. отличия будут только в редактировании dial-плана.

Читать полностью »

Здравствуйте, уважаемые читатели и любители астериска!
Хочу поделиться интересной задачей и вариантом её решения. Итак, вот условия задачи.
Имеем:
— модифицированный дистрибутив Elastix 2.3
— asterisk 1.8.13.1
— FreePBX 2.8.1
— 24 номера подключением по sip и 30 каналов
— ~40 различных ООО в составе холдинга
Текущая задача:
— сделать callback сервис для каждого номера DID (и соответственно от каждого ООО)

Казалось бы, «это же freePBX — там всё делается мышкой». Это не совсем так.
Читать полностью »

image

Сервисы бесплатных звонков (имеются ввиду звонки на стационарные и мобильные номера, но не сервисы типа Skype, Tango и т.д.) существуют довольно давно, с конца прошлого века.
Некоторые из них не дожили до наших дней, некоторые наоборот, появились совсем недавно.
Во всех подобных сервисахЧитать полностью »

Так случилось, что в короткие сроки появилась необходимость перевезти 70 человек с аналоговыми телефонами из одного бизнес центра в другой. Ситуация усугублялась тем, что в новом офисе у владельца не было аналоговых портов в АТС, а АТС в старом принадлежала телефонной компании. Пришлось в короткие сроки внедрять IP телефонию с переносом всех аналоговых городских линий на Asterisk. Поставка оборудования была назначена на день предшествующий дню переезда, что означало — времени на развертывание телефонии будет очень мало.

Что из этого вышло под катом.
Материала много, так что не пугайтесь.
Читать полностью »

в 11:02, , рубрики: asterisk, CRM, я пиарюсь, метки: ,

​Программа AsteriskNotifier является собственной разработкой компании «X telekom» и предназначена для управления списком контактов с возможностью набора номера и определения входящих вызовов. Интегрируется с IP АТС Asterisk и Вы можете позвонить человеку просто нажав на номер телефона. При входящем звонке всплывает карточка абонента со всеми его данными.

Для чего нужна программа AsteriskNotifier?

AsteriskNotifier даст экономию времени менеджера для обслуживании клиента. Менеджер сможет поговорить с большим количеством клиентов. Во время общения, менеджер сможет занести информацию об абоненте в справочник, добавить новые данные, отправить письмо клиенту.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js