Добрый день,
Есть Битрикс24 (Bitrix24-коробочная версия). Шлюз DINSTAR G2000-8E. Сервер с телефонией на базе: Asterisk +FreePBX оболочка.
Задача от заказчика:
настроить Dinstar после полного сброса (т.е. он сделал на Dinstare полный reset)
настроить роутинг на Dinstare по определенным симкам:
- с 0 по 5 сим-карту, звонки должны идти на группу менеджеров в Битрикс24
- с 6 по 7 сим-карту, звонки должны идти на группу бухгалтеров в Битрикс24
все это связать с Bitrix24, как 2 отдельные АТС (для роутинга между 2 группами менеджеров и бухглатеров)
Задача тривиальная, но проблема была в том, где именно мы собираемся роутить звонки на шлюзе или в Астериске ?
Далее я опишу процесс интеграции с детальными настройками, как , где и что было сделан по этапам.
—————————–GSM-шлюз DINSTAR DWG2000E-8G-B Business—————————–
Со шлюзом оказалось все и просто и сложно одновременно, ну по первых – клиент его сбросил, и нужно было ему объяснить как к нему подключится (при том что он по DHCP не получает IP-адрес) Default settings DISNTAR, DISNTAR to default, DISNTAR 2000G to default.
тут все просто:
– Подключаете его в сеть в порт: FE0, FE1
– вбиваете жесткие настройки IP-адреса на Вашем ПК: IP:192.168.11.10 , Mask:255.255.255.255, DNS:192.168.11.1
– заходите на шлюз черезе браузер, просто вводите его IP-адрес: http://192.168.11.1/enFrame.htm (выглядит это так)
– В меню: Net configuration > Obtain IP address automatically (если Вы опытный юзер, тогда ручками забейте IP адрес Вашей сети)
– Сохраняете и перегружаете (далее возвращаетсь в Вашу сеть, ищите его IP по MAC на роутере, и заходите на него (если Вы жестко прописали айпи, тогда просто заходите используя его)
1) Нам нужен список СИМ-КАРТ с номерами телефоном и порядком, по которому они вставлены в шлюз, далее проверяем в меню: System Information > Mobile Information , статусы наших карт.
Если Вы видите что все карты зарегистрированы, шлюз видит Operator, Signal, IMEI, IMSI, Status: Mobile Registered – тогда можно продолжать настройку.
2) Заходим в меню: Calls Configuration и начинаем настройки Вашего DINSTAR DWG2000E-8G-B (ниже я буду писать только те меню, где я менял настройки):
> SIP Configuration
– SIP Server Address: Указываете IP адрес Вашего сервера (если у Вас домен, напишите в гугле, как узнать IP домена, он Вам поможет) или просто укажите домен 🙂
– SIP Server Port(default: 5060) – он Вам говорит что по дефолту порт 5060, но мы к примеру использовали 9050 (по этому будь-те внимательны)
– Check Net Status: “yes”
> All Ports Register Used Same User ID – “No”
> Use Same Local Sip Port – “No”
From Mode when Caller ID Is Available – “Tel/Tel”
Этого будет вполне достаточно.
3) В меню: Port Configuration настраиваем подключение к каждой нашей Сим-карте, это одна из главных настроек, пожалуйста будь-те внимательны.
Я опишу Вам логику, по которой я создавал подключение:
– Каждой симкарте я давал SIP USER ID в таком порядке: номер порта/оператор/номер симки , что у меня получилось:
0MTS1 , 1KS1, 2LIFE1, 3KS2, 4MTS2, 5KS3, 6MTS3, 7KS4 (т.е. у нас 3 карты Vodafone(MTS), 4 Карты Kievstar и одна Карта Lifecell
– Пароль у всех одинаковый, нет смысла с этим заморачиватся
– Local SIP Port, указываем порт на котором работает астериск на сервере: 9050 в нашем случае
– Один из главных моментов: To VOIP Hotline – это контекст который будет обрабатывать астериск для входящих звонков, тут я указываю номер телефона: 0999999999 (В дальнейшем Вы поймете зачем это было нужно, при настройке Астериск)
– По аналогии я сделал остальные карты: Юзер айди,общий пароль, порт, номер телефона через 0
4) Дополнительные настройки:
>Service Parameter
– Only Accept Calls from SIP Server – Yes
– Allow Call from GSM to IP without Registration – Yes
– Allow Call from IP to GSM without Registration – Yes
>Media Parameter
– Preferred Coders(in listed order): 1-PCMA, 2-PCMU, 3-G.723.1, 4-G.729AB.
5) Осталось совсем немного. Делаем роутинг звонков адресацию входящих и исходящих звонков в меню: Routing Configuration.
>Routing Parameter (выбираем как будет работать правило)
– IP->Tel Parameter: Route calls after manipulation
– Tel->IP Parameter: Route calls after manipulation
>IP->Tel Routing (Исходящие звонки) Тут мы делаем все 8 позиций, т.е. берем дефолтный – нажимаем Modify:
– Index: 31
– Description: default
– Source Prefix: any
– Source IP: Sip Server
– Description Prefix: any
– Port Group 0
* И так проделываем для каждой сим-карты . должно быть 8 настроек на каждый порт. Все теперь исходящий роутинг успешно настроен (его можно было сделать и через Port Group, ну тут каждый делае на своё усмотрение)
>Tel->IP Routing (Входящие звонки) Тут мы делаем все одну позицию из дефолта, т.е. берем дефолтный – нажимаем Modify:
– Index: 31
– Description: default
– Source Prefix: any
– Source : Выбираем any (т.е. все порты)
– Description Prefix: any
– Destination: SIP Server
* Что мы сделали? – взяли звонки со всех портов и направили их на сип сервер, на котором далее мы сделаем роутинг для каждой сим-карты отдельно, благодаря ранее вписаному параметру: VOIP Hotline
ИТОГ: Ваш GSM-шлюз DINSTAR DWG2000E настроен успешно. Теперь он готов принимать и делать исходящие звонки через наш SIP server на базе Астериска.
————–Asterisk установлен на Centos 7 с оболочкой FreePBX для управления————–
По поводу самого астериска говорить буду в кратце, так как он уже был настроен (имею введу: собран на сервере, поставлены все нужные модули: DAHDI, ODBC-коннектор, накачена оболочка FreePBX и т.д.)
Доступ к серверу у меня конечно же был, для настройки IPTABLES и FAIL2BAN
Но настройки Астериску я задавал только через оболочку FreePBX.
Приступим, по шагово:
- Создал 2 пользователя в меню: Extension (buhgalter – 1000 , manager 2000)
Это те данные которые нужны нам при создании АТС в Битрикс24, о чем я писал ранее,а именно когда нажимаем Подключить “ОФИСНУЮ АТС” вот там и вводим все это.
(Тут по логике Для АТС Бухгалтеров – buhgalter – 1000 , для Менеджеров – manager 2000)
* Для тех кто не любит читать – Дальше будет очень полезная инфа по настройке транков, исходящих и входящих звонков.
Советую создать так же тестового юзера (третьего и зарегистрировать у Вас в зойпере для манипуляций и тестирования звонков!
- Теперь задача №2 подключить Trunk’s в FreePBX по тем настройкам которые даст нам Битрикс24 (после создания АТС в меню: “Входящие звонки”)
В 3-тем пункте это будте описано, он нам даст: Адрес сервера,Логин и пароль.
Заходи в FreePBX > Connectivity > Trunks > Add SIP (chan_sip) Trunk
– важные поля: Trunk Name (тут у меня будет 2 транка, как и ранее называл по нуждам: Buhgalter и Manager)
– Ниже Trunk Name дублирую информацию
– И вот главный момент: PEER Details тут вносим всю информацию которую я привожу ниже (просто копируем, это взято из официального источника- Википедия Битрикс24)
`
disallow=all
allow=ulaw&alaw
dtmfmode=rfc2833
fromdomain=ip.b24-********.bitrixphone.com(То что Вам дал битрикс в поле сервер)
type=friend
host=ip.b24-********.bitrixphone.com(То что Вам дал битрикс в поле сервер)
fromuser=sip25*(То что Вам дал битрикс в поле логин)
username=sip25*(То что Вам дал битрикс в поле логин)
secret=12345678900987654321(То что Вам дал битрикс в поле пароль)
insecute=port,invite
conext=contex-internal
nat=yes
qualify=yes
`
*Теперь Ваш транк успешно зарегистрируется и можно будет отправлять Ваши звонки из Астериска на Битрикс24 успешно.
- Теперь создаем 8 транков (это транки на подключение к 8-ми сим-картам на GSM-шлюз DINSTAR DWG2000E).
Выходит что к каждой карте мы подключаемя отдельно, спросите Вы зачем? – Что бы зароутить каждую сим-карту на нужную нам АТС в Битрикс24 для входящих и исходящих звонков
Все просто ребят, берем настройки из шлюза, напоминаю я каждой сим карте дал адекватный порядковый номер, один и тот же пароль для подключения, так же я и назову свои транки.
Пример для транка нулевого транка – Сим-карта – 0
`
username=0MTS1 (логин Вашей симки)
secret=1qaz2wsx3edc (Пароль Вашей симки)
host=dynamic
type=friend
disallow=all
allow=alaw&ulaw (!Важно, это кодеки с которым будет работать астериск, если не укажите будет ругаться что G729 не доступен)
qualify=yes (Пингуем наши симки, не обязательно, но мне так захотелось)
dtmfmode=auto
context=from-trunk (Контектс который указывает что входящие звонки с сим-карт будут заходить в Inbound route в FreePBX)
`
Остальные сим-карты шлюза подключены по аналогии, изменяется только USERNAME
- Теперь проходим в меню: Outbound Routes и создаем настройки исходящих звонков.
Так как напоминаю, у нас 2 группы пользователей Buhgalter и Manager , я сделал 2 типа исходящих роутов:
KSforManager
Dial Patterns that will use this Route – тут важно только данное меню, в нем я прописываю возможность набора на Киевстар с помощью +380 и 380, а так для кто имеет возможность набирать (В нашем случае это manager 2000)
+38 [06 [78]. / 2000] – здесь разрешено набирать чере +380 номера 067,068 для Extension 2000
+38 [09 [678]./ 2000] – здесь разрешено набирать чере +380 номера 096,097,098 для Extension 2000
38 [06 [78]. / 2000] – аналогия
38 [09 [678]./ 2000] – аналогия
И далее направляем, куда же будут идти наши звонки (на какие транки):
Trunk Sequence for Matched Routes:
В нашем случае я направляю на
-1KS1 (сим-карта в шлюзе на порте 1 Киевстар)
-3KS2 (сим-карта в шлюзе на порте 3 Киевстар)
-5KS3 (сим-карта в шлюзе на порте 5 Киевстар)
Что получаем? – исходящие звонки дут через 1-3-5 симки Киевстара, если 1 занята, тогда идет на 3-тью и так далее)
MTSforManager
Dial Patterns that will use this Route
“Делаем по аналогии выше”
LifeforManager
Dial Patterns that will use this Route
Даю подсказу по лайфу:
+38 [06 [679]3. / 2000] – здесь разрешено набирать чере +380 номера 063,073,93 для Extension 2000
“Делаем по аналогии выше”
и
KSforBuhgalter
+38 [06 [78]. / 1000] – здесь разрешено набирать чере +380 номера 067,068 для buhgalter – 1000
+38 [09 [678]./ 1000] – здесь разрешено набирать чере +380 номера 096,097,098 buhgalter – 1000
38 [06 [78]. / 1000] – аналогия
38 [09 [678]./ 1000] – аналогия
Но, в меню: Trunk Sequence for Matched Routes, указываем Сим-карты для Бухгалтеров:
-7KS4 (сим-карта в шлюзе на порте 7 Киевстар)
MTSforManager
“Делаем по аналогии выше”
LifeBuhgalter
“Делаем по аналогии выше”
ALLCALL FOR CITY (все исходящие на городские номера – ранее об этом не писал, но в Астериске у нас уже имелся транк от Укртелекома для городских номеров)
+38 [0 [1-9]. / ]
38 [0 [1-9]. / ]
Но, в меню: Trunk Sequence for Matched Routes, указываем транк от Укртелекома
Итог: У Вас теперь 7 направляний для исходящих звонков, направленных на нужные Вам Сим-карты на GSM-роутере
- Теперь проходим в меню: Inbound Routes и создаем настройки входящих звонков.
Тут все очень просто. Ранее на шлюзе мы сделали настройку HOT line для каждой сим-карты, тем самым мы сказали шлюзу отдавать в астериск параметр extension номер телефона через 0, а значит
в поле DID Number мы теперь указываем нужный нам номер через 0, пример:
Route 0 – Inbound
Description: 0MTS1
DID Number: 0999999999
Set Destination: Trunks > Manager 2000
Обязательно не забываем, что есть городские номера, и если у Вас заведен в АСТЕРИСК ТРАНК от Укртелекома,Интертелекома или другого провайдера, Вам нужно Все звонки направить на Битрикс, по аналогии:
Route 0 – Inbound
Description: UkrTelecom
DID Number: имя_транка_которое нам дал Укртелеком или входящий номер 0441111111
Set Destination: Тут самостоятельная работа. Нужно создать группу в меню: Aplication > Ring Roup > в которую добавить оба Ваши Extension 1000 2000 (с новой строчке, не через запятую) и дальше на эту группу направить звонок
Set Destination: Ring Group > ALLGROUP (вызовы будут идти на оба подключения в Битрикс24, так как по городским нам не нужна разбивка на 2 офиса)
Что касаемо настроек Bitrix24 – продолжение следует во второй статье.