Описание изменений Billion Softswitch

3.1.42

· На страницу «Дополнительные параметры» добавлена галочка «Проверять терминаторы на рекурсию».

3.1.36

· На страницу «Дополнительные параметры» добавлена галочка «Игнорировать терминацию на абонента». При выборе этой галочка в случае совпадения набраного номера и учётной записи (или одного из псевдонимов) абонента терминация всё равно будет осуществлятся по таблице маршрутов.

3.1.34

· Добавлена возможность использования запятой как разделитель в CDR файле.

3.1.33

· Для SIP оригинатора и абонента добавлена Q931 код завершения в случае невозможности обслужить вызов (нет маршрута и т.д.).

3.1.31

· Включение записи вызова автоматически включает проксирование медиа.

3.1.30

· Убрано неиспользуемое поле базы данных.

3.1.29

· При невозможности открыть RTP сокет на конкретном интефейсе дальше используется 0.0.0.0 (Проблем была замечена на windows server 2008).

3.1.27

· Добавлен вывоз описания SIP причины завершения вызова и отказа в регистрации в CDR файл (для завершения вызова) и в базу данных (для завершения вызова и отказа в регистрации)

· В «причины завершения вызова для прекращения маршрутизации» добавлена возможность задать 1018 (Максимальное время ожидания ответа)

3.1.26

· Исправлена ошибка определения сетевого интерфейса

3.1.25

· Игнорируется ошибка в параметре SDP –o (в неиспользуемой части)

3.1.24

· В таблицу BSS_CALLS_STATUS добавлены поля PURCHASER_ID, PURCHASER_TARIFF_ID, SELLER_PLAN_ID и SELLER_TARIFF_PLAN_ID

3.1.23

· WINDOWS – добавлена обработка SHE exceptions

3.1.21

· В таблицу BSS_CDRS добавлены ID тарифов (на продажу и на покупку)

3.1.15

· Добавлена работа с входящими SIP сообщениями, содержащими неразрешимые доменные имена в заголовке или поле To.

3.1.14

· Проксирование медиа вынесено в отдельный поток.

3.1.13

· Правильно обрабатывается входящий SIP вызов, в котором НАТ подменяет Via и Contact адреса, но не подменяет порт в них (ответные сообщения идут на реальный порт).

3.1.11

· В вызове H323-H323 меняется call id (некоторые устройства отказывают в вызове с имеющимся уже call id считая это петлёй, несмотря на разный набранный номер).

· В имя терминатора на станице маршруты входит учётная запись, если она есть (например 3097146@telphin.ru) ВНИМАНИЕ: возможно придётся обновить страницы маршрутов.

3.1.10

· Работа в юниксоиде не в root (нужно распаковать tar архив в $HOME).

3.1.8

· Таблица BSS_GROUPS_OF_ENDPOINTS_AND_CUSTOMERS переименована в BSS_GROUPS_OF_ENDPOINTS.

3.1.7

· Update базы данных производится в рамках одной транзакции.

3.1.6

· Добавлена возможность задавать ограничения по количеству вызовов для оригинаторов, абонентов и терминаторов для каждого маршрута. Только при работе с базой данных.

3.1.5

· Если оригинатор при оригинации не проходит по ограничению по номера, то ищется следующий. При регистрации проверка не производится.

3.1.3

· Добавлена галочка разрешения для redirect для абонентов (была для терминаторов, для абонентов был запрет).

3.1.2

· G72x для linux (common 2.53).

3.1.1

· Исправлены ошибки (в коде БСС, common 2.52) в полях базы данных.

3.1.0

· Добавлен G723 и G729 транскодинг.

3.0.66
· Добавлена возможность генерировать КПВ, если оно отсутствует у терминатора
· Добавлена возможность задать поведение для случая генерации собственного КПВ и получения КПВ от терминатора (игнорировать, передавать тот же кодек, передавать все кодеки)

3.0.65
· Добавлена возможность использовать базу данных только для записи CDR
· Вызовы, не прошедшие аутентификацию оригинатора (абонента) попадают в CDR

