Блог bitmanager

Софтфоны под Linux: обзор уродцев

Меня раздражает, да что уж там, откровенно бесит ситуация с софтфонами на Linux.

Вы бы только видели эту толпу рахитичных паралитиков. Большинство из них адски устаревшие и больше смахивают на студенческие поделки.

И не надо мне говорить про unix-way, мол, не нравится, возьми и напиши. А вот не возьму, у меня область приложения усилий другая. Но неужто так сложно написать человеческий софтфон? Без Java, без webkit, с поддержкой групп, BLF, presence и при этом не тормозной? Ну и чтобы к нему дизайнер хотя бы приложился. Хотя бы ногой.

От толпы колченогих уродцев просто плакать хочется. Jitsi таскает за собой Java и обязательно при входящем звонке хочет запустить видео, в итоге задумывается на 3-5 секунд, прежде чем снимается трубка, Zoiper желает бабла даже за трансфер звонка, я уж не говорю про HD-кодеки, X-Liteпросто протух, залипнув на второй версии, его даже с официального сайта качнуть нельзя. Ekiga, Twinkle просто стары как мир, выпускались когда я еще под стол ходил. Ой, простите, ползал. SLFphone мутировал в Ring, который предельно странно выглядит и работает, но вроде как за безопасность. Мне кажется, что SIP  там – сбоку припека. В строю остался только Linphone. Но и с ним не все гладко, бывает подвисает, окно контактов выглядит странно, групп нет, большую часть экрана занимает журнал. В общем дизайн так себе.

Сейчас вот присматриваюсь к Blink. И снова не хватает какой-то элементарной шлифовки. Неплохо выглядит, поддерживает группы в листе контактов, а вот presence работает по RLMI и из коробки Freeswitch не поддерживается. А для менеджмента контактов нужен XCAP сервер. Я, конечно, за идею хранения списка контактов на сервере, можно сразу новым пользователям нужные контакты отдавать, но неужто так сложно сделать стандартный presence на SUBSCRIBE/NOTIFY? Благо протокол старый, как моя жизнь. Нет, вы не поверите, он поддерживается, но только для публикации собственного статуса. Для всего остального обмазывайтесь Kamailio/OpenSIPS и OpenXCAP для любителей особенных извращений. Да и на BYE не всегда корректно реагирует, ты трубку положил, а Blink как бэ и не в курсе.

Закончу свое сообщение на позитивной ноте – нашел отличный консольный SIP-клиент. Их удобно использовать при удаленной отладке по SSH. Называется Baresip. Ладно скроен, крепко сшит. В пакетах нет, по крайней мере под Ubuntu, но легко собирается из исходников, легко настраивается, легко управляется. Требует минимум настроек, поддерживает все необходимое, включая отладку всего и вся. В общем must have однозначно. Кстати не тестил его на 20 одновременных регистрациях, надо будет попробовать. В свое время pjsua для этого пришлось патчить и пересобирать. А вот pjsua пора на покой. Все-таки в управлении он менее удобен.

И напоследок совет для тех, кто будет пробовать. Если baresip падает с ошибкой сегментирования и говорит, что файл существует, удалите в /tmp файл dtmf.out и будет вам счастье.
Записки сисадмина ip-телефония