DAG1000-4S4O如何对接Freeswitch
组网说明
首先介绍一下DAG和Freeswitch对接的拓扑图: PSTN--->FXO--->SIP--->Freeswitch--->SIP--->FXS
运营商模拟线路接入DAG FXO口,通过Freeswitch路由到DAG FXS.本例是一个典型的自建型呼叫中心的应用,呼叫中心从电信运营商那里申请到模拟线路,接到DAG1000-4S4O 网关的FXO口上,DAG1000-4S4O 网关将来电送到Freeswitch平台,由Elastix对呼叫进行分配,并最终由座席(FXS)端接听。由于FXS和FXO是在一台设备上的,如果停电或者出现断网,DAG1000-4S4O 网关可以直接将PSTN呼入的电话送到FXS, 也可以直接把FXS外呼的电话送到FXO, 即实现断网断电逃生。
FXS对接Freeswitch
Freeswitch配置分机介绍
FreeSWITCH默认已经配置了分机1000-1019,如果您需要添加用户,只需要简单执行三步: 1. 在 conf/directory/default/ 增加一个用户配置文件 2. 修改拨号计划(Dialplan)使其它用户可以呼叫到它 3. 重新加载配置使其生效
添加分机帐号
如果想添加分机号1020。只需要到 conf/directory/default 目录下,将 1000.xml 拷贝到 1020.xml。打开1020.xml,将所有1000都改为1020。并然后存盘退出。
vi ./conf/directory/default/1020.xml <include> <user id="1020"> <params> <param name="password" value="$${default_password}"/> <param name="vm-password" value="1020"/> </params> <variables> <variable name="toll_allow" value="domestic,international,local"/> <variable name="accountcode" value="1020"/> <variable name="user_context" value="default"/> <variable name="effective_caller_id_name" value="Extension 1020"/> <variable name="effective_caller_id_number" value="1020"/> <variable name="outbound_caller_id_name" value="$${outbound_caller_name}"/> <variable name="outbound_caller_id_number" value="$${outbound_caller_id}"/> <variable name="callgroup" value="techsupport"/> </variables> </user> </include>
修改分机拨号规则
接下来,修改拨号规则,使其它用户可以呼叫到它 vi ./conf/dialplan/default.xml, <condition field="destionation_number"expression="^(10[01][0-9])$"> 改为: <condition field="destionation_number" expression="^(10[01][0-9]|1020)$">
熟悉正则表达式的人应该知道,“^(10[01][0-9])$”匹配被叫号码1000-1019。因此我们修改之后的表达式就多匹配了一个1020。FreeSWITCH使用Perl兼容的正则表达式(PCRE)。 现在,回到FS-Con,或启动fs_cli,执行 reloadxml 命令使新的配置生效,有的版本的Freeswitch可能不生效,运行shutdown 命令关闭Freeswitch然后重新打开Freeswitch服务。
FXO网关对接Freeswitch