3.0.64
· Добавлена возможность задавать сервисные сообщения для разных кодов завершения
· Добавлена возможность задавать язык проигрывания сервисных сообщений (в том числа и по АОН)
· Добавлена возможность редактировать таблицу соответствия кодов завершения
· Добавлена возможность работы с устройством с несимметричным RTP
· Добавлен таймаут на ENUM запросы
· В UI добавлена ссылка на change list

3.0.63
· На странице статистики добавлены данные по RTP, а именно % потерянных пакетов и максимальная задержка в миллисекундах (в форме %:задержка)
· РАДИУС пакеты Accounting Start шлются в начале вызова (для answer) и в начале терминации (для originate). После получения connect (OK) шлётся Interim Update с нулевым временем (если включён Interim Update). Accounting Stop шлются соответственно в конце вызова.
· В поле «media info» CDR добавлена информация по DTMF

3.0.62
· Добавлена возможность записи вызовов.
· Добавлена возможность автоматического импорта конфигурации при её изменении.
· Изменение набранного номера для биллинга производится независимо от изменения этого номера при оригинации.
· В unix-версиях инсталляция осуществляется не в /usr/bin, /usr/bss и /usr/etc, а в /bin, /opt/bss, var/opt/bss и /etc/opt/bss

3.0.61
· Общая статистика со страницы ресурсов перенесена на страницу статистики и добавлена возможность обнуления (в том числе и обнуления всех элементов страницы статистики)
· Добавлена возможность автоматически сохранять конфигурацию (по таймеру)
· В регистраторы добавлено общее время вызова (на них же можно терминировать)
· Добавлена возможность сохранять статистику в файле по таймеру. После сохранения статистика обнуляется.

3.0.60
· Добавлен тип диалога для SIP аутентификации для оригинаторов и терминаторов.
· Добавлены поля CDR transfer time и media info. Media info имеет формат ТИП_ПРОКСИРОВАНИЯ;orig:ВРЕМЯ_НАЧАЛА,КОЛИЧЕСТВО_ПАКЕТОВ,IP_АДРЕС;term: аналогично оригинатору. Если проксироавние медиа отсутствует, то информации orig и term нет.
· В «Дополнительные параметры» добавлено поле «Максимальное время hold, мин»
· В статистику добавлены SIP коды завершения.

3.0.59
· Добавлена возможность генерировать КПВ. Для оригинаторов и абонентов добавлен выпадающий список «Генерация КПВ» который может принимать значение «Не генерировать», «Как противоположное плечо» и «Генерировать». Для терминаторов добавлена галочка «Генерировать КПВ». Если у оригинатора (абонента) выбрано значение «Как противоположное плечо» и хотя бы один терминатор в маршруте имеет помеченную галочку «Генерировать КПВ», то генерация состоится. Если выбрано «Не генерировать» то генерации не будет никогда, если «Генерировать» - то будет всегда, независимо от выбора на терминаторах. На странице «Дополнительные параметры» в сеуции «Сервисные сообщения» добавлено поле «Имя файла с сообщением КПВ» - этот файл будет проигрываться бесконечное количество раз.

3.0.58
· Для РАДИУС биллинга добавлена возможность аутентифицировать на нём SIP устройства. При такой аутентификации при дальнейшей работе с устройством будут использованы параметры устройства по умолчанию.
· На странице отчётов добавлена строка «Итого: общее время вызовов, куплено и продано»)

3.0.57
· Галочка «При оригинации использовать АОН вместо клиента» заменена на «Использовать АОН как имя клиента» в списке клиентов.
· Правило сортировки терминаторов в маршруте «по общему ограничению пол времени за исключением исчерпанного» вынесено в отдельную галочку.
· Галочка «Использовать маршрутизацию» в дополнительных параметрах абонентов заменена на выбор «Маршрутизация», который может быть «По регистрации» или «По таблице маршрутизации». Если выбран второй вариант, то звонок на абонента будет осуществляться только по таблице маршрутизации. Боле того, если абонент, у которого задано «По таблице маршрутизации» звонит на абонента, у которого задано «По регистрации», вызов будет так же маршрутизироваться по таблице маршрутизации.
· Для биллинга добавлены бесплатные номера.
· Для РАДИУС биллинга добавлена минимальная длительность звонка.
· В базу данных добавлены таблицы регистрации - BSS_REGISTRARS_STATUS_SNAPSHOT, BSS_REGISTRARS_STATUS_HISTORY, BSS_SUBSCRIBERS_REGISTRATION_STATUS_SNAPSHOT и BSS_SUBSCRIBERS_REGISTRATION_STATUS_HISTORY

