(VOIP) IP-телефония: что это и как работает для чайников

Связь с другими городами и странами влетает в «копеечку». VOIP (IP-телефония) позволяет общаться с любой точкой мира по приемлемым тарифам. Что это и как работает, не обязательно знать для чайников. Важно уметь применять инновации.

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

Телефонные разговоры, осуществляемые через интернет-протокол, позволяют защитить себя от посягательств злоумышленников и не ограничивать в общении.

Содержание
  1. Особенности VOIP (IP-телефонии)
  2. Что это такое
  3. Как работает связь
  4. Сколько стоят услуги интернет телефонии
  5. Популярные SIP-операторы
  6. VOIP телефония — что это простыми словами
  7. Преимущества IP-телефонии
  8. Особенности работы VoIP
  9. IP-телефония для продаж
  10. Презентация
  11. Часть 1. Об IP-телефонии в общем
  12. Часть 2. Городские номера и 8800
  13. Часть 3. Сервисы на базе телефонии
  14. Часть 4. Оборудование
  15. Часть 5. Организационные вопросы
  16. Заключение
  17. Введение
  18. Быстрая установка из репозитория
  19. Установка из исходников
  20. Настройка iptables, asterisk за NAT, проброс портов
  21. Настройка sip trunk (транка) и добавление номера
  22. Очереди (queues) входящих звонков
  23. Учет и просмотр статистики звонков (cdr viewer)
  24. Онлайн курс «Сетевой инженер»
  25. Помогла статья? Есть возможность отблагодарить автора
  26. Зачем интегрировать IP-телефонию в Битрикс24?
  27. Способы подключения IP-телефонии к Битрикс24
  28. Встроенная телефония
  29. Интеграция сторонней телефонии через SIP-коннектор
  30. Интеграция через приложения в Маркетплейс Битрикс24 или собственную разработку от оператора на базе модуля REST API от Битрикс
  31. Что мы сделали?
  32. SIP-протокол – что это такое
  33. История разработки
  34. Описание и операции
  35. Для чего используется

Особенности VOIP (IP-телефонии)

Такой вариант связи появился относительно недавно. И сегодня завоевывает все больше поклонников.

Что это такое

Соединение абонентов осуществляется через интернет, с использованием различных протоколов. Для чайников подробности организации услуг не нужны. Главное, чтобы связь была качественной и недорогой. Отметим лишь, что сейчас используется два основных протокола:

  • SIP — наиболее популярен, обеспечивает мобильность пользователей с сохранением своего номера;
  • IAX2 — обеспечивает более надежную и качественную связь, но более сложен в организации, обладает слабой защитой от хакерских атак.

Использование современных протоколов позволяет существенно сэкономить трафик, на их основе могут работать разные мобильные устройства, приложения.

Их пользователи получают нижеперечисленные преимущества:

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

Связь абонентов осуществляется через сеть интернет. Звонки на стационарные номера телефонов осуществляются при помощи специальных шлюзов.

Основная масса операторов VOIP (IP-телефонии) предоставляет услуги при помощи SIP, поскольку он более простой в обслуживании и организации услуг.

Как работает связь

Особенности использования протоколов, зачастую, не интересуют рядовых пользователей подобных услуг. Для чайников объясним, как работает связь, на пальцах. Разберем алгоритм соединения двух абонентов максимально доступно:

  1. В состоянии покоя оба аппарата должны быть подключены к интернету и поддерживать соединение с выбранными операторами.
  2. Когда первый абонент набирает внутренний номер второго — серверы находят его местоположение, отправляют ему сигнал.
  3. Если второй абонент примет вызов, соединение будет установлено.

Связь осуществляется через интернет, традиционные телефонные сети здесь не задействованы. Поэтому тарификация осуществляется на основании потраченного трафика.

Сколько стоят услуги интернет телефонии

Увидев незнакомую аббревиатуру и непривычные термины, большинство пользователей теряются, не понимая,  что это. Однако связь через интернет становится все популярнее, ежедневно ею уже пользуются миллионы абонентов.

Чтобы сэкономить средства и порадовать себя подобными услугами, необходимо быть абонентом одного из IP-операторов. Интересно, что связь с абонентами одного провайдера не тарифицируется. Собеседникам достаточно оплатить потраченный на соединение трафик.

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

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

Популярные SIP-операторы

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

Сегодня большое количество сетей, использующих IP-телефония. Наиболее известная — Skype. Связь между абонентами сети бесплатная, независимо от их удаленности друг от друга. Общение между пользователями Skype и традиционных телефонных сетей также незначительно, по сравнению с тарифами обычных АТС (услуга Skypeout). К единственному недостатку оператора можно отнести возможность оплаты услуг исключительно электронными деньгами, отдельными видами банковских карт.

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

VOIP телефония — что это простыми словами

С развитием интернета появилось множество систем и названий, которые незнакомы обычному обывателю. Одна из них – VoIP телефония, что это такое узнать будет полезно каждому.

IP расшифровывается как Internet Protocol, а VoIP – это «голос» протокола, который отвечает за передачу любых данных в интернете. Это может быть рисунок, видео, текст, звонок или любая другая информация. Между VoIP и IP телефонией разница незначительная. Фактически это аналогичные системы, но за качество их работы отвечает SIP. Именно этот протокол гарантирует надёжность передачи информации и установления сигнала между двумя точками в виртуальном пространстве.

