【问题标题】:ASTERISK. Adding a header to the CDR星号。向 CDR 添加标头
【发布时间】:2018-04-30 04:11:36
【问题描述】:

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列是

【问题讨论】:

    标签: asterisk cdr


    【解决方案1】:

    userfield 解决方案应该可以工作,但如果您需要多个列,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;
    

    【讨论】:

      【解决方案2】:

      你有 CDR(userfield) 值

      自定义 cdr 字段仅适用于某些驱动程序(接缝仅在 res_mysql 中),并且仅当 db 中以星号开头的列存在时。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-12-19
        • 1970-01-01
        相关资源
        最近更新 更多