В данной статья я хочу рассмотреть интересное решение от компании Aastra – это AMC (Aastra Mobile Client).
AMC – это SIP клиент для мобильных телефонов, позволяющий абоненту получать доступ к стандартным службам офисной АТС. Благодаря такой интеграции, пользователи могут совершать звонки со своих смартфонов напрямую через корпоративную телефонную сеть, использую для этого Интернет через сети Wi-Fi или мобильные сети GSM (3G/EDGE/GPRS).
Помимо классических телефонных функций, AMC позволяет: обмениваться мгновенными сообщениями, устанавливать статусы присутствия, настраивать интеллектуальную маршрутизацию вызовов по наименьшей стоимости в сети мобильной связи (MLCR), работать в двух режимах (Dual Mode GSM/Wi-Fi), иметь возможность использования локальных SIM-карт в поездках (Travel SIM) и обеспечивает интеграцию с корпоративными справочниками.
AMC клиент доступен для большинства известных устройств, работающих под управлением мобильных ОС: Android 2.3 и выше, iOS 6 и выше, BlackBerry RIM 6.0 и 7.0, Symbian.
Для взаимодействия AMC и коммуникационной системы (PBX) требуется AMC контролер (AMCC). AMCC может быть как программным (разворачивается в среде vmware), так и аппаратным (отдельная «коробочка»). AMCC соединяется с телефонной станицей, с помощью B2BUA – логического элемента в приложениях, работающих с протоколом SIP или через SIP-транк.
Решение от AMC может быть легко интегрировано в любую уже существующую SIP-инфраструктуру, достаточно иметь на IP-PBX несколько свободных SIP-аккаунтов и организовать SIP-транк в сторону контроллера AMC.
AMC – это платное решение, каждый пользователь в системе должен быть пролицензирован. В зависимости от требуемого функционала, приобретаются соответствующие лицензии (например, Travel SIM enabled, AMC+ Basic Mobile Presence and IM и т.д.). Сами клиенты, которые устанавливаются на смартфоны, бесплатны и могут быть скачены, например, из Google Play или App Store.
После покупки лицензий, у вас появляется доступ на AMC portal, через который осуществляется настройка AMC клиентов.
Принцип и особенности работы AMC
В нашей демо-лаборатории, совместно с моим коллегой Alexand3010, была развернута программная версия AMCC (на виртуальной машине под управлением vmware ESXi 5.1). Помимо этого в нашем распоряжении было несколько IP-АТС разных вендоров, например: Aastra MX-ONE 5.0 SP3, Aastra 400 v3, Mitel MCD 6.0/vMCD 6.0, FreePBX Asterisk 11.2.1.
Схема нашей лабораторной установки представлена на изображении ниже
Как следует из схемы, все коммуникационные устройства находятся за NAT, в одной подсети – 172.19.19.0/24. На роутере заданы правила трансляции IP-адресов и соответствующих портов.
Для правильной работы AMCC, в случае его программного исполнения, необходимо соответствующим образом настроить ваш граничный firewall, который будет правильно транслировать IP-адреса и порты в сторону AMCC. Это необходимо в связи с тем, что наш контроллер программный, и у него всего один сетевой интерфейс (LAN), в отличие от аппаратного, где есть еще WAN-порт. Благодаря чему аппаратный AMCC одним концом смотрит в Интернет (WAN), а другим в локальную сеть (LAN) и занимается всей необходимой трансляцией.
Список портов для обязательной трансляции на firewall, при использовании AMCC под vmware:
- 448 – для HTTPS callback
- 5061 – TCP для VoIP TLS (шифр.)
- 5062 – TCP для обычного SIP
- 35000-65000 – UDP для передачи RTP (голос)
Теперь более детально рассмотрим, как же все это работает:
- Пользователь устанавливает на свое мобильное устройство программный клиент (для соответствующей ОС). На изображении — версия для OC Android.
- На AMC портале создается профиль настроек для AMCC, содержащий SIP Proxy IP, SIP Proxy Port, CB Server Host, Transport Mode.
Для нашего случая эти настройки выглядят так:
• SIP Proxy IP = 195.5.5.5
• SIP Prox Port = 5062
• Transport mode = TCP
• CB Server Host = 195.5.5.5 - Там же на AMC портале, заводятся абоненты, для которых указываются: мобильный номер телефона в международном формате (+79XXxxxxxxx), мобильная ОС, SIP Username, SIP Password. Далее, нажимаем Send AMC user account key, чтобы отправить (через SMS или E-mail) пользователю ключ для авторизации.
- На IP-PBX создаем SIP-транк в сторону AMCC и заводим несколько SIP-аккаунтов, под которыми будут регистрироваться AMC клиенты.
- На AMCC (контроллере) в разделе Telephony, указываем необходимые параметры.
- Внешний IP-адрес для NAT. AMCC содержит в себе функционал SBC (Session Boarder Controller) и для корректной работы с IP-PBX за NAT, необходимо указать внешний IP адрес для NAT. А также включить pinhole, для передачи RTP через NAT.
- Порты по умолчанию
- Профиль правил набора (для базовых настроек ни на что не влияет)
- Устройства (PBX), с которыми будет связываться AMCC.
В нашем случаи список сопряженных устройств довольно внушительный, т.к. проверялась возможность интеграции с оборудованием разных вендоров.
- SIP настройки для связи с PBX
- Настройки SIP trunk
- Параметры регистраций sip-аккаунтов на PBX, где PBX Number – sip-номер на АТС, PBX Password – пароль для регистрации соответ. Sip-номера
- Соответствие пользовательских аккаунтов в AMCC и PBX
- Привязка мобильного номера к аккаунту на AMCC
- Внешний IP-адрес для NAT. AMCC содержит в себе функционал SBC (Session Boarder Controller) и для корректной работы с IP-PBX за NAT, необходимо указать внешний IP адрес для NAT. А также включить pinhole, для передачи RTP через NAT.
- Теперь проверяем в разделе Diagnostics → FMC, видит ли AMCC наши PBX и соответствующие SIP-регистрации
- Через установленный, на мобильном устройстве, AMC-клиент пробуем авторизоваться в системе (необходимо иметь доступ к сети Интернет через Wi-Fi или 3G). Для этого (в Android) на главном экране нажимаем функциональную клавишу и попадаем в меню настроек, снова нажимаем функциональную клавишу и выбираем Download configuration. Нас просят ввести AMC user account key (мы получили его по SMS или email) и номер мобильного телефона (который был указан на портале).
После успешной регистрации, наш AMC клиент стал абонентом корпоративной IP-PBX, ему присвоен внутренний номер, который был задан ранее в п.4
Для возможности совершать звонки через мобильный Интернет, необходимо в настройках указать VoIP over 3G
Интересная особенность обнаружилась, при запуске AMC клиента, на смартфоне iPhone 4. При вводе регистрационных данных (номера телефона и кода доступа) на программной клавиатуре AMC клиента (под iOS) не оказалось знака «+», чтобы ввести номер в международном формате. Вместо этого пришлось вводить «00». Что это – ошибка или так и задумано, выяснить не удалось.
В следующих публикациях мы рассмотрим, как в AMC реализуются такие функции как: Callback (обратный звонок), Instant Messaging (служба обмена мгновенными сообщениями) и Presens (установка статусов присутствия).
Автор: mrppa