Преимущества IP-телефонии

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

  • структурная схема включает использование городского номера или стандартного (бесплатного) – 8-800;
  • стоимость телефонных разговоров через интернет по сравнению с традиционной связью, меньше в несколько раз;
  • регистрация телефонной системы не требует строгой географической привязки, а значит можно менять местоположение без лишних хлопот.

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

Ещё одно колоссальное преимущество относится к сети, которая может работать сразу в нескольких офисах (филиалах), расположенных в разных городах или странах. Таким образом, создаётся обширная корпоративная и многоканальная связь, создающая общение не только с клиентами, но и между сотрудниками. Это экономит время, которое работники могут тратить на «беготню» по кабинетам.

При регистрации VoIP пользователь имеет право выбрать только нужные конкретно ему функции. Например, для частного пользователя подойдут следующие опции:

  • чёрный список;
  • приветствие;
  • автоответчик.

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

  • формирование базы клиентов;
  • настройка голосового меню для перевода звонка на требуемый отдел;
  • ожидание звонка;
  • диалоговые формы.

Настройки можно поменять в любое время через личный кабинет. IP телефония VoIP – это уникальная система, которая делает работу компании удобной и быстрой.

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

Ещё один плюс подключения виртуальной АТС, это скорость подключения и начала работы. Нет необходимости обращаться к операторам, писать заявление, ожидать в очереди, проходить регистрации и т. д. Использование интернет-связи экономит время и деньги, которые уходят на разъезды по компаниям-операторам в поисках выгодного, качественного пакета и быстрого подключения.

Особенности работы VoIP

Организация VoIP телефонии быстро настраивают подключением системы, но чтобы понять суть её работы, следует разобраться в том, как работает стандартное телефонное оборудование и гарнитура через интернет. Особенности системы понятны даже для чайников.

VoIP телефония – это способ приёма и передачи связи между компьютером и любым другим оборудованием, который преобразует звук.

Наушники, микрофон, стационарные или мобильные телефоны могут быть использованы для установки и настройки системы АТС. Способы организации могут быть самые разные. Например, для использования простого телефона требуется установить программы и подключить телефонный адаптер VoIP ATA, который преобразует стандартный протокол в IP-телефон. В этом нет ничего сложного и с установкой стационарного телефона в сеть АТС справится даже неопытный сотрудник. Правда такой способ используют крайне редко, ведь гарнитура подходит больше для обслуживания клиентов по телефону.

Работа шлюза-VoIP позволяет одновременно проводить до 100 звонков без потери качества. Этого достаточно для работы одного, даже самого большого офиса. Сервера способны выдерживать большую нагрузку, поэтому падение связи считается редкостью.

Разобравшись в том, как работает виртуальная телефония, достаточно зарегистрироваться у любого интернет-оператора и подключить себе систему связи. Большая часть функций обходится пользователям бесплатно, а стоимость одной минуты в среднем уменьшена на 60–90% по сравнению со стандартной связью.

IP-телефония для продаж

Представьте, вы что-то продаёте. У вас 3-4 менеджера, которые работают с лидами. Чтобы не терять клиентов и сделки, вы подключаете ЦРМ-систему, например amoCRM.

Начали работу в ЦРМ и понимаете:

  1. Нужен общий номер, чтобы клиенты не думали какому сотруднику звонить.
  2. Нужно записывать разговоры, чтобы при необходимости вспомнить обещанное клиенту.
  3. Нужно контролировать менеджеров на соблюдение скриптов, регламентов и правил обслуживания. Да и просто проверять, не нагрубили ли клиентам и не послали ли их?
  4. Нужно контролировать пропущенные звонки, чтобы купленные за 500 рублей лиды из директа не терялись.

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

Если увидели в этом себя — мой доклад ответит на большую часть ваших вопросов. Если для вас это пройденный этап — то доклад поможет систематизировать полученные знания и опыт, заполнит пробелы.

Если это не про вас, то скорее всего, вебинар вам не подходит и будет пустой тратой времени.

Итак, начнём!

Презентация

Смотрите видеозапись вебинара по этой ссылке:my.webinar.ru/record/575799

Продолжительность вебинара — 1 час 20 минут, доклад — 52 минуты, начинается с третьей минуты записи.

Prezentatsiya-amoCRM

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

Часть 1. Об IP-телефонии в общем

  1. Основные понятия
  2. Отличия от мобильной связи
  3. Ограничения СИП-телефонии7 рекомендаций: Как сберечь нервы в телефонном разговоре

Часть 2. Городские номера и 8800

  1. Виртуальные номераЧто такое СИП-логин, для чего он нужен и как его получить
  2. Как выбрать оператораСписок рекомендуемых операторовИсследование: как выбрать оператора SIP-телефонии?
  3. Прямые звонки4 способа бесплатно звонить на SIP-номера и экономить до 26 %
  4. Федеральные 8800

Часть 3. Сервисы на базе телефонии

  1. Виртуальная АТС
  2. Интеграции с ЦРМКакую ЦРМ выбрать: сравнение систем с телефонией onlinePBX
  3. Холодные звонкиХолодные звонки: ОбЗвонилка, Скорозвон и amoCRM + VoIPТоп-10: почему вы теряете 80% клиентов на холодных звонках
  4. Обратный звонок или колбекВиджет обратного звонка с сайта. Бесплатно. Для всехCallback или обратный звонок — всё что вы хотели спросить
  5. Кол-трекинг«Я слышу мёртвых клиентов». Кол-трекинг: что, как и для кого

