ASTERISK.Добавление заголовка в CDR - PullRequest
0 голосов
/ 24 апреля 2018

Aterisk 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) = ") в новом стеке

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

Ответы [ 2 ]

0 голосов
/ 29 апреля 2018

Решение с пользовательским полем должно работать, но если вам нужно более одного столбца, серверная часть 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;
0 голосов
/ 24 апреля 2018

У вас есть значение CDR (пользовательское поле)

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

...