• 呼叫中心-拨号方案和路由配置okcc智能系统


    为了实现动态组合拨号方案避免重复配置,把拨号方案拆分成了2个部分,一个是cti_dialplan_extensio@domain,保存单个拨号方案配置,一个是cti_dialplan_context@domain把多个拨号方案组合一个路由表。拨号方案和路由配置修改后会实时生效。

    配置

    1. cti_dialplan_extensio@domain [哈希表]
      • key 拨号方案的名字
      • value
    录音的例子
    {
        "condition": [
            {
                "field": "${record_filename}",
                "description": "测试是否已经启动录音",
                "expression": ".+",
                "anti-action": [
                    {
                        "application": "export",
                        "data": "RECORD_READ_ONLY=false",
                        "description": "是否只录音对方"
                    },
                    {
                        "application": "export",
                        "data": "RECORD_WRITE_ONLY=false",
                        "description": "是否只录音本方"
                    },
                    {
                        "application": "export",
                        "data": "RECORD_BRIDGE_REQ=false",
                        "description": "是否应答后开始录音"
                    },
                    {
                        "application": "export",
                        "data": "RECORD_STEREO=false",
                        "description": "是否双道录音"
                    },
                    {
                        "application": "export",
                        "data": "record_filename=$${recordings_dir}/${strftime(%Y-%m-%d)}/${caller_id_number}.${destination_number}.${strftime(%H-%M-%S)}.${uuid}.wav",
                        "description": "录音录音文件名"
                    },
                    {
                        "application": "record_session",
                        "data": "${record_filename}",
                        "description": "开始录音"
                    }
                ]
            }
        ],
        "continue": true
    }
    
    外呼的例子
    {
        "condition": [
            {
                "field": "destination_number",
                "expression": "^00\\d*$",
                "description": "静止呼叫国际长途",
                "action": [
                    {
                        "application": "hangup",
                        "description": "00开始的号码挂断"
                    }
                ],
                "break": "on-true"
            },
            {
                "field": "destination_number",
                "expression": "^\\d+$",
                "description": "允许全数字号码呼出",
                "action": [
                    {
                        "application": "bridge",
                        "description": "通过default网关呼出",
                        "data": "sofia/gateway/default/${destination_number}"
                    }
                ]
            }
        ]
    }
    

    这里就不做解释了,具体参考FreeSWITCH的拨号方案写法。
    支持嵌套等XML拨号方案的所有功能。

    1. cti_dialplan_context@domain [list]
    [
        "call extension",
        "call trunk",
        "testabc"
    ]
    

    CTI模块根据顺序把cti_dialplan_extensio@domain里面的内容组合成一个拨号方案的XML文件。

    呼叫路由规则

    1. 分机呼叫使用的呼叫路由规则,有关系统方面问题请找博主,看他名字和他一起技术交流学习
      如果分机配置了呼叫路由,就优先使用分机配置的呼叫路由,如果分机没单独配置呼叫路由,就使用SIP配置internal(分机注册的那个profile)的呼叫路由,如果sip的profile配置也没配置呼叫路由,就使用default这个呼叫路由。
    2. 网关呼入使用的呼叫路由
      如果网关配置了呼叫路由,就使用网关配置的呼叫路由,如果网关配置没配置呼叫路由,就使用SIp配置external(关联网关的那个profile)的呼叫路由,如果sip的profile配置也没配置呼叫路由,就使用default这个呼叫路由。
    3. 呼叫路由配置必须小心,防止给盗打,网关和external配置的呼叫路由不能配置呼叫外线的拨号方案。
  • 相关阅读:
    判断子序列 -- 二分查找
    Greenplum的并发控制概述
    【R语言数据科学】(十八):系统聚类和K-Means聚类
    从裸机启动开始运行一个C++程序(十一)
    九、react生命周期钩子(旧)
    【计算机毕业设计】7.线上花店系统maven源码
    ArrayList与顺序表
    用 ChatGPT 做一个 Chrome 扩展 | 京东云技术团队
    Qt作业五
    Spring基础:依赖注入
  • 原文地址:https://blog.csdn.net/weixin_63626388/article/details/126487674