Часть 4. Оборудование

  1. Сетевое
  2. ГарнитурыКак установить и настроить SIP-клиент для Android – CSipSimpleКак настроить и использовать SIP-клиент для Android 4 и выше
  3. IP-телефоныИсследование: популярное оборудование для IP-телефонии
  4. Шлюзы

Часть 5. Организационные вопросы

  1. Что почитать
  2. Самостоятельно или аутсорс?5 мифов о холодных звонках в аутсорсинговых кол-центрах
  3. На чём нельзя экономить?

Заключение

В рамках вебинара поверхностно рассматриваются: IP-телефония, виртуальные номера, телефонные сервисы и их возможности, оборудование и оргвопросы. Каждая из тем — отдельный многочасовой вебинар. Когда я последний раз проводил обучение сотрудников, мы потратили пять часов, вместо отведённых трёх.

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

Регистрируйтесь на сайте: onlinepbx.ru/reg.html

Никита Лялин, управляющий партнёр onlinePBXОб авторе

Никита ЛялинУправляющий партнёр onlinePBX

Телефония для бизнеса с интеграцией в любую CRM

Подключить бесплатно

Введение

Не буду останавливаться на описании сервера asterisk, в интернете много информации на эту тему. Да и сам я кратко рассказывал в своих предыдущих статьях про установку. Материал будет объемный, поэтому сразу перейдем к сути.

Статья планируется учебная, поэтому использовать будем голый asterisk без каких-либо web панелей для управления. Выполнять настройку asterisk будем с нуля, то есть с самой начальной установки самого сервера телефонии и всех зависимостей. Если вы разберетесь и освоите этот материал, то потом без проблем сможете настроить и поддерживать любую конфигурацию на основе астериска.

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

Сразу хочу обратить внимание на очень важный момент. Я не являюсь профессионалом в настройке asterisk. Данный материал является калькуляцией всех моих знаний на текущий момент, которые я методично шаг за шагом собирал из доступных в интернете источников. По этой статье вы получите рабочий, многофункциональный сервер телефонии, работу которого я проверял на практике. Но это не означает, что все, что здесь настроено, сделано наилучшим образом. Я постоянно учусь и совершенствую свои знания. Если вы увидите ошибки, недочеты, варианты более правильной и удобной настройки, прошу об этом сообщить в комментариях, я проверю и обновлю статью.

Для примера опишем наш воображаемый офис:

  • Работает 30 сотрудников. Номера будут трехзначные, от 100 до 130.
  • У нас будут 3 отдела — менеджеры, техподдержка, руководство и все остальные.
  • Номер секретаря 100, менеджеры 101-110, техподдержка 111-120, руководство 121-130.
  • Мы будем использовать одного SIP провайдера для звонков.

Кратко получается такая картина. Я не пишу в самом начале о техническом задании, которое буду реализовывать. Каждый момент буду описывать и раскрывать в соответствующем разделе.

Для настройки я буду использовать учетную запись сервиса zadarma.com. Сразу скажу, что в реальной работе я никогда не использовал этот сервис и его качество мне не известно. Беру его для примера, потому что удобно использовать для тестирования конфигурации. Сразу после регистрации вам дают аккаунт, пример настроек для asterisk. Вы можете позвонить на прямой городской номер, ввести добавочный и совершить звонок на свой аккаунт. Это полностью эмулируер работу sip подключения от какого-нибудь провайдера.

В качестве операционной системы у меня выступает CentOS 7. Но для данной статьи это не имеет принципиального значения. Конфигурация астериск кроссплатформенная, без проблем переносится между системами.

Приступаем к нашей работе по настройке сервера телефонии.

Быстрая установка из репозитория

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

Добавляем репозиторий астериск в систему. Для этого создаем файл /etc/yum.repos.d/tuncy-asterisk-13.repo следующего содержания.

[asterisk-common]name=Asterisk Common Requirement Packages @ tucny.combaseurl=https://ast.tucny.com/repo/asterisk-common/el\$releasever/\$basearch/enabled=1gpgcheck=1gpgkey=https://ast.tucny.com/repo/RPM-GPG-KEY-dtucny[asterisk-13]name=Asterisk 13 Packages @ tucny.com baseurl=https://ast.tucny.com/repo/asterisk-13/el\$releasever/\$basearch/enabled=1gpgcheck=1gpgkey=https://ast.tucny.com/repo/RPM-GPG-KEY-dtucny

Обновляем информацию о репозиториях и устанавливаем астериск.

# yum install asteriskУстановка asterisk из репозитория

Установка из исходников

Вопроса установки asterisk я уже касался в своей прошлой статье. Но там я использовал связку с панелью управления freepbx. Здесь же мы будем использовать голый астериск, без обвязок. Более того, я не буду использовать никаких дополнительных плат расширения и модемов. Будет только софтовая АТС, которая легко переносится с одного сервера на другой при желании. Считаю, что такой подход наиболее эффективен и к нему стоит стремиться. Настроив виртуальную машину, вы навсегда будете отвязаны от конкретного железа и спокойно можете переносить свой сервер куда угодно, заменив только сетевые настройки.

