Как человек, который очень новичок в проектах PBX с открытым исходным кодом, таких как Asterisk
и FreeSWITCH
, я борюсь с некоторой перегрузкой информации. Прочитали основные документы FreeSWITCH на Wiki, но все еще есть несколько вопросов. Поскольку я не очень хорошо знаком с терминологией, я попытаюсь использовать близкие аппроксимации.FreeSWITCH минимальная установка и выбор модуля
Попытка создать небольшую/минималистичную сборку FreeSWITCH, которая должна работать на довольно старом ноутбуке (Celeron 1GHz, 512MB RAM, 20GB HDD, уже запущена Debian «Wheezy») и настроена как 6- порт GSM-SIP/Jabber. Таким образом, под «малым» и «минималистичным» я имею в виду тот, у которого нет модулей/дополнительного программного обеспечения, которое не является абсолютно необходимым (например, нет необходимости в объявлениях IVR или интеграции Skype) - чтобы сохранить максимальную занимаемость памяти и занимают меньше объектов на жестком диске.
Грубая идея состоит в том, чтобы иметь 6 портов GSM (через «GSM-open module», аналогично chan_dongle) в сторону общественной телефонной сети и около 60 расширений SIP, а также поддерживать до 6 вызовов с использованием портов GSM и около 6 SIP -SIP-вызовы (внутри PBX), на этой настройке. Я прочитал, что накладные расходы процессора модуля GSMopen довольно низки, поэтому я предполагаю, что это возможно.
- Может кто-то подтвердить, что это реалистичная цель?
- Какой может быть минимальный набор модулей для минималистской сборки?
- Для модулей, не выбранных во время начальной сборки, могут ли они быть добавлены позже? Если это так, потребовалось бы мне полностью пересоздать FreeSWITCH, только модули или все, что было бы построено, но потребуются только изменения конфигурации, чтобы обеспечить загрузку модулей и настройку?
- Есть ли какая-либо приблизительная оценка того, что может быть максимальной скоростью вызова, которая может поддерживаться в такой конфигурации? Для вызовов SIP-SIP? Учитывая недостаточный процессор и небольшую ОЗУ (в соответствии с современными стандартами), я предполагаю, что оба должны быть узкими местами, но добавление ОЗУ может быть возможно (даже если это дорого и сложно).
- Я прочитал, что «крючки» могут быть созданы с использованием Lua/Python/Java и т. Д. Однако, если кто-то делится несколькими примерами того, что все возможно, используя такие крючки, это сделало бы концепцию понятной. Можно ли надеяться написать приложение, такое как «пропущенный журнал вызовов» или «перенаправить без ответа», используя эти перехватчики?
У меня есть пример IVR для python в https://github.com/olivecoder/freeswitch-ivr – olivecoder