PhonerLite. Обзор и настройка.
PhonerLite это программный телефон с поддержкой обширного количества протоколов. В рамках данной статьи мы рассмотрим его характеристики, а так же произведем его настройку для его подключения его по SIP.
Основные характеристики программного телефона и краткое описание:
Этот телефон предназначен для организации аудио вызовов.
Возможности:
- SIP-агент согласно RFC3261
- Аудиокодеки: G.711, GSM-FR, Speex. При помощи плагинов: AMR и iLBC
- DTMF
- ENUM
- Преодоление NAT посредством STUN
- Поддерживает современные методы шифрования
Преднастройка:
Настройка будет производиться на Asterisk 13.18.2 , версия centos 6.9, а в качестве web интерфейса используется FreePBX 13.0.192.19
Если вы не знаете, какая версия CentOS или Asterisk используется у вас, то это можно узнать ниже
Версия CentOS:
Нужно подключиться к АТС через ssh, в нашем случае мы будем использовать программу PuTTY. Подключитесь к IP ATC с помощью PuTTY
Зайдите как root пользователь
И выполните следующую команду cat /etc/redhat-release
Эта команда так же подходить для любого дистрибутива основанного на дистрибутиве RedHat.
Версия Asterisk:
Для того, чтоб узнать версию asterisk, достаточно ввести следующую команду asterisk –rvvv
В дистрибутиве нашей компании используется специальные сокращенные команды и вместо команды «asterisk –rvvv» можете использовать просто «a». В результате выполнения команды вы так же попадете в CLI.
Предположим, что у нас софтфон находит на следующем внешнем ip 80.246.247.97. Перед тем, как приступить к регистрации нового ip-телефона/софтфона необходимо добавить ip-адрес этого устройства в iptables иначе возникнут проблемы с регистрацией или прохождением голоса. Для этого выполняем следующие шаги:
Переходим в раздел /usr/src
Теперь нам нужно выгрузить правила в какой-то текстовый файл. В нашем примере это будет файл под названием «dd».Выгружаем наши правила с помощью следующей команды
iptables-save > dd
Перед тем как править iptables рекомендуется на всякий случай создать дамп старых правил и назвать его, к примеру, dump_21_05_2018, это позволит в случае ошибки быстро откатиться к старым правилам
После чего откройте любым удобным для вас текстовым редактором файл «dd». В нашем случае мы будем использовать текстовый редактор nano.
Прописываем ip-адрес оператора
И теперь выходим командой CTRL+C и не забываем сохранить настройки кнопкой «Y»
Все. Файлик мы изменили и подготовили, теперь осталось его загрузить. Выполняется это следующей командой: iptables-restore < dd
Теперь, чтоб после перезагрузки АТС не сбились настройки нужно сохранить изменённый iptables. Выполняем команду «service iptables save».
И так, если вы все сделали правильно, то в списке разрешенных адресов окажется необходимый нам ip. Это можно проверить с помощью команды iptables –L -nv
Отлично, мы добавили адрес и теперь можем приступить к непосредственной регистрации и настройки номера.
Стоит отметить, что если вы используете наш дистрибутив, то для изменения iptables лучше всего использовать наш скрипт fw_iptables.sh который в случае потери доступа к станции через 120 секунд восстанавливает настройки iptables по умолчанию.
Так же для работы корректной работы нужно чтоб на сетевом оборудовании и в iptables были открыты следующие порты:
5060 udp Порт получения телефонной сигнализации модулем chan_PJSIP
5061 tcp Порт получения защищенной телефонной сигнализации модулем chan_PJSIP
10000-20000 udp — Получение RTP потока в рамках SIP сессии (Стандартно для FreePBX distro)
В дистрибутиве который предоставляет наша компания для rtp используется следующий диапазон портов 36600-39989 . Учитывайте это, если вы используете наш дистрибутив.
Перечисленные выше порты можно изменить в рамках графического интерфейса FreePBX в модуле Sip settings
IP route (не обязательный пункт):
В подавляющем количестве случаев для успешной регистрации телефона/софтфона и прохождения звука в обе стороны достаточно внести ip адрес в iptables, но иногда, в зависимости от настроек сети, на АТС требуется дополнительно прописать маршруты.
Посмотреть действующие маршруты на АТС можно с помощью команды
# ip route
Чтоб добавить новый маршрут нужно прописать ip-адрес оператора и шлюз
Рекомендуется сначала добавлять временные маршруты т.к в случае ошибки может нарушиться работа АТС и/или вы потеряете доступ к станции. Однако, после перезагрузки АТС или же сетевого интерфейса (команда # service network restart ) эти правила сбросятся.
Чтоб маршруты сохранялись нужно прописать адрес в файл в route-eth0 который находится по следующему пути: /etc/sysconfig/network-scripts/route-eth0 . Как и ранее открываем этот файл с помощью nano.
В следующем формате:
ADDRESS=80.246.247.97
NETMASK=255.255.255.255
GATEWAY=10.20.0.3
После чего сохраняем. Проверить, появился ли новый маршрут можно с помощью команды
# ip route
Настройка: Установку Phone будем проводить на Microsoft Windows 7. Данный программный телефон можно скачать с официального сайта разработчика по следующей ссылке: http://www.phoner.de
Переходим во вкладку Download
На этой вкладке можно посмотреть историю изменений программы и скачать на выбор несколько версий. К примеру, давайте скачаем портативную версию которая не требует установки.
Распаковываем архив любым удобным вам способом в любую папку
Для распаковки данного архива более чем достаточно будет использовать свободный файловый архиватор 7zip, который можно скачать бесплатно с сайта автора https://www.7-zip.org/
Открываем папку и запускаем программу
Начинаем настройку. Нажмите на «микросхему» выделенную красным
Выбираем SIP
Теперь вновь нажимаем на микросхему
И попадаем в настройки
Для успешно регистрации достаточно указать следующие параметры:
Username: Здесь указываем ваш sip-номер, он совпадает с внутренним sip-номером пользователя.
Phone number: Аналогично первому пункту
Proxy/Registrar: IP вашей АТС
Local port: Указываем порт (если вы используете стандартный порт то тут ничего менять не нужно)
Preferred connection type: Указываем тип подключения
Displayed name: Отображаемое имя (Не обязательный пункт, но желательный)
Заполняйте по аналогии ниже и не забудьте поставить галочку в чек-боксе рядом с Register.
Нажимаете ОК. Все. Если вы все сделали правильно, то статус будет «зеленым», а вы сможете совершить звонок. К примеру, на свой мобильный.
Есть проблемы с регистрацией? Тогда переходите в следующую главу.
Возможные проблемы при регистрации:
Самые распространенные проблемы, с которыми вы можете столкнуться при регистрации любого IP-телефона или софтфона — самые банальные. Чаще всего это неправильный или слишком длинный пароль.
Некоторые модели телефонов и софтфонов не поддерживают пароли длиннее 10-12 символов (К примеру, некоторые модели телефонов granstream страдают от этого), учитывайте этот момент при регистрации нового телефона. Учитывайте, что случайный пробел так же может быть воспринят системой как символ и связи с этим регистрация не пройдет
Делайте пароль не длиннее 10-12 символов. Так же по поводу символов, в большинстве случаев телефонные аппараты не поддерживают спец.символы (@#$%^~ и.т.д) и лучше их не использовать при составлении/генерации пароля.
Для дебга выполните вход в консоль asterisk.
Чтоб зайти в консоль asterisk в дистрибутиве от нашей компании достаточно выполнить команду из одного символа «a». Если вы используете обычный FreePBX Distro и его производные, то команда имеет следующий вид: # rasterisk или # asterisk -rvvvvv. Ключ -rvvvvv отвечает за уровень отображения дебага.
Пример ошибки SIP Registrations в консоли asterisk:
Обычно, при неправильно введенном пароле (или логине) всплывает следующая ошибка в консоли:
Так же учтите, что после 3-4 попыток регистрации с неправильным паролем IP-адрес телефона может быть внесен в список банов. Если после нескольких попыток с неправильной регистрацией в консоль ничего не падает, то следует проверить список банов. В нашем дистрибутиве, в зависимости от настроек можно проверить двумя следующими способами:
Первый способ – iptables:
iptables -L –nv (если вы так же хотите посмотреть используются ли нестандартные порты то введите #iptables -L -nv -t nat )
Список банов ip телефонов можно посмотреть в разделе Fail2ban-SIP
Второй способ – через ipset:
Если через iptables не удалось проверить список банов, то используйте следующую команду:
# ipset –L
В обоих случаях для разбана можете использовать следующую команду:
# service fail2ban restart
Вторая распространенная проблема — deny и permit указанные в asterisk. Если телефон попробует зарегистрироваться из сети, которая не включена в список разрешенных сетей, то будет примерно следующая ошибка:
Если телефон не регистрируется и запрос на регистрацию не падает в консоль asterisk, то следует проверить настройки firewall. К примеру, чтоб разрешить из какой-то сети подключаться по SIP (в том числе и провайдерам) в нашем дистрибутиве мы используем iptables. Предположим, что нам нужно разрешить доступ для подключения SIP-телефонов из под сети 192.168.12.0. Будем править выгрузкой правил iptables.
Подключаемся по ssh к станции, вводим логин root и ваш пароль
Мы попали на стартовый «экран», с основной информацией о системе. Перед всеми манипуляциями необходимо сделать дамп правил.
Даже если вы уверены, что та или иная небольшая правка не может что-то сломать все равно сделайте дамп правил iptables с помощью которого в случае чего можно будет вернуть работоспособность системы.
Переходим в папку src с помощью команды cd /usr/src
Выгружаем правила при помощи следующей команды iptables-save > dump
Проверим, появился ли файлик с сохраненными правилами при помощи команды ls –l . Как видно на скриншоте выше – файлик успешно создан. Можем приступать к редактированию правил. Аналогичным образом выгружаем правиал еще раз, но на этот раз имя файла будет не dump, а предположим «dd».
Теперь открываем созданный файлик любым текстовым редактором. К примеру, я буду использовать nano.
Текстовый редактор nano не является стандартным в Centos и прежде чем его использовать – его нужно установить. Его можно установить, выполнив следующую команду: yum install nano
Зашли, спускаемся к цепочке -A SIP -j PHONES и прописываем следующее: -A SIP -s 192.168.12.0/24 -j ACCEPT
Прописали. Теперь осталось сохранить.
Нажмите CTRL + X
Y, а затем Enter.
#iptables-restore < dd
#service iptables save
#service iptables restart.
Проверить правила можно с помощью iptables –L –nv, которая выведет все действующие правила.
Так же бывает проблема с удаленными сотрудниками в виде подвисших NAT-сессий. Для устранения нужно либо удалить подвисшую nat-сессию, либо перезагрузить роутер, либо использовать другой протокол (если по каким-то причинам в данный момент нет возможности перезагрузить роутер или же удалить подвисшую сессию) к примеру, с udp на tcp. Так же проверьте правильность настроек NAT на телефоне и на пире, а так же протокол передачи. В обоих случаях они должны быть идентичны. Если на пире будет выставлен tcp, а телефон будет пытаться подключиться через udp, то такую попытку регистрации сервер отобьет.
Так же возможные проблемы из-за некачественного сетевого кабеля. В зависимости от ситуации телефонный аппарат может вовсе не зарегистрироваться или же зарегистрироваться, но при тестовом исходящем или входящем телефон перейдет в статус unreachable, вызов на трубку не поступит и только когда вызов завершиться он перейдет в статус ok и телефонный аппарат вновь будет доступен. В таком случае нужно проверить качество кабеля специальным тестером, или сразу заменить неисправный кабель.
Настройка файрвола на маршрутизаторах Mikrotik (ссылка на нашу статью https://voxlink.ru/kb/voip-devices-configuration/mikrotik-firewall/)
Настройка маршрутизатора Mikrotik (ссылка на нашу статью https://voxlink.ru/kb/voip-devices-configuration/mikrotik-config/)
Резервирование интернет-канала на маршрутизаторах Mikrotik (ссылка на нашу статью https://voxlink.ru/kb/voip-devices-configuration/mikrotik-rezerving/)
Настройка приоритезации VoIP-трафика на маршрутизаторах Mikrotik ( https://voxlink.ru/kb/voip-devices-configuration/mikrotik-voip-traffic-configuration/)
Правильная настройка маршрутизатора позволит избежать множества проблем с регистрацией ip-телефонов и софтфонов.
Вам может быть это интересно:
На смартфонах, основанных, на ОС андроид начиная с 4 версии есть встроенный voip-клиент по умолчанию. О настройке встроенного клиента для IP-ATC Asterisk вы можете в нашей статье «Настройка SIP-клиента для Android 4 и выше» (ссылка на наш сайт https://voxlink.ru/kb/ip-phones-configuration/iphone/nastrojka-sip-klienta-dlya-android/ )
Остались вопросы?
Я - Кондрашин Игорь, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.
категории
- DECT
- Linux
- Вспомогательный софт при работе с Asterisk
- Интеграция с CRM и другими системами
- Интеграция с другими АТС
- Использование Elastix
- Использование FreePBX
- Книга
- Мониторинг и траблшутинг
- Настройка Asterisk
- Настройка IP-телефонов
- Настройка VoIP-оборудования
- Новости и Статьи
- Подключение операторов связи
- Разработка под Asterisk
- Установка Asterisk
VoIP оборудование
ближайшие курсы
Новые статьи
10 доводов в пользу Asterisk
Распространяется бесплатно.
Asterisk – программное обеспечение с открытым исходным кодом, распространяется по лицензии GPL. Следовательно, установив один раз Asterisk вам не придется дополнительно платить за новых абонентов, подключение новых транков, расширение функционала и прочие лицензии. Это приближает стоимость владения станцией к нулю.
Безопасен в использовании.
Любое программное обеспечение может стать объектом интереса злоумышленников, в том числе телефонная станция. Однако, сам Asterisk, а также операционная система, на которой он работает, дают множество инструментов защиты от любых атак. При грамотной настройке безопасности у злоумышленников нет никаких шансов попасть на станцию.
Надежен в эксплуатации.
Время работы серверов некоторых наших клиентов исчисляется годами. Это значит, что Asterisk работает несколько лет, ему не требуются никакие перезагрузки или принудительные отключения. А еще это говорит о том, что в районе отличная ситуация с электроэнергией, но это уже не заслуга Asterisk.
Гибкий в настройке.
Зачастую возможности Asterisk ограничивает только фантазия пользователя. Ни один конструктор шаблонов не сравнится с Asterisk по гибкости настройки. Это позволяет решать с помощью Asterisk любые бизнес задачи, даже те, в которых выбор в его пользу не кажется изначально очевидным.
Имеет огромный функционал.
Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.
Интегрируется с любыми системами.
То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.
Позволяет телефонизировать офис за считанные часы.
В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.
Отличная масштабируемость.
Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.
Повышает управляемость бизнеса.
Asterisk дает не просто набор полезных функций, он повышает управляемость организации, качества и комфортности управления, а также увеличивает прозрачность бизнеса для руководства. Достичь этого можно, например, за счет автоматизации отчетов, подключения бота в Telegram, санкционированного доступа к станции из любой точки мира.
Снижает расходы на связь.
Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.
Здравствуйте, помогите пожалуйста, если сможете, конечно. Сразу попрошу без глупых вопросов типа: «а установить программу, прежде чем звонить, пробовали?» или «А зелененький шарик горит внизу с надписью авторизован?» и прочие попытки уличить меня в дилетантстве без желания помочь, оставьте при себе пожалуйста. Я не дебил и в ПО разбираюсь, работал с разными и на разных платформах. У меня такая проблема: Вставляю номер телефона в строку, нажимаю кнопку с зеленой трубкой. Короткие гудки у всех номеров, дозвониться не могу вообще ни до кого. Причем происходит это, почему-то, только днем, или вечером, по утрам звонилка работает исправно, правда не всегда, сегодня до… Подробнее »