Таким образом, нам нужно установить непосредственно asterisk и pjproject с jansson. На первоначальном этапе этого достаточно. Если вы предпочитаете сервер debian, то воспользуйтесь отдельной инструкцией по установке asterisk 13 на debian 8. После этого можете сразу же переходить на следующий этап настройки. Приступим.

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

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

# yum -y install epel-release# yum -y install lynx mariadb-server mariadb php php-mysql php-mbstring tftp-server httpd ncurses-devel sendmail sendmail-cf sox newt-devel libxml2-devel libtiff-devel audiofile-devel gtk2-devel subversion kernel-devel git php-process crontabs cronie cronie-anacron wget vim php-xml uuid-devel sqlite-devel net-tools gnutls-devel php-pear phpmyadmin# yum -y groupinstall core base «Development Tools»

Скачиваем и устанавливаем pjproject:

# cd /usr/src# wget http://www.pjsip.org/release/2.4/pjproject-2.4.tar.bz2# tar -xjvf pjproject-2.*# cd pjproject-2.*# CFLAGS=’-DPJ_HAS_IPV6=1′ ./configure —prefix=/usr —enable-shared —disable-sound —disable-resample —disable-video —disable-opencore-amr —libdir=/usr/lib64# make dep# make# make install

Скачиваем и устанавливаем jansson:

# cd /usr/src# wget -O jansson.tar.gz https://github.com/akheron/jansson/archive/v2.7.tar.gz# tar vxfz jansson.tar.gz# cd jansson-*# autoreconf -i# ./configure —libdir=/usr/lib64# make# make install

Скачиваем и устанавливаем asterisk 13:

# cd /usr/src# wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz# tar xvfz asterisk-13-current.tar.gz# cd asterisk-*# contrib/scripts/install_prereq install# contrib/scripts/get_mp3_source.sh# ./configure —libdir=/usr/lib64

pjproject

# make menuselect

Выбираем необходимые модули и звуки:

  • Add-ons: format_mp3, res_config_mysql, app_mysql и cdr_mysql.
  • Core Sound Packages: Выбираем русские звуки RU-WAV.
  • Music On Hold File Packages: Выбираем звук WAV.
  • Extras Sound Packages: Выбираем английский EN-WAV, русского к сожалению нет.

Выбор параметров установки

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

Продолжаем установку:

# make# make install# make samples# make config# ldconfig

Устанавливаем русскую core озвучку хорошего качества и английскую для extra, русской к сожалению нету:

# cd /var/lib/asterisk/sounds# wget http://downloads.asterisk.org/pub/telephony/sounds/asterisk-core-sounds-ru-wav-current.tar.gz# wget http://downloads.asterisk.org/pub/telephony/sounds/asterisk-extra-sounds-en-wav-current.tar.gz# tar xvf asterisk-core-sounds-ru-wav-current.tar.gz# tar xvf asterisk-extra-sounds-en-wav-current.tar.gz

Добавляем астериск в автозагрузку и запускаем:

# chkconfig asterisk on# service asterisk start

Проверим, запустился ли он, зайдя в консоль:

# asterisk -rПроверка работы asterisk

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

Настройка iptables, asterisk за NAT, проброс портов

Сразу же уделим внимание настройке iptables для работы астериск. У нас может быть 2 ситуации, которые требуют двух принципиально различных настроек:

  1. Сервер телефонии имеет свой внешний ip адрес и напрямую смотрит через него в интернет.
  2. Сервер стоит за шлюзом, не имеет своего внешнего адреса, доступ в интернет с помощью NAT.

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

Я не могу привести универсальные настройки для всех случаев. У каждого будут свои нюансы. Кто-то, к примеру, будет пользоваться phpmyadmin для настройки базы mysql для хранения статистики звонков. Потом эту же статистику будет просматривать через cdr viewer, установленный на веб сервере. Доступ к этому веб серверу можно открыть через внешний IP адрес, а можно только через локальную сеть. Настройки iptables в данном случае будут разные.

В моем примере сервер будет находиться в локальной сети офиса за nat. Доступ в интернет осуществляется через офисный шлюз, на котором установлены iptables. На нем будет сделан проброс необходимых портов для работы внешних телефонных аппаратов. В случае, если у вас все телефоны будут находиться в локальной сети офиса вместе с сервером телефонии, пробрасывать ничего не нужно. С сервисом zadarma все будет работать без проброса портов. Пиры зарегистрируются на внешнем сервере провайдера и этого будет достаточно для приема и совершения звонков.

С другими провайдерами этого может быть не достаточно. В общем случае для настройки asterisk за nat нужно будет на шлюзе пробросить порт 5060 и диапазон 10000:20000. По-умолчанию астериск использует UDP порты. Если вы не будете менять эти настройки, то пробрасывать нужно именно UDP.

В моем случае получается следующая картина. На шлюзе сделан проброс необходимых портов:

iptables -t nat -A PREROUTING -p udp —dst $WAN_IP —dport 5060 -j DNAT —to 192.168.1.25:5060iptables -t nat -A PREROUTING -p udp —dst $WAN_IP —dport 10000:20000 -j DNAT —to 192.168.1.25

