Йоки-Токи на VoIP

В этой статье разберем пример создания маленькой мини-АТС используя самое дешевое железо которое только можно найти - Raspberry Pi Zero W. Следует заметить, то если вы хотите добиться хороших результатов следует использовать старшие модели Rasberr Pi, так как Zero W не обладает достаточным объемом оперативной памяти.

Начнем с железа. Для работы нам понадобятся: Raspberry Pi любой модели. Я буду использовать Raspberry Pi Zero W, так как она самая дешёвая и уже содержит на борту WiFi. Конечно можно использовать и более старшие модели. На процессор рекомендуется сразу наклеить радиатор. Также нам потребуется качественная флеш-карта формата microSD с классом не ниже 10.

Очень важно чтобы sd-карта была высокого качества, я перепробовал карты нескольких типов и большинство из них оказались хуже чем заявлено в характеристиках. Поэтому если после записи образа появляются странные ошибки, или образ оказывается неработоспособным, просто попробуйте повторить также операции с другой картой. Я потратил большое количество времени на чтобы убедиться в том что от качества карты во многом зависит стабильность работы системы.

Также потребуется хороший блок питания на 5 вольт выдающий не менее 2 Ампер.

Для заливки образа на SD карту потребуется любой компьютер под управлением Linux или Windows или MacOS.

Для начала скачаем образ Freepbx. http://www.raspberry-asterisk.org/ http://www.raspberry-asterisk.org/downloads/ http://download.raspberry-asterisk.org/raspbx-04-04-2018.zip

Обратите внимание - последняя версия больше не поддерживает Zero поэтому я взял более старую версию, которая с Zero еще работала.

> wget http://download.raspberry-asterisk.org/raspbx-04-04-2018.zip

Распакуем:

> unzip raspbx-04-04-2018.zip

 

После этого запишем образ Freepbx на sd-карту.

> dd if=raspbx-04-04-2018.img of=/dev/mmcblk0

 

Изменим имя WiFi сети и кодовая фраза

/media/maxim/9a7608bd-5bff-4dfc-ac1d-63a956744162/etc/wpa_supplicant/wpa_supplicant.conf

network={

        ssid="<WIFI Name>"

        psk="<WIFI Password>"

        key_mgmt=WPA-PSK

}

 

После того как как это сделано можно вставлять нашу карту 2 raspberry pi подключать питание. Если все сделано правильно то вы увидите устройство в домашней сети и сможете к получить доступ к нему доступ по ssh. Для того чтобы узнать IP адрес устройства необходимо зайти в админку роутера. правила сделать большинстве домашних роутеров. 

Теперь мы готовы загрузить систему.

 

> ssh root@raspbx.local 

Password: raspberry

> raspi-config

Update,  Change Password, Change Host Name

После того как как система установлена и обновлена установим системные настройки ВК дату и время. И локаль

Advanced Settings, Expand Filesystem Ensures

 

reboot

 

> regen-hostkeys

 

Увеличиваем swap (данный шаг является спорым)

> dphys-swapfile swapoff
> nano /etc/dphys-swapfile #set CONF_SWAPSIZE=1024
> sudo dphys-swapfile setup
> sudo dphys-swapfile swapon

 

Обновление системы.

> raspbx-upgrade 

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

Admin SuperStrongPassword!

После выберим языковые настройки

Установка завершена.

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


 

Запомним имена пользователя и пароли для соединения с SIP сервисами:

101 b2ff8a6d15aaf7d1ba477894dd77378c

102 f76456576e21d06ce397a8ae3675dc9f

 

 

 

 

 

Нажмем Apply Config

 

После того как всё настроено необходимо остановить на сотовые телефоны voip client и попробовать дозвониться на нашу систему. Если все сделано правильно мы видим сигнал вызова на втором клиенте. 

 

 

 

 

 

 

 

после того как система установлена рекомендуется сделать резервную копию Во сколько вся система стоит на карте заверенная копия с лёгкостью записывается в виде образа и затем вы можете распаковать обратно на любой другой если карта если системы произошла какая-нибудь неприятность.