3.0.56
· Добавлено поле «подтверждение пароля».
· Для терминации (в терминаторы и абоненты) добавлены поля «Общее ограничение по времени» и «Шаг общего ограничения по времени». Шаг может быть в секундах и в минутах, соответственно общее ограничения задаётся в этих единицах. Так же в маршруты добавлены способы сортировки «по общему ограничению по времени» и «по общему ограничению по времени с исключением исчерпанного». В последнем случае в маршрут не попадут терминаторы, у которых исчерпано ограничение по времени.

3.0.55
· Добавлена работа c H323 устройствами как с абонентами.
· Добавлена возможность экспорта конфигурации в sql файл

3.0.52
· Добавлена страница конфигурации «Приём вызовов», ссылка на которую «Остановить приём вызовов» если оно идёт и «Запустить приём вызовов» если приёма нет. На этой странице можно включить/выключить приём вызовов, завершить работу (или рестартовать) БСС при окончании всех вызовов или прервать все вызовы и завершить работу (или рестартовать) БСС.

3.0.51
· Добавлены правила изменения имени звонящего (с возможностью использовать макросы "{A_NUMBER}" и "{B_NUMBER}").

3.0.50
· Добавлена таблица базы данных BSS_CALLS_STATUS.
· При изменении медиа адреса и (или) порта и проксировании медиа БСС не инициирует смену медиа сессии на другой стороне.

3.0.48
· Добавлен учёт полей Diversion для SIP – SIP вызова.

3.0.47
· Для SIP терминации добавлена возможность выбирать IP адрес в поле From (адрес терминатора или адрес БСС).

3.0.45
· На странице http://127.0.0.1:1800/cp добавлены поля «Download log for call with ID», «From time» и «To time».

3.0.44
· Для абонентов, оригинаторов и терминаторов добавлена возможность выбрать метод передачи DTMF. Для SIP это "RFC2833 (NTE)" , "INFO application/dtmf", "INFO application/dtmf-relay", для H323 – "From Terminal Capability, "Q.931 Keypad", "H245 String", "H.245 Signal" и "RFC2833 (NTE)"

3.0.43
· Для абонента добавлено поле «Использовать маршрутизацию». При его выборе кроме терминации на IP адрес абонента будет использоваться и стандартная маршрутизация.
· Для терминатора можно не задавать IP адрес – тогда терминация будет осуществляться на адрес регистрации.

3.0.42
· Добавлена таблица базы данных BSS_NUMBER_TRANSLATORS