$WAN_IP Внешний IP адрес на шлюзе
192.168.1.25 Локальный адрес сервера астериск

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

Настройка sip trunk (транка) и добавление номера

Регистрируемся у какого-нибудь sip провайдера и получаем настройки транков для подключения. Как я говорил выше, я буду использовать провайдера zadarma. После регистрации в личном кабинете я вижу свой логин, пароль для подключения и адрес сервера. Там же можно узнать пример настройки подключения для астериска и номера для тестовых звонков:

  • Номер для эхо-теста: 4444.
  • Информация про остаток на счету: 1111
  • Прямой звонок: Москва +7 (495) 777-66-75 и внутренний номер клиента (логин)

Нам этого будет достаточно для полноценного тестирования конфигурации астериска. Добавляем необходимые настройки sip транка, чтобы выполнить его регистрацию. Редактируем sip.conf, добавляем в самый конец нового пира в соответствии с инструкцией провайдера:

[397945]host=sip.zadarma.cominsecure=invite,porttype=friendfromdomain=sip.zadarma.comdisallow=allallow=alawdtmfmode=autosecret=passworddefaultuser=397945trunkname=397945fromuser=397945callbackextension=397945context=call-inqualify=400directmedia=nonat=force_rport,comedia

В данном случае 397945 мой внутренний номер в сервисе, password — пароль. Сохраняем файл и даем команду астеру перечиать его:

CLI> sip reload

Тут же в консоли, если все в порядке, вы получите сообщение:

chan_sip.c:24403 handle_response_peerpoke: Peer ‘397945’ is now Reachable. (55ms / 400ms)

Это означает, что наш пир успешно зарегистрировался у провайдера. Проверить это можно с помощью уже известной команды:

CLI> sip show peers397945/397945             185.45.152.161                              Auto (No)  No             5060     OK (54 ms)

Все, транк настроили, по сути подключили номер. Но этого не достаточно, чтобы совершать и принимать звонки. Надо отредактировать dialplan.

Очереди (queues) входящих звонков

С помощью очередей в астериске можно управлять потоком входящих звонков, перераспределяя их по определенным правилам. В нашей конфигурации asterisk мы настроим очередь (queue) для направления звонка двум секретарям одновременно. Кто первый ответит, тот и будет разговаривать со звонящим. Если один секретарь уже разговаривает, новый звонок поступит к другому. Если оба секретаря будут заняты, звонящий будет слушать мелодию и ожидать, пока кто-нибудь не освободится. Как только один из секретарей освободится, звонящего из очереди направит на освободившийся номер.

Номер первого секретаря — 100, второго — 130. Я настраиваю простейшую конфигурацию очереди в астериск для понимания принципа работы. Более сложный вариант настройки это сделать 3 очереди для каждого отдела и в голосовом меню-приветствии сделать возможность позвонить в конкретный отдел. Эту конфигурацию я рассмотрю в отдельной статье, хотя в нем и нет ничего сложного. Делается по аналогии с приведенным примером.

Открываем файл queues.conf и добавляем в самый конец:

[secretary]strategy = ringallmember => SIP/100member => SIP/130

Все остальные настройки оставляю по-умолчанию. Параметр strategy может принимать следующие значения:

ringall вызываются все доступные участники до тех пор, пока кто-то из них не ответит на вызов (по умолчанию).
leastrecent Вызывается первый свободный участник, который меньше всего вызывался из этой очереди.
fewestcalls Вызывается первый свободный участник, который обработал наименьшее количество вызовов из данной очереди.
random случайным образом вызывается не занятый участник, обрабатывающий очередь.
rrmemory циклическое распределение с памятью, запоминается последний участник, ответивший на вызов.

Вы можете выбрать наиболее подходящую вам стратегию распределения звонков в очереди. Дальше нужно добавить в extensions.conf в созданный нами ранее контекст с голосовым меню отправку звонка в очередь с секретарями. Для этого меняем строку в [ivr-main]:

exten => t,1,Dial(SIP/100,15)

на новую:

exten => t,1,Queue(secretary,t)

Если раньше при звонке на внешний номер, звонящий не набирал внутренний номер абонента, то через 5 секунд он перенаправлялся к секретарю с номером 100. Теперь он будет отправляться в очередь secretary, в которую мы завели 2 номера — 100 и 130. Можно добавить и больше номеров, если есть необходимость.

Перечитываем полностью конфигурацию asterisk:

CLI> reload

Состояние созданной очереди:

CLI> queue show secretarysecretary has 0 calls (max unlimited) in ‘ringall’ strategy (0s holdtime, 0s talktime), W:0, C:0, A:0, SL:0.0% within 0sMembers:SIP/100 (ringinuse enabled) (Not in use) has taken no calls yetSIP/130 (ringinuse enabled) (Not in use) has taken no calls yetNo Callers

Теперь можете позвонить на внешний номер и дождаться перенаправления на секретаря. Зазвонят оба аппарата. Если оба заняты, звонок будет висеть в очереди и ждать освобождения. После звонка статистика очереди изменится:

CLI> queue show secretarysecretary has 0 calls (max unlimited) in ‘ringall’ strategy (0s holdtime, 2s talktime), W:0, C:1, A:1, SL:0.0% within 0sMembers:SIP/100 (ringinuse enabled) (Not in use) has taken 1 calls (last was 63 secs ago)SIP/130 (ringinuse enabled) (Not in use) has taken no calls yetNo Callers

