У меня был Raspberry Pi целую вечность .. В конце 2012 года я получил одну бесплатную любезность Paypal на их благотворительном хаке , и наша команда (см. Фото, я там!) Продолжила использовать его для создания (World’s Первый?) Raspberry Pi на основе Wifi Hotspot .
Я хотел сделать что-то потенциально полезное, определенно интересное, и, возможно, какое-то время награждать этим.
Я также недавно приобрел Arduino с Ethernet Shield, так что я тоже думал о другой хакерской платформе.
Помимо этого, я недавно переехала из Лондона в подвальную квартиру у моих родителей.
Мы построили эту квартиру первоначально для моего покойного деда, но после его смерти она некоторое время лежала пустой, и, поскольку я сейчас живу здесь снова, она в значительной степени идеально подходит для меня.
Единственная незначительная проблема заключалась в том, что до недавнего времени он был эффективно изолирован от остальной части дома. Был телефонный кабель BT с двумя парами, первоначально для питания простой 9-вольтовой системы внутренней связи, которая в то же время обеспечивала электрическое соединение для внутренней связи, не подойдет для FastEthernet, не говоря уже о Gigabit.
Поэтому на прошлых выходных мы подключили кабель CAT5e и использовали существующий телефонный кабель для повторной намотки нового кабеля CAT5 … Итак, теперь у меня есть Ethernet.
У меня есть старый телефон CiscoLinksys SPA942, который у меня есть по крайней мере 5 лет, и сейчас … И хотя все это очень хорошо для набора номера, это немного неудобно для моих людей, по крайней мере, пока я не получу местный номер на мой SIP-аккаунт, в противном случае это национальный тариф для набора номера 0203 ..
Поэтому я подумал про себя: «Ну, это телефон с 4 линиями…». Первоначально, я собирался получить подержанный ретро-тримфон или что-то подобное, вырвать кишки и использовать его для размещения Raspberry Pi, подключить USB-звуковую карту и USB Wifi Dongle, а затем использовать его в качестве SIP-трубки, звонить в мою службу AQL VoIP.
Но тогда у меня была идея получше.
Почему бы не скомпилировать FreeSWITCH на Raspberry Pi, а затем использовать свой VoIP-телефон здесь, чтобы зарегистрироваться на нем, и использовать VoIP Softphone на других устройствах моих родителей.
Как выясняется, компиляция FreeSWITCH занимает всего около 6 часов (я удалил modules.conf , отключив IVR, mod_flite и некоторые другие вещи, которые, как мне показалось, не нужны / не нужны).
Однажды я скомпилировал ядро и Gnome 3.0 на старом встроенном ПК с частотой 300 МГц, и это заняло 5 дней. Я очень доволен скоростью компиляции Raspberry Pi.
Я полагаю, если бы я спешил, я мог бы это скомпилировать.
Я не новичок в VoIP, но в прошлом, когда я настраивал УАТС, я всегда использовал Asterisk, и хотя в Raspbian * есть * двоичный пакет Asterisk, я не * на самом деле * люблю Asterisk и их формат конфигурации Dialplan заставляет мои глаза кровоточить.
Мой хороший друг Ричард ( @pobk ) большой поклонник FreeSWITCH, поэтому я подумал, что пора посмотреть, о чем идет речь. Если когда-либо есть хороший тест для приложения, оно работает в сильно ограниченной системе, как с точки зрения мощности процессора, дискового пространства и памяти.
Моя единственная небольшая жалоба — количество библиотек, необходимых для сборки / запуска FreeSWITCH.
Вот что я побежал строить:
sudo apt-get install build-essential sudo apt-get install git-core build-essential autoconf automake libtool libncurses5 libncurses5-dev make libjpeg-dev pkg-config unixodbc unixodbc-dev zlib1g-dev sudo apt-get install libcurl4-openssl-dev libexpat1-dev libssl-dev screen screen -S compile #inside a Screen cd /usr/local/src git clone git://git.freeswitch.org/freeswitch.git cd freeswitch ./bootstrap.sh <edit modules.conf> ./configure make && make install && make all install cd-sounds-install cd-moh-install
Общий установленный размер составляет 550 МБ. Я уверен, что я мог бы получить это, так как 500 МБ из этого — каталог звуки /
Я думаю, что если бы у меня была вторая попытка, я бы беспокоился только о частоте дискретизации 8 кГц. (замена cd-sounds-install на звуки-установка)
Я также пробежался по этому http://wiki.freeswitch.org/wiki/Freeswitch_init#Debian.2FUbuntu
Затем сконфигурировал скрипт init.d, основанный на скрипте на этой странице. Не забудьте изменить переменную FS_GROUP на «daemon»
Краткий (очень) тест с sipp, и примерно через минуту он обрабатывает 700 соединений, а средняя нагрузка составляет около 190;).
Он по-прежнему принимает звонки, и задержка голоса составляет около 10 секунд.
Поскольку это будет обрабатывать только один или два вызова одновременно, я думаю, что это довольно хороший результат.
Я настроил 5 устройств, все с использованием стандартных, предварительно настроенных расширений 1000-1004, а затем настроил группу звонков.
Я использую « Телефон» на своем Mac, http://www.zoiper.com/ на своем Android (и) и «Arkphone» на iPad моей мамы.