Подзадержался я с написанием очередного выпуска, постараюсь исправиться. В конце апреля был внесён большой объём изменений, причём основные изменения были сделаны неожиданно. Вот Top4 изменений на мой взгляд:

  • Внесение огромного количества изменений из ветви team/murf/bug11210
  • Начался перенос из Swichvox возможностей, которые уже долгое время доступны пользователям этого продукта, хоть какая-то польза сообществу от покупки, сделанной Digium. В следующем выпуске так же будут нововведения из этой серии.
  • Авторизация NOTIFY для запросов сконфигурированных в sip_notify.conf. Это конечно мелочь, но патч я сделал ещё в мае прошлого года.
  • Произвольное количество слотов для парковки, может пригодиться для PBX, обслуживающих несколько компаний.

С этого выпуска я постараюсь больше внимания уделять внесённым нововведениям, давать ссылки на описания функций на voip.rus.net и voip-info.org.

Новое:

  • Переход на использование astobj2 в chan_sip для хранения основных данных канала (список пиров, диалогов). До кратного улучшения производительности (при большом количестве одновременно обрабатываемых диалогов, входящих звонков). Добавлен документ, описывающий каким образом производить тестирование срс.
    • Краткий экскурс: astobj2 предоставляет абстракцию для хранения произвольных данных, позволяющую автоматически отслеживать использования данных, уничтожать неиспользуемые данные. Кроме того как основной контейнер для данных используется хэш-таблица, которая намного эффективнее для хранения данных по сравнению с односвязным списком.
  • Увеличение скорости выполнения функций ast_sched_ (используются в канальных драйверах)
  • event_unsubscribe использует теперь двусвязные списки, что должно увеличить скорость обработки MWI
  • (#9896) Поддержка авторизации NOTIFY запросов, настраиваемых через sip_notify.conf (IgorG)
  • (#11691) Добавлена функция MEETME_INFO (), позволяющая получить информацию о запущенной конференции (длительность разговора, количество участников и т.п.)
  • (#6113) Добавлена возможность настраивать несколько слотов для парковки вызовов, устанавливая переменную PARKINGLOT и добавляя слоты в res_features.conf
  • (#12425, #12484) Добавлена расшифровка некоторых ошибочных сообщений в libss7 и поддержка generic name
  • (#12467) Добавлен оператор слияния строк ~~ для использования в AEL диалпланах
  • Добавлена опция c () в приложение Jack () и функцию JACK_HOOK () для использования произвольного имени клиента. По умолчанию используется имя канала
  • Добавлен код из team/russell/parking_updates. Новые возможности добавлены в приложение Park () и доступны в виде опций. Добавлены возможность указывать точку выхода из приложения, таймаут, возможность проигрывать тон вместо MoH и случайно выбирать слот для парковки
  • (#12028) Добавлена возможность перенаправлять сообщение голосовой почты с комментарием, в случае использования IMAP
  • Новая опция 'B' в ChanSpy (). Эта опция похожа на действие опции 'w', но позволяет передать сообщение обоим сторонам разговора
  • (#12524) Добавлена команда CLI 'sip qualify peer'

Исправления:

  • (#10078) Исправление уязвимости AST-2008-006
  • (#12462) Переменная AGISTATUS должна иметь значение FAILURE если исполняемый файл не найден
  • (#12007) При создании звонка через AMI Originate не устанавливался CDR (accountcode)
  • (#12493) Обрезание двух символов в выводе различных данных через AMI
  • (#12214) Передача MWI в Skinny переписана так, чтобы не вызывать segfault
  • (#12440) Генерируемые asterisk'ом DTMF длинной в 0мс
  • (#12490) Исправление работы опции setqueuevar=yes в app_queue
  • (#12460) Функции ADSI не доступны в Skinny
  • Информация о использовании MoH требует наличия завершающего конца строки, иначе «asterisk -rx 'help moh reload'» зависнет.
  • (#12461) Восстановлена работа групп в ChanSpy ()
  • (#12472) Значение переменной ${CALLINGPRES} должно быть в формате, приемлемом для SetCallingPres ()
  • При автодополнении команды 'sip show channel <channel>' выдавать имя канала только один раз
  • (#12502) Не прерывать диалплан если SayNumber () не может воспроизвести цифру из-за её величины
  • (#11575) Исправлена работа команд reload/unload в модуле res_musiconhold
  • (#12498) При нажатии * в ChanSpy () не происходил переход к следующему отслеживаемому каналу
  • (#12496) Восстановлена работа MoH через mISDN каналы
  • (#12292) Баг с неверным временем во времени MeetMe () конференции
  • (#11328) При окончании работы канала переменная HANGUPCAUSE будет передаваться по цепочке к родительским каналам
  • Добавлять только один заголовок max-forwards в исходящий REFER.
  • Разнообразные исправления: сообщения об ошибках, утечки памяти, сборка  app_voicemail.c с опцией IMAP_STORAGE и TDS, разнообразные дедлоки.

Внутреннее:

  • Добавлена реализация двусвязных списков из ветви team/murf/bug11210
  • Объединение приложения app_pickupchan с app_directed_pickup в целях сокращения дублирующегося кода. В рамках переноса кода из Switchvox.
  • Множество дополнений в работу astobj2, а так же добавление новых структур данных (двойной связный список, refcount). Добавлена утилита refcounter
  • Объявлены AST_LOG_* так как аналогичные переменные есть в syslog.h

Похожие сообщения:

автор igorg \\ теги: , , ,

  • Аноним

    Добрый день,

    случайно попал на Ваш сайт, очень заинтересовала данная система (Asterisk), хотелось бы плотно ей заняться. Поэтому, хочу по совветоваться с Вами как с профи.

    1.Я работаю сисадмином (Windows), опыт с UNIX подобными системами не большой...с чего посоветуете начать? (на какой дистриб Linux ориентирован Asterisk или его можно поднимать на любом?

    2.Может дадите ссылке на учебные пособия или руководства по нему — желательно на русском.

    3.Если не затруднит — ответ напишитен на мыло: fantom-00@mail.ru.

    С уважением, Иван.

  • http://igorg.ru igorg

    Такие вопросы принято задавать на форумах, на выбор: www.asterisk-support.ru или www.asteriskforum.ru.

    Вкратце можно сказать, что дистрибутив лучше выбрать тот, специалист по которому есть рядом. Насчёт руководства на русском — voip.rus.net, но без умения чтения английских технических текстов всё равно не обойтись.

  • http://siper.ru Digium

    Для начала можно поробовать что то вроде TrixBox или AsteriskNow, для админа они слоности не представляют.

    Довольно быстро станет ясно что этого мало, и тогда уже можно ставить Slackware + Asterisk + необохимые патчи, по крайней мере к тому моменту будет четкое представление как все должно работать. Имхо.

  • http://www.itconnection.ru Victoria

    Компания ITconnection — партнер Digium, проводит специализированные курсы в СПб по Asterisk, на русском языке.

    Asterisk Bootcamp – 5-дневный курс, который включает в себя все ключевые вопросы по установке, конфигурации и администрированию Asterisk®.

    Каждое занятие будет состоять из лекций и практических работ. Для занятий всем участникам будут выданы:

    * Плата Digium TDM11B

    * Плата Digium TE121P

    * Телефон Polycom SoundPoint® IP 330.

    * Учебное пособие.

    * Руководство Asterisk Business Edition.

    * Книга O'Reilly «Asterisk: The Future of Telephony».

    * рюкзак для ноутбука Asterisk.

    * Футболка Asterisk

    * Калькулятор

    * Коврик для мышки

    * Оранжевая ручка Digium

    Занятия начнутся 1 сентября, в СПб. Группа будет состоять примерно из 10 человек.

    Также Вы можете сдать экзамен на получение Сертификата dCAP. dCAP (Digium Certified Asterisk Professional) — это подтверждение ваших знаний Asterisk®. Сертификации подлежат знания определенного стабильного релиза Asterisk®. Экзамен на dCAP состоит из письменных 150 вопросов относительно Asterisk и с ним связанных технологий, и практической лабораторной работы, в которой Вам надо будет настроить УПАТС (PBX) по заданной спецификации. Необходимо дать минимум 75% правильных ответов для прохождения экзамена.

    Стоимость курса Asterisk Bootcamp – 87438,00 рублей, в том числе НДС 18%.

    Стоимость экзамена – 8743,80 рублей, в том числе НДС 18%.

    Чтобы зарезервировать место на доступный курс Вам необходимо внести 100 % предоплату стоимости курса. Днем оплаты считается день поступления денежных средств на наш расчетный счет.

    www.itconnection.ru

  • http://www.itconnection.ru Victoria

    зявки можно отправлять на www.itconnection.ru

  • http://www.itconnection.ru Victoria

    т.е. на training@itconnection.ru

  • manuna

    (#6113) Добавлена возможность настраивать несколько слотов для парковки вызовов, устанавливая переменную PARKINGLOT и добавляя слоты в res_features.conf

    Вопрос, может, несвоевременный, то тем не менее: в features.conf кастомныйparkinglot

  • manuna

    (#6113) Добавлена возможность настраивать несколько слотов для парковки вызовов, устанавливая переменную PARKINGLOT и добавляя слоты в res_features.conf

    Вопрос, может, несвоевременный, но, тем не менее, появившийся в связи с выходами 1.6.0-rc : в features.conf кастомный parkinglot можно определять

    ;*** Define another parking lot

    ;

    ; You can set parkinglot with the CHANNEL dialplan function

    ; or by setting 'parkinglot' directly in the channel configuration file.

    ;

    ;[parkinglot_edvina]

    ;context => edvinapark

    ;parkpos => 800-850

    ;findslot => next

    Но в sip.conf.sample нижеуказанные строки есть только в транке и ветке 1.6.1

    ;parkinglot=plaza ; Sets the default parking lot for call parking

    ; This may also be set for individual users/peers

    ; Parkinglots are configured in features.conf

    Отсюда вопрос: а поддерживается ли эта функциональность в 1.6.0 ?

  • manuna

    ...особо учитывая то, что 1.6.1, судя по коментариям, забренчился только в августе (да?), когда фича была давно заимплеменчена в транке.

    Revision 137648 — (view) (download) (annotate) — [select for diffs]

    Modified Wed Aug 13 23:08:50 2008 UTC (5 weeks, 1 day ago) by kpfleming

    File length: 10200 byte (s)

    Diff to previous 116237

    now that 1.6.0 has reached the 'release candidate' stage, it's time to branch 1.6.1

  • http://igorg.ru igorg

    Нет, в 1.6.0 эта функция будет недоступна, а вот в 1.6.1 вполне. Кстати, спасибо за указание на создание branch доля 1.6.1 :)

  • manuna

    Не за что :)

    Однако странно получается, значит в features.conf опция есть, а в sip.conf нет :( А указанный в features.conf контекст хоть как-то можно с пользой использовать в 1.6.0 ?