Вот так легко организовать простую queue (очередь) в asterisk. Более сложные примеры я буду рассматривать в отдельных статьях.

Учет и просмотр статистики звонков (cdr viewer)

Важной и нужной возможностью современной АТС на базе asterisk является сбор и просмотр статистики звонков. По умолчанию, астериск ведет статистику в файле /var/log/asterisk/cdr-csv/Master.csv. Разобрать этот файл и передать куда-то в обработку не очень сложно, если у вас есть что-то или кто-то, кто способен написать на каком-нибудь языке программирования обработку.

Мы будем использовать готовые бесплатные инструменты для просмотра статистики звонков. Все необходимое для этого мы установили в самом начале. Перенесем сбор статистики в mysql базу. Для этого запускаем mariadb сервер, добавляем в автозагрузку и устанавливаем пароль администратора:

# systemctl start mariadb# systemctl enable mariadb.service# /usr/bin/mysql_secure_installation

Подключаемся к mysql и создаем пользователя и базу данных:

# mysql -uroot -pMariaDB [(none)]> create database asterisk;MariaDB [(none)]> use asterisk;MariaDB [asterisk]> CREATE TABLE `cdr` (   `id` int(9) unsigned NOT NULL auto_increment,   `calldate` datetime NOT NULL default ‘0000-00-00 00:00:00’,   `clid` varchar(80) NOT NULL default »,   `src` varchar(80) NOT NULL default »,   `dst` varchar(80) NOT NULL default »,   `dcontext` varchar(80) NOT NULL default »,   `channel` varchar(80) NOT NULL default »,   `dstchannel` varchar(80) NOT NULL default »,   `lastapp` varchar(80) NOT NULL default »,   `lastdata` varchar(80) NOT NULL default »,   `duration` int(11) NOT NULL default ‘0’,   `billsec` int(11) NOT NULL default ‘0’,   `disposition` varchar(45) NOT NULL default »,   `amaflags` int(11) NOT NULL default ‘0’,   `accountcode` varchar(20) NOT NULL default »,   `uniqueid` varchar(32) NOT NULL default »,   `userfield` varchar(255) NOT NULL default »,   PRIMARY KEY  (`id`),   KEY `calldate` (`calldate`),   KEY `accountcode` (`accountcode`),   KEY `uniqueid` (`uniqueid`),   KEY `dst` (`dst`),   KEY `src` (`src`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;MariaDB [asterisk]> grant all on asterisk.* to ‘asterisk_user’@’localhost’ identified by ‘12345678’;

asterisk имя базы данных
asterisk_user пользователь базы данных
12345678 пароль пользователя бд

Устанавливаем odbc коннекторы:

# yum install -y mysql-connector-odbc.x86_64 unixODBC-devel.x86_64

Редактируем файлы конфигурации. Добавляем в самый конец /etc/asterisk/res_odbc.conf:

[asterisk]enabled => yesdsn => MySQL-asteriskusername => asterisk_userpassword => 12345678

В конец файла /etc/asterisk/cdr_adaptive_odbc.conf:

[cdr_adaptive_connection]connection=asterisktable=cdralias start => calldate

Создаем файл /etc/odbc.ini следующего содержания:

[MySQL-asterisk]Description = MySQL Asterisk databaseDriver = MySQLServer = localhostUser = asterisk_userPassword = 12345678Socket = /var/lib/mysql/mysql.sockDatabase = asterisk

Редактируем файл /etc/odbcinst.ini. Я его не трогал, оставил по-умолчанию, только в самый конец секции [MySQL] добавил две недостающие строки. Я не разбирался нужны они или нет, просто подсмотрел в другой инструкции. Вот как этот файл выглядит у меня:

[MySQL]Description = ODBC for MySQLDriver = /usr/lib/libmyodbc5.soSetup = /usr/lib/libodbcmyS.soDriver64 = /usr/lib64/libmyodbc5.soSetup64 = /usr/lib64/libodbcmyS.soFileUsage = 1CPTimeout =CPReuse =

Настроим использование нашего часового пояса в записях cdr. По-умолчанию там стоит часовой пояс GTM. Для этого в файле /etc/asterisk/cdr.conf указываем параметр:

usegmtime=no

После этого перезапускаем астериск:

# service asterisk restart

Совершаем звонок и проверяем таблицу. Для удобства дальнейшей проверки и настройки, я запустил httpd и настроил phpmyadmin. Они должны были установиться в самом начале. Запускаем httpd и добавляем в автозагрузку:

# systemctl start httpd# systemctl enable httpd

С phpmyadmin сами разберитесь, в интернете море инструкций, либо воспользуйтесь моей по установке и настройке phpmyadmin. Теперь астериск сохраняет статистику звонков в mysql базу asterisk в таблицу cdr. Дальше нам надо настроить какую-нибудь web панель для просмотра этой статистики. Я решил сразу установить панель, которая позволяет не только смотреть статистику, но прослушивать записанные разговоры. Поэтому дальнейшая настройка панели просмотра статистики переходит в следующий раздел, в котором я расскажу, как записывать звонки.

