Pull to refresh

Comments 68

Большое спасибо за статью.

>Asterisk — это решение IP PBX для офиса, хотя многие операторы связи пытаются использовать систему для оказания различных сервисов для своих клиентов

У меня вот как раз «тот случай». У кого-нибудь есть инфа, когда ждать граблей? Иными словами, сколько девайсов (peers) можно подцепить к asterisk, и сколько одновременных звонков (g711) через него можно пропустить?
Bидел примеры по 1000 пользователей, но от 100 нужно думать о втором сервере как горячей замене.
UFO just landed and posted this here
Я регулярно натыкался на проблемы Т.38 (передача факсов), её могут потребовать ваши клиенты. К сожалению, руки ещё не дошли посмотреть что в последних 1.6 и 1.8 релизах с Т.38

Так же, возможно из-за недостатка времени периодически возникают проблемы с передачей dtmf в сопряжениях с Cisco CCM и MERA

Как правильно уже комментируют — нагрузка может быть и более 1000 звонков, но тут уже желательно дописывать свои скрипты для управления всем этим хозяйством.
Т.38 решаются установкой сборки астериска 1.4.39 под названием Attrafax, в которой факсы весьма неплохо допилены
Проблема не в том, что нагрузку не держит. А в том, насколько надежно он ее держит. В Asterisk используется механизм блокировок, который начинает давать сбои при высокой конкуренции. Возникает так называемая взаимная блокировка, deadlock.
www.google.ru/search?q=asterisk+deadlock

Также Asterisk не извлекает никакого преимущества от многоядерности.

Еще у него часто проблемы с утечкой памяти. Tuning Asterisk для операторского решения — высший пилотаж :-))

Но несмотря на все свои недостатки, Asterisk такой вкусный!!! Мы сейчас активно изучаем коммерческую систему от Digium — SwitchVox, закрытый Asterisk. Плюемся… :-) На Asterisk'e бы уже 10 раз решили ту или иную задачу.

Asterisk — это самый навороченный телефонный Lego конструктор, другим до него далеко.
Я проблему утечек и прочего решил просто. Не обновляю версию, если она не течет и ничего более свежего не требуется. Пока работает уже N лет :)
Спасибо за статью.

P.S: У вас хороший музыкальный вкус, понравилась это идея :)
Если понравилась музыка, заходите в наш блог — asteriskblog.ru
Там уже много музыки ;-)
Спасибо за статью!
Вопрос
другие утверждают (и я в том числе!), что для обоих продуктов есть место на рынке, так как у каждого из них своя уникальная специфика.

Какая уникальная специфика есть у обоих продуктов. В каких случаях какой лучше использовать? Не совсем уловил из статьи.

Asterisk подойдёт для более простых задач, небольшого уровня.
А если вам нужно создать провайдера или калл-центр с тысячами операторов, то лучше использовать FreeSWITCH.
Наверное это имел ввиду автор :)
P.S.: Asterisk для сложных задач так же хорошо подойдёт. К сожалению никогда на практике не приходилось делать что-то сложное с Asterisk, а с FreeSWITCH знаком исключительно из этой статьи.
UFO just landed and posted this here
P.S. Как же на Хабре все-таки не хватает кнопки «прочитать как-нибудь позже»…

«Добавить в избранное»?
Плюс сделать личный тег «toread» через «Изменить свои метки»
UFO just landed and posted this here
Супер, я не знал! Спасибо! А трек Don't surrender я смотрел уже раз 200.
Статья интересная, спасибо.
Идея классная, тоже понравилось, и ко времени пришлась, приятно ночью вот так почитать )
Об одном прошу хабровчан: не допустить, чтоб на Хабре теперь начали появляться топики со звуковым оформлением аля «Чумачечная весна»
Когда пишешь текст, рискуешь написать УГ, и получить кучу минусов к карме. Когда помимо текста, ты размещаешь еще и музыку, рискуешь дважды — мало ли кому не понравится.
Так и было. Через минуту после публикации сразу получил -1. «Что ты делаешь, зараза!», подумал я, «неужели из-за транса!?»
Еще через 3 минуты пост уже получил +2. «Все нормально. Поглядим, что завтра будет».
А утром было супер! Спасибо.
Спасибо! Задали тон работы на сегодня )))
Самое приятное, что только можно было услышать! Отныне, все свои посты буду сопровождать сливками вокал транса.
Использовал Yate.
Пытался организовать «мини» Softswich на спецефической плате производства моей компании (в результате планы изменились и релиза не состоялось).
Что могу сказать про Yate:
1. Документация есть на сайте, но мне её не хватало. Чтобы настроить конфиги я вдоль и поперёк ковырял исходники.
2. Исходники это сказка на С++, читаются на одном дыхании — четко, логично, локонично, красиво. Я бы рекомендовал их читать как пример хорошего кода на С++.
3. По функционалу нареканий не было, мне нужны били только SIP и SS7.
4. Оперативная правка багов. Однажды заметил DeadLock — подробно описал проблему и пути решения и уже собирался отправить баг-репорт, как нашел исправление ошибки, обновишись до текущей версии.

