New * Age

В последнее время все больше и больше людей присоединяется к разработкам в области *. Вышло API для разработки приложений и удобного описания сложной логики dialplan’ов в Ruby. Кроме того можно запросто прикрутить все к ROL. Специальный дистрибутив AsteriskNOW + adhearsion - это мощный прорыв вперед.

Cмотрим

Getting started

Пример плана дозвона

Writing dialplans

Все это здорово, а теперь о самом вкусном на мой взгляд.

В новой версии Asterisk 1.4 все больше внимания уделяется GUI для администрирования и автоматизации бизнес приложений на базе *. Одна из проблем - производительность такого IP-PBX. Представьте что у нас есть 1000 одновременных звонков которые надо обработать сложным сценарием плана дозвона. Заносить все в AGI не решение, т.к. это тяжелые и ресурсоемкие процессы для сервера, что влияет на производительность программной АТС при декодировании сигнала и как следствие ухудшает качество канала связи.

Решение не ново - FastAGI. Приложения которые запускаются в сессии отдельного сетевого сервиса. * в свою очередь может обращаться к ним:

 agi://host:port/?param0=val&param1=val
   

Теперь подробнее. Не секрет что существует окружение для разработки быстрых асинхронных сетeвых приложений на базе Python.

Twisted в студию! Вот пример реализованного API протокола FastAGI, а также некоторые вкусности на этой базе - StarPy. Все еще альфа на протяжении двух лет :).

Вот вам почва для размышления, скоро появится анонс нового протокола для FastAGI приложений на Twisted. Отличие от StarPy лишь в том, что библиотека умеет тестировать себя, стабильна, не требует лишних зависимостей, проще код.

Знакомство

Добрый день.

В данном блоге я собираюсь писать все интересные на мой взгляд вещи и конечно просто глупости. Надеюсь это будет полезно не только моим друзьям.

Ранее я занимался созданием сервисов на базе Asterisk. Мне очень нравилось, действительно увлекательное занятие. Не хочу чтобы навыки пропали даром или начали терять актуальность, поэтому буду описывать некоторые технологии и приемы разработки в этом блоге. Кроме того тут могут появляться темы связанные с Django, Zope 3, Twisted, методологиями и приемами разработки, linux хаками и т.д.

Для тех кто в танках

Астериск(Asterisk, *) - IP АТС(по буржуйский PBX) с открытым программным кодом. На базе * можно создавать большое количество малых и крупных автоматизированных систем телефонии, распределенных систем, а также вовсе неожиданные проекты по использованию * для управления другими системами. Технология не нова, но вокруг нее создается множество новых open source и закрытых проектов.

Инструментарий

  • Python - основной инструмент, красивый и удобный язык программирования.
  • Twisted - платформа для создания асинхронных сетевых приложений на базе python.
  • Django - платформа для быстрого создания web приложений на базе python.
  • Gentoo Linux - ручной пингвин.