Онлайн курс «Сетевой инженер»

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные сети, научиться настраивать VPN с шифрованием, разбираться, находить и устранять проблемы в маршрутизации OSPF и BGP, фильтровать и балансировать маршруты, рекомендую познакомиться с онлайн-курсом «Сетевой инженер» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям. Обучение длится 4 месяца, после чего успешные выпускники курса смогут пройти собеседования у партнеров. Проверьте себя на вступительном тесте и смотрите программу детальнее по ссылке

  • Установка и настройка астериск с нуля
  • Мониторинг asterisk в zabbix
  • Соединение двух серверов астериск
  • Анализ SIP трафика
  • Замена +7 на 8 и наоборот
  • Ограничение на звонки для группы номеров

Помогла статья? Есть возможность отблагодарить автора

Скачать pdf

Зачем интегрировать IP-телефонию в Битрикс24?

  1. Самая очевидная причина — упростить для менеджеров процесс ведения звонков. Раньше они сами вводили информацию в CRM, теперь система будет делать это автоматически. Это удобно и надежно. Данные уже не потеряются из-за невнимательности и усталости специалиста. Настроив интеграцию однажды, мы освободим время менеджеров от утомительной и требующей концентрации работы по выгрузки звонков в CRM и поиска в АТС навсегда.
  2. Также отпадает необходимость вызывать системного администратора для выгрузки журнала звонков. А начальник отдела или директор получают быстрый доступ к отчетам и статистике на портале Битрикс24.
  3. Если в компании параллельно используются CRM Битрикс24 и IP телефония, идея интеграции назревает довольно быстро. Зачем пользоваться двумя инструментами, когда их можно без потерь соединить в один? Также менеджеры получают возможность использовать через Битрикс функционал, которого нет во встроенной телефонии, например, опцию использовать сотовый номер как полноценный добавочный в АТС.
  4. У Битрикс24 как CRM есть одно сильное преимущество в глазах бизнеса: это встроенная телефония. Это возможность быстрой интеграции, можно просто начать звонить из CRM, не тратя время на поиск аналогов. Если у вас уже стоит Битрикс24, подключить IP телефонию проще простого.

Способы подключения IP-телефонии к Битрикс24

В Битрикс24 есть 3 варианта интеграции телефонии.

Встроенная телефония

В Битрикс24 есть встроенная телефония. Она полностью готова к работе. Работает на базе облачной платформы VoxImplant. Положите деньги на счет — и можно звонить. Не нужно никакое оборудование, только браузер (Chrome или Firefox) и гарнитура для менеджера. К вашим услугам разнообразные тарифные планы, баланс средств и детализация расходов.

Как происходит интеграция встроенной телефонии?Просто активируйте опцию и положите деньги на счет.

Кому подойдет?Подключение встроенной в Битрикс24 телефонии выгодно тем, кто только начинает использовать IP-телефонию и не готов разбираться в тарифах и платных опциях.

Интеграция сторонней телефонии через SIP-коннектор

Собственно интеграция подразумевает подключение сторонней телефонии. Это может быть виртуальная АТС либо реальная АТС в вашем офисе. SIP — это один из популярных протоколов IP-телефонии. Битрикс24 работает именно по этому протоколу, поэтому в ней особенно удобно подключать добавочные номера на любое устройство, работающее по SIP-протоколу: IP телефон, программный софтфон или VoIP адаптер.

Как происходит подключение через SIP-коннектор?

  • Берется SIP аккаунт (как добавочный с облачной или офисной АТС ). Для SIP аккаунта на АТС отдельно настраивается логика: все звонки должны идти на этот добавочный аккаунт. Этот аккаунт регистрируется в SIP-коннекторе в Битрикс24. В самом портале вы только задаете логику распределения звонков на ответственных, разные отделы.
  • Практически все платежи вы будете делать оператору связи: аренда номеров, плата за разговоры по тарифам, за пользование дополнительным функционалом. Битрикс24 возьмет деньги только за сам модуль интеграции, SIP-коннектор (около 1000 рублей в месяц). При интеграции через SIP-коннектор настройка маршрутизации, групп и так далее происходит в Битрикс24.

Кому подойдет?Интеграция сторонней телефонии выгодна тем, кто уже ее активно использует.

Интеграция через приложения в Маркетплейс Битрикс24 или собственную разработку от оператора на базе модуля REST API от Битрикс

Ключевое отличие от второго варианта интеграции в том, что REST API напрямую соединяет Битрикс24 и АТС, не нужен SIP-коннектор. Любой оператор связи может взять открытый API и написать свое приложение, которые вы устанавливаете из Маркетплейс Битрикс24. Вы сможете создавать сложные пользовательские сценарии работы и переносить ваши сценарии из своей АТС, напрямую взаимодействуя с CRM. В данном случае почти все настройки на стороне оператора.

Как происходит интеграция через приложение?

  • Первое, что нужно сделать — заплатить за услугу интеграции вашему оператору связи. Техподдержка компании должна предварительно уточнить, какие дополнительные функции АТС нужно подключить вместе с интеграцией.
  • Далее в настройках АТС ищутся идентификационные данные для подключения (сервер, ключ) и копируются в интерфейс приложения оператора на портале Битрикс24. Приложение устанавливается из Маркетплейс Битрикс.
  • Приложение заверит данные и вам останется задать соответствие между сотрудниками на портале и их добавочными номерами на АТС.
  • Основные настройки делаются на стороне телефонного оператора, который предоставляет вам АТС. В самом Битрикс24 не так много настроек, и при интеграции важно, чтобы оператор связи получил точные указания по настройке и функциям.
  • И в финале делается тестирование звонков и функций (журнал звонков, записи, прикрепление к карточкам).