В целом мне Yate очень понравилась и в планах когда будет много-много свободного времени поизучать её подробнее.

Пэ.Эс. Кстати, куратор проекта женщина Diana Cionoiu, кажется сотрудница какого-то Румынского университета.
Все верно. Yate очень качественный продукт, и очень мало документированный. А Диана — ну очень серьезная девушка из Румынии.
У читателей может быть совершенно другой музыкальный вкус и они могут не согласиться с Вашим выбором «мега» треков. Поэтому в будущем лучше бы воздержаться от такого рода революционных вставок, которые не относятся к сути статьи. На хабре они кажутся неуместными и лишними.
А у некоторых и совпадает =). В целом идея, как и статья, хороша, но злоупотреблять ей не следует
> У читателей может быть совершенно другой музыкальный вкус и они могут не согласиться с Вашим выбором «мега» треков
Рискуя слить всю карму, я все же буду делиться лучшими музыкальными композициями в стиле Vocal Trance и Chillout Dreams, ведь это самое прогрессивное и мелодичное музыкальное направление современности.

> На хабре они кажутся неуместными и лишними.
А многим так не показалось. У нас есть блог, где каждый пост сопровождается треком. Это его фича :-)
asteriskblog.ru.

Tranceforming the world!
Вы бы лучше разбавили текст какими-нибудь изображениями. График рынка, возможная архитектура, приложение какое-н и пр. Хотя, «фичи» одновременно с какими-либо картинками скорее всего перегрузят пост и он будет тяжелее восприниматься.
UFO just landed and posted this here
Вот мне интресно есть смысл брать sfa. Может они все таки продлят его действие. И какие есть альтернативы кросе Skype connect.
Да его действия никто не отменял. Просто продажи и поддержка прекращается. Дигиумовского кода там не много, по этому, кмк, поддерживать своими руками и портировать на 1.10 большого труда не составит.
Тоесть после 2013, работать будет, но поддержки не будет?
Дигиум в своей рассылке написал:

Skype for Asterisk will not be available for sale or activation after July 26, 2011.

Skype for Asterisk was developed by Digium in cooperation with Skype. It includes proprietary software from Skype that allows Asterisk to join the Skype network as a native client. Skype has decided not to renew the agreement that permits us to package this proprietary software. Therefore Skype for Asterisk sales and activations will cease on July 26, 2011.

This change should not affect any existing users of Skype for Asterisk. Representatives of Skype have assured us that they will continue to support and maintain the Skype for Asterisk software for a period of two years thereafter, as specified in the agreement with Digium. We expect that users of Skype for Asterisk will be able to continue using their Asterisk systems on the Skype network until at least July 26, 2013. Skype may extend this at their discretion.

Skype for Asterisk remains for sale and activation until July 26, 2011. Please complete any purchases and activations before that date.

Thank you for your business.

То есть, продажи продажи завершаться в конце июля, поддержка — через два года. Работоспособность кликнта может продолжаться — все зависит от желения Скайп.
Еще два года будет поддерживаться. А еще FreeSWITCH работает через skype клиент. Архитектурно криво, но работает.
интересно было бы еще в обзор openSER (KAMAILIO) включить.
Производные SER не являются IP АТС. Я же не зря критерии привел.
а по какому критерию? отсутствию RTP proxy? ну sipxecs же рассматривали…
Конечно, OpenSER, будучи довольно нехилым конструктором, позволяет собрать какой-то PBX-образный функционал. Однако, среди модулей OpenSER, вы вряд ли найдете модуль для поддержки Music on hold.