3.0.41
· Добавлено ограничение по возрастанию количества вызовов в секунду, общее и отдельно для оригнаторов, абонентов и терминаторов
· В Дополнительные параметры добавлено ограничение на количество портов при транскодинге для G729 (Появляется после установки соответствующего plugin'а)
· База данных – можно задать префикс для маршрутизации по длине номера – в этом случае префикс состоит из точек, количество которых равно длине номера.

3.0.40
· Неразрешимый host name не препятствует образованию терминатора - возможно в этот момент DNS сервер упал, а к моменту терминации он поднимется.
· Добавлена передача от оригинатору к терминатору presentation и screening для А-номера.
· Для H323 терминации plan номера по умолчанию стал "E.164 ISDN/telephony"
· Добавлена возможность протестировать connection с RADIUS сервером
· Таблица соответствий кодов завершения вызова находится в реестре (ini файле), в секции CallEndCauses. При первом старте в неё заносятся default значения.
· Восстановлено использование при SIP терминации display name оригинатора (3.0.4)

3.0.39
· В «Дополнительные параметры» добавлено поле «Причины завершения вызова для прекращения маршрутизации» (значнение по умолчанию 1,16-19. Для абонентов и терминаторов добавлено поле «Изменение причин завершения вызова для прекращения маршрутизации» (пример +21, -410)
· Страница ресурсов – добавлено число процессоров
· H323 ограничение Разрешить "тонелировнаие H245" разбито на «Разрешить», «Запретить и ждать адрес» «Запретить и предложить адрес»
· Добавлено использование SIP параметра line

3.0.38
· В базу данных добавлена таблица BSS_LIMITATIONS. Поле PARAM имеет значение 1 для ограничений по подпрефиксам, 12 – ограничения по АОН для абонента, 13 – по набранному номеру для абонента, , 22 – ограничения по АОН для оригинкатора, 23 – по набранному номеру для оригинатора, 42 – ограничения по АОН для терминатора, 43 – по набранному номеру для терминатора, 4 – ограничения по АОН для маршрута, 1XX – транслятор номера для абонента, 2XX – для оригинатора, 4XX – для терминатора, X00 для АОН, X01 – для набранного номера, X10 – для АОН при терминации и X11 для набранного номера при терминации.

3.0.37
· Добавлена работа с HOLD

3.0.36
· Запрещена терминация на IP адрес оригинатора с сохранением набранного номера.
· m=audio 6000 RTP/AVP 18 18
·/a=rtpmap:18 g729/8000
·/a=rtpmap:18 g729a/8000
· В базу данных добавлена таблица BSS_ROUTES_SUBPREFIXES и поле BSS_ROUTES_PREFIXES. SUBPREFIXES_MODE

3.0.35
· Сквозная цифровая нумерация лог файлов заменена на дату
· Billing RADIUS – поля h323-gw-address и h323-remote-address принимают разные значения в зависимости от значения поля h323-call-origin

3.0.34
· На странице «Дополнительные параметры» поле «Контроль вызова» заменено на поле «Интервал контроля вызова, сек»
· Для идентификации абонента и оригинатора используется А-номер из P-Asserted-Identity, если абонент или оригинатор не найден по А-номеру из поля From

3.0.33
· При невозможности принять SIP вызов из-за перегрузки процессора БСС отвечает 503 (а не игнорирует INVITE)
· При перегрузке процессора перестают автоматически обновляться страницы статуса (обновление вручную работает)
· При повторном INVITE'е для аутентификации аккоунт не подставляется в поле From (если не было выбрано "использовать аккоунт вместо АОН")

3.0.32
· Добавлены ограничения по User-Agent – вызовы игнорируются и IP адреса сразу попадают в bounce.txt

3.0.31
· Можно задать имя сохраниения-восстановления конфигурации (если не задано, то будет построено из даты)

3.0.30
· Для внешних устройств и абонентов добавлен параметр «Получить набранный номер из» (Поля To или заголовка сообщения Invite).
· Добавлено сообщение об ошибке конфигурации в случае отсутствия клиентов внутреннего биллинга.

3.0.29
· Для абонента добавлен параметр «Использовать учётную запись для терминации». Если это он выбран, то псевдоним при терминации заменится на учётную запись (до сих пор так и было).

3.0.28
· Для SIP оригинатора с INVIT'ом без SDP запрещена терминация на H323 терминатора

3.0.27
· В ограничения для кодеков добавлен метод «Содержит только помеченные». Он аналогичен «Включить только помеченные» плюс помогает БСС выбрать, нужно ли использовать транскодинг. При выборе этого метода БСС точно знает все кодеки терминатора (кодеки оригинатора как павило приходят в fast start и поэтому для него необязательно указывать все кодеки) и включит транскодинг только при отсутствии общих кодеков. Это позволить избежать транскодинга при наличии общих кодеков.

3.0.26
· Добавлена максимальная длительность вызова для оригинаторов, абонентов и терминаторов.
· Добавлена возможность предоставления отдельного сокета для каждого RTP плеча – даёт возможность работы с неправильным RTP адресом (устройство стоит под НАТ, об этом не знает и между ним и БСС стоит свитч без проксирования медиа).
· Выбор параметра «Использовать регулярные выражения для префиксов и правил изменения номера» из Дополнительных параметров приводит к использованию синтаксиса регулярный выражений (запрет на ~), в том числе и на страницах Маршруты и Тарифные планы
· Кроме Reason: Q.850 учитывается и Reason: SIP
· В дополнительные параметры добавлено поле «Период блокировки адреса чёрного списка, сек» - при выборе этого параметра БСС сам заблокирует адрес, попавший в чёрный список. Через период адрес будет разблокирован.

3.0.25
· Добавлена возможность сохранения и восстановления конфигурации.

3.0.24
· Добавлена возможность задавать сетевой SIP интерфейс БСС для оригинаторов, терминаторов, абонентов и регистраторов. В случае оригинации будут приниматься только вызовы на заданный интерфейс. В случае терминации и регистрации будет использоваться заданный интерфейс. Если интерфейс не задан, то для оригинации подходит любой и для терминации и регистрации интерфейс заданный таблицей маршрутизации. Для H323 интерфейс игнорируется.
· Добавлена возможность изменять таблицу кодов завершения.

3.0.23
· Для абонента добавлена трансляция номеров для терминации
· Добавлено для H323 протокола – прекращать вызов при несовпадении terminal capability
· Добавлена возможность запрета на одинаковые A и B номера

3.0.22
· Help файлы перенесены в директорий ресурсов
· В директории ресурсов может содержаться файл client.htm – в этом случае его содержимое попадёт в правый верхний угол UI
· Содержимое файлов gif и css hardcoded
· В benchmarks добавлены потоки
· В противоречие с RFC доменное имя может начинаться с цифры
· Абоненты и регистраторы не нужно дублировать в терминаторах - они автоматически появляются в маршруте

3.0.21
· Терминатору и абоненту добавлен флажок «G729=G729A». При выборе этого флажка осуществляется «перекодирование» между G729 и G729A. Одно плечо может работать по одному кодеку, другое по другому, а БСС в этом случае просто поменяет названия кодеков.

3.0.20
· При прерывании вызова по «Максимальное время установления соединения, сек» терминатору шлётся Q931 TimerExpiry
· При прерывании вызова по причине отсутствии общих кодеков терминатору шлётся Q931 BearerCapNotImplemented
· В ограничениях на набранные номера и т.д. можно использовать '' для задания пустой строки

3.0.19
· Добавлена параметр для SIP терминации «Использовать учётную запись вместо АОН» По умолчанию не использовать.
· При отсутствии разрешения для доменного имени оригинатор не отключается. На старте БСС в такой ситуации в UI не выдаётся ошибка (выдаётся при изменении конфигурации)
· В IVR примитив EndCall добавлен код завершения. Так же добавлено скрипт EndCall.xml, можно использовать его например как EndCall.xml,sip:404,q931:3
· Замена АОНа учётной записью производится только для непустой учётной записи

3.0.18
· Добавлена поддержка ENUM (как протокол терминатора)
· В дополнительных параметрах оригинатора «Использовать Alerting вместо Progress» и «Обязательность сообщения Alerting» заменены на выпадающий список «Alerting метод» который может принимать значения «Alerting как есть», «Генерировать Alerting перед Progress», «Запрет Alerting после Progress», «Использовать Alerting вместо Progress» и «Генерировать Alerting перед OK»
· «Генерировать Alerting перед Progress» игнорируется для H323 оригинатора
· Progress (CallProceeding) без медиа если не выбран «Alerting как есть» игнорируется

3.0.17
Для SIP оригинаторов учитывается «Замена кода завершеия Q931»

3.0.16
При непрохождении ограничений по маршрутам причина завершения вызова – SimultaniousCallsLimitation (NoCircuitChannelAvailable)
Изменён формат bouncer.txt
Учитывается SIP параметр Record-Route
В Via добавлен rport
В SDP добавлен атрибут rtcp
Если пришло медиа неизвестно откуда и медиа с одной стороны уже есть, то считаем, что это медиа с другой стороны.
ACK и reINVITE заголовке сообщения содержат адрес из контакта (для SIP proxy)

3.0.15
В случае получения h245Address и h245Tunneling=TRUE вызов прекращается по ProtocolError
Отсутствие общих кодеков приводит к завершению вызова с 415 Unsupported Media Type
SIP reINVITE – если SDP в OK не отвечает на SDP в INVITE (содержит другой кодек или пустой) то инициатору посылается OpenLogicalChannelReject
Для оригинаторов и абонентов абонентов в РАДИУС-биллинг секцию добавлены поля «SIP поле для IP адреса» и «SIP поле для префикса для набранного номера»
Для оригинаторов и абонентов добавлена валидация набраного номера
· В префиксе можно кроме тильды задавать точки. Например 3... В правиле изменения номера всё равно должна быть тильда.
В SIP SDP добавлено поле a=rtcp:... (sip.1und1.de без этого поля не передаёт медиа)

3.0.14
Добавлено ведение списка кандидатов на внесение в чёрный список (по превышению попыток регистрации и вызова, не прошедших аутентификацию). Файл bouncer.txt находится радом с лог файлами. На странице Дополнительные параметры добавлены «Число отвергнутых для чёрного списка» и «Период отвергнутых для чёрного списка, сек»

3.0.13
SIP аутентификация – работа в устровиях, когда proxy перебирает realm'ы

3.0.12
LicenseLimitation и SimultaniousCallsLimitation соответствуют NoCircuitChannelAvailable и 503 Service unavailable, CPULimitation – ResourceAnavailable и 503
Вызов, завершённый по SimultaniousCallsLimitation попадает в CDR
· Лицензионное количество вызовов уменьшается при переходе в состояние «разъединение»

3.0.11
· При невозможносит открыть RTP сокеты вызов завершается (а не падает БСС!)

3.0.10
· Вызов прекращается, есть обмен terminal capability set выявил отсутствие общих аудио кодеков

3.0.9
· В Начальные DTMF для отправки терминатору добавлены макросы {PREFIX} – префикс, по которому выбран маршрут, {SRC_A_NUMBER}- АОН до преобразования, {DST_A_NUMBER} – АОН после преобразования, {SRC_B_NUMBER} – набранный номер до преобразования и {DST_B_NUMBER}} – набранный номер после преобразования

3.0.8
· На H323 занято SIP оригинатору посылается 486 Busy Here, а не 503 Service Unavailable.

3.0.7
· Вызов прерванный оригинатром имеет причину Caller.
· SIP – H323 – отсутствии fast start response не посылается OK с пустым SDP

3.0.6
· При переоткрытии SIP медиа сессии с теми же параметрами шлётся OK и больше ничего не происходит.
· Исправлена работа таймеров в SIP
· Лицензионный ключ перенесён из файла в реестр
· При регистрации на БСС время жизни берётся меньшее из времени БСС и Expires из запроса на регистрацию

3.0.5
· Добавлено поле BSS_CDRS. PARTITION
· В SIP сообщения добавлен q931 call end cause
· При вызове и регистрации абонент опознаётся по псевдониму (не только при терминации)

3.0.4
· При выборе «Использовать имя в качестве АОН» имя корректно вынимается из формы Имя@domain
· При терминации в качестве Display Name используется АОН
· Контроль баланса клиента внутреннего биллинга перенесён из общих настроек в настройки клиента

3.0.3
· Добавлена работа с медиа, посылаемом терминатором до открытия медиа сессии

3.0.2
· Убрано падение при получении мусора на SIP TCP сокете
Ошибка H323 протокола со стороны устройства не ведёт к прерыванию вызова

3.0.1
· Оригинатор, аутентифицированный не по IP адресу, может инициировать вызов с любым CallerID
· Добавлены ограничения по CallerID для инициации вызова оригинатором
· Убрано падение, если RFC2833 стартовал сразу перед закрытием вызова