Кому подойдет?Если приложение оператора связи доступно, то мы рекомендуем интеграцию именно через него. В этом случае сохраняется вся логика звонков, прописанная в АТС оператора со всеми ее преимуществами.

Что мы сделали?

  • Отвязали SIP-линии от портала и настроили маршрутизацию этих линий в самой АТС оператора. Прописали всю логику для двух внешних номеров с нуля. Затем мы прозвонили все 15 офисов и Voip адаптеры (устройства для подключения аналоговых телефонов в сеть) перерегистрировали на АТС оператора.
  • От лица клиента связались с оператором и запросили консультацию о том, что, как и зачем сделать в АТС, чтобы все работало здорово и удобно. Клиент оплатил необходимую услугу, мы внесли настройки в АТС, установили приложение оператора на портале, настроили ответственных и кинулись проверять. Разумеется, первое время случались сбои. В свежем решении это всегда нормально.
  • Сейчас клиент уже почти год пользуется настроенным решением и лишь однажды возникла ситуация, где требовалось наше вмешательство как технических специалистов.

SIP-протокол – что это такое

SIP-протокол представляет собой протокол инициирования сеанса связи, активно используемый в IP-телефонии. Он отличается гибкостью и возможностью масштабирования. Он обеспечивает создание, модификацию и завершение сеансов между двумя и более участниками. По своей структуре он похож на протокол HTTP, так как пересылаемые в его рамках сообщения состоят из заголовков и тел. Этими сообщениями обмениваются серверы, прокси-серверы и абонентские терминалы, используемые в телефонии.

Использование SIP-протокола в IP-телефонии обеспечивает:

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

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

Этот же протокол используется для установления сеансов связи в онлайн-играх, устанавливая соединение между игроками.

История разработки

Данный протокол появился на свет в середине 90-х годов, причём в 2000 году он был принят в качестве основного сигнального протокола в мобильной связи. Ещё через два года появляется его вторая версия (SIP 2.0). С той поры он активно используется в IP-телефонии. Тем самым он почти полностью похоронил устаревший протокол H.323, используемый для организации телефонии и сеансов видеосвязи. Долгое время тот был безусловным лидером, но впоследствии его заменил SIP. Что касается H.323, то он используется и сегодня, но вытесняется всё больше и больше.

Аббревиатура SIP расшифровывается как Session Initiation Protocol. Он обеспечивает инициализацию и установление сеансов связи, отличаясь от H.323 своей гибкостью. Но если в H.323 была заложена экономия трафика, то для SIP это не характерно – существующие сегодня каналы связи характеризуются высокой производительностью, что позволяет не экономить трафик. SIP получился более перспективным, он активно используется в IP-телефонии, на его основе работают офисные облачные АТС.

Описание и операции

Основу протокола составляют шесть типов запросов. Первый – INVITE, он является инициирующим, вызывая другой терминал. В описании запроса содержится список сервисов, необходимых для данного сеанса связи. Установка связи подтверждается запросом ACK, в то время как для завершения текущего сеанса используется запрос BYE. Неактуальные в данный момент запросы отменяются запросом Cancel.

Что касается Register, то он определяет местоположение вызываемого терминала. А запрос OPTIONS является предшествующим запросам INVITE и ACK. Он запрашивает функциональные возможности терминала вызываемого пользователя.

SIP-протокол, наряду с абонентскими терминалами, подразумевает использование промежуточных серверов:

  • Прокси-сервера – обеспечивает приём и обработку вышеуказанных запросов.
  • Сервера местоположений – обеспечивает мобильность пользователей IP-телефонии.
  • Сервера переадресации – хранит записи о прокси-серверах и абонентских терминалах.

Все эти устройства взаимодействуют с помощью запросов, приведённых выше. На каждый запрос высылается тот или иной ответ:

  • 1xx – класс информационных ответов, не являющихся завершающими;
  • 2xx – ответы об успешном завершении того или иного запроса;
  • 3xx – абонент изменил местоположение;
  • 4хх – категория сообщений о каких-либо ошибках;
  • 5хх – категория серверных ошибок;
  • 6хх – ответы, связанные с невозможностью вызова абонента.

Иными словами, каждый сеанс установления связи – это обмен запросами с отправкой ответов. Причём SIP-протокол работает поверх транспортных протоколов (чаще всего это TCP и UDP с портами 5060 и 5061).

Для чего используется

Данный протокол активно используется в IP-телефонии, в том числе для работы виртуальных АТС. Пользователи могут вызывать друг друга, обмениваться файлами и мультимедийной информацией, привлекать к установленному сеансу других участников, управлять переводом звонков. Также он используется при проведении сеансов видеосвязи и видеоконференций. Нельзя не отметить и его применение в онлайн-играх, где нужно соединить двух и более игроков. Благодаря гибкости он нашёл своё место в бизнес-процессах, обеспечивая взаимодействие телефонии и бизнес-приложений.