В свою очередь, SipX хоть и чисто сигнальный SIP-коммутатор, но, прежде всего, все-таки PBX.
SipX конфигурируется через web-интерфейс, в котором все очень сильно «заточено» на PBX-функции: hunt-groups, call parking, music on hold и т.п.
Что интересно, в отличие от медиа-ориентированных VoIP-серверов, в SipX сделана попытка реализовать все PBX-функции пользуясь только SIP-сигнализацией.
Видимо, предполагается, что вы будете использовать достаточно умные IP-телефоны и шлюзы, которые поддерживают различные расширения SIP и IETF draft-ы.

К слову, в SipX довольно много внимания уделяется управлению железками, чтобы всю сеть можно было настраивать из единого веб-интерфейса. Разумеется, это работает только с определенным оборудованием.
Оригинально статья написана (:
спасибо, интересно было почитать: р
>Основным интерфейсом конфигурирования FreeSWITCH является текстовые файлы в формате XML, что >затрудняет администрирование этой системы, тогда как в Asterisk применяются хорошо читаемые и удобные .ini >файлы в формате секция / опция.
У FreeSWITCH есть модуль mod_dialplan_asterisk, который позволяет создавать конфигурацию диалплана в стиле Asterisk.
wiki.freeswitch.org/wiki/Mod_dialplan_asterisk
Все мои знакомые пользователи FS не используют его.
Вродебы, астериск вполне кластеризуется.
Из всех круче всех кластеризуется SipXecs.
Asterisk'и да, тоже неплохо так кластеризуются через Real Time config.
хм… разве это единственный способ масштабирования?
Классный обзор. Читать было интересно, познавательно и еще и с перерывами на релакс )))
Удачи автору!
Спасибо, очень приятно!
И Вам удачи!
Stay tuned!
> Протокол, а более правильно, стёк протоколов H.323,
впервые вижу такое написание — если б не было специально выделено, подумал бы, что опечатка

Если говорить о правильности, стек протоколов — это (конкретная) реализация, а некое множество взаимодействующих протоколов — семейство, suite по-английски.
А я бы поспорил. И как пример привел бы bit.ly/mPPxXc
Стек — это иерархия. В H323 тоже можно выстроить иерархию, что выше, что ниже.
Но стек — это никак не конкретная реализация.
Хотя семейство — более подходящее слово, спасибо.
Тем не менее, разные реализации — это разные иерархии — разные стеки (т.к. содержат разные версии и подмножества протоколов). А всё множество разработанных протоколов (чаще всего) не получится выстроить в стройную иерархию, т.к., опять же, существуют разные версии, и использование одних протоколов может исключать другие.
Стеком обычно называют некий «срез» — это будет реальная, планируемая или обобщённая реализация.
А что лучше использовать для конвертации кодеков?
Задам встречный вопрос — а что Вы хотите сделать? Кодеки автоматически конвертируются.
Что значит автоматически? У меня, например, есть g711 домен, локальная телефония. И есть допофисы, до которых я хочу кидать g729 и не хочу тратить dsp (или у меня их нет, например) на транскодинг. Что из описанного лучше использовать для подобного?
Из хорошего могу сказать, что я не нашел (или просто не в ту позу ставил?) ни одного бриджа Sip<=>H323 с поддержкой видео.
Ни YATE, ни freeswitch, ни (тем более) asterisk с задачей не справились.
В свое время получалось настроить yate как прокси для астериска по рецепту с офсайта. Сейчас просто стало удобнее использовать еще один астериск 1.4 в виде умного прокси.
Это гоняет только звук. Видео идёт лесом :(
Смутное ощущение, что я уже читал эту статью на каком-то из астериск-ресурсов. Могло ли это быть?
Много описано про реализацию SIP, но ничего про варианты реализации возможности IVR, а это как вы сами описали один из признаков PBX.
Поддержка VoiceXML (стандарт индустрии)? В Астериске криво и за деньги через VXI*, а у остальных?
Поддержка MRCP? Астериск и Фрисвитч через UniMRCP, а остальные?
Графические инструменты для построения диалпланов? Для Астериска знаю несколько, работал с Safi, но в Рунете они как-то непопулярны. Почему? Вы предложите, например, спецам по Avaya отказаться от Dialog Designer или спецам по GVP от Genesys Studio, не поймут:) )
> Смутное ощущение, что я уже читал эту статью на каком-то из астериск-ресурсов. Могло ли это быть?
Кстати да. Если это компиляция, то ссылки на используемые ресурсы были бы очень кстати.
> Смутное ощущение, что я уже читал эту статью на каком-то из астериск-ресурсов. Могло ли это быть?
В этом материале каждое слово написано лично мной :-) Материал раньше был размещен на сайте pbxware.ru в разделе Публикации, но пользы от размещения там мало. Тут намного больше тех, кому это может быть интересно.
А подскажите что из конфигурялок есть, приличнее FreePBX?
(FreePBX считаю неприличным, потомучто при всём разнообразии функций он люто насаждает свою «инфраструктуру» и ограничивает доступ к базовому функционалу, в наглую переписывает конфиги, и вообще на пхп написан)
>и вообще на пхп написан

