ЗВЕЗДОЧКА. Добавление заголовка в CDR

Атериск 13. Кастомизированный диплан. Звонки работают, CDR пишется.

Но мне нужно добавить свой заголовок в CDR во время звонка.

Пример extensions.conf:

exten => _1XX, n, SIPAddHeader (Test-header: 123) exten => _4XX, n, Set (CDR (Test column) = $ {SIP_HEADER (Test-header)})

Вывод консоли:

  • Выполнение [6001 @ test: 2] SIPAddHeader ("SIP / 100-00000000", "Test-header: 123") в новом стеке - Выполнение [6001 @ test: 2] Set ("SIP / 100-00000000" CDR (Test -header) = ") в новом стеке

Почему не передается значение заголовка? И возможно ли это вообще? P.S. Столбец Test-header в базе данных


person Антон Попов    schedule 24.04.2018    source источник


Ответы (2)


Решение с пользовательским полем должно работать, но если вам нужно более одного столбца, серверная часть CDR MySQL поддерживает настраиваемые столбцы. В cdr_mysql.conf создайте этот раздел:

[columns]
alias testcolumn => testcolumn

И в вашем диалплане:

Set(CDR(testcolumn)=${SIP_HEADER(Test-header)})

Asterisk не создаст этот столбец в таблице CDR, его нужно ИЗМЕНИТЬ:

ALTER TABLE cdr ADD COLUMN testcolumn VARCHAR(255) DEFAULT NULL;
person viktike    schedule 29.04.2018

У вас есть значение CDR (userfield)

Пользовательское поле cdr работает только с некоторыми драйверами (похоже, только в res_mysql) и только если столбец присутствует в БД при запуске звездочки.

person arheops    schedule 24.04.2018