Да, это страшный грех!
Астериск
Его архитерктура безумна, как улицы Р'льеха.
Шизоидный бейсик-подобный конфиг с номерами строк, макросами и операторами навроде GoToIf и GoSub.
Да-да! Конфиг с операторами GOTO!
Чтобы лучше выразить масштабы этого кошмара, добавлю, что эти операторы GOTO умеют передавать управление сразу в двух измерениях.

Наверное, кто-то мне скажет, что я отстал от жизни, и теперь в Астерике можно использовать Lua.
«Купите селедку и крутите мозги ей», — отвечу я.
Да, через 10 лет до разработчиков дошло, что программировать бизнес-логику на чудо-макросах и GOTO не очень удобно.
А теперь пойдите и найдите хоть один хоть сколько-нибудь рабочий конфиг без этих самых GOTO.

А еще, я точно знаю, что если заниматься Asterisk-ом больше года, то к этому адову кошмару можно привыкнуть. Так что потом будешь ходить и всем рассказывать, какой этот Asterisk замечательный.
Наверно Вас это удивит, но абсолютно все программы, которые вы когда-либо видели, чуть менее, чем полностью состоят из goto в разных вариациях (goto, gotoif, call, return).
Ибо так устроены современные процессоры и такова фоннеймановская архитектура компьютеров вообще. Телефонные станции устроены аналогично.
Астерисковый конфиг — это язык программирования низкого уровня, аналогичный асемблеру.
> Астерисковый конфиг — это язык программирования низкого уровня, аналогичный асемблеру.
Именно.
А почему? А нипочиму.
Просто, как 1999 году понеслась п… да по кочкам начали делать ini-конфиг, да так и не смогли остановиться, подумать и сделать все правильно.

Вот бы мы все «повеселились», если бы разработчики NCSA httpd вместо CGI начали бы городить «язык программирования аналогичный ассемблеру».
А Вам известны языки программирования АТС высокого уровня?
Коллега, Вы просто выразите свою мысль, если есть сказать что-то конструктивное.
FreeSwitch
Заявка на правильную прямую архитектуру. Активно используются годами проверенные компоненты, например Apache APR.
На практике (у нас в TipMeet) — полное фиаско в части согласования кодеков даже в режиме pass-through.
Звучит странно, но так и есть — даже если медиа-трафик идет мимо FreeSwitch, он умудряется развалить согласование кодеков. Как? А вот так — уметь надо! И еще писать код, как кура лапой, смутно понимая, как устроен SDP (самая «вкусняшка» в SIP-стеке). А код там такой, что сам Anthony Minessale сказал что-то типа «ээ… мм… да… ну хрен его знает».

Могу добавить, что разработчики FreeSwitch весьма странно реагируют на баг-репорты — типа, «хз, у нас все работает, никто не жаловался, это у вас кривые железо/софт/руки/фаза луны».
А на прямой вопрос, сколько будет стоить пофиксить багу, называют цифры с четырьмя нулями, причем без особого энтузиазма.
>весьма странно реагируют на баг-репорты — типа, «хз, у нас все работает, никто не жаловался, это у вас кривые железо/софт/руки/фаза луны»

Вот это точно!!!
Коллеги, позволю себе поднять тему.
В свете выхода новой версии Yate поменялось ли соотношение сил?
Все-таки, астериск новый выходит постоянно, разработчики фрисвич тоже могли стать более адекватными…
Sign up to leave a comment.

Articles