FreeSwitch中如何添加新组和新用户以及配置网关的方法

624 阅读1分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第20天,点击查看活动详情

FreeSwitch中添加新组

FreeSwitch中默认有三个组,分别为:sales ,billing,support。 在 \conf\directory\default.xml 中可以查到。

注意: 在 FreeSwitch中,同一个用户可以在不同的分组中存在。官方解释如下 :


type="pointer" is a pointer so you can have the same user in multiple groups. It basically means to keep searching for the user in the directory.


若需要添加一个 名为 ZOO的新组,需要在 \conf\directory\default.xml 中,找到 标签,然后添加如下内容即可,

                  <group name="ZOO">                       <users>                       <user id="1005" type="pointer"/>                       <user id="1006" type="pointer"/>                       <user id="1007" type="pointer"/>                       <user id="1008" type="pointer"/>                       <user id="1009" type="pointer"/>                       </users>                   </group>    

在 FS_CLI.exe 中输入 reloadxml,重新加载新的XML文件即可。

FreeSwitch中添加新用户

FreeSwitch 中默认配置了20个用户,分别是: 1000 到 1019。在 \conf\directory\default 目录下有每个用户的XML配置文件。

若想新添加一个用户,可以通过如下步骤进行:

(1)在/conf/directory/default/增加一个用户配置文件.如下所示:

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

(2) 修改拨号计划,以使得其他用户可以呼到他。如下所示:

                   在  \conf\dialplan\default.xml中,修改 如下 语句 -  
                  <extension name="Local_Extension">                       <condition field="destination_number" expression="^(10[01][0-9])$">                     为 -》                    <extension name="Local_Extension">                        <condition field="destination_number" expression="^(10[012][0-9])$">    

(3) 在 FS_CLI.exe 中运行 reloadxml,即可生效。


FreeSwitch中配置网关的方法

在VOIP通信系统中,经常要用到网关。那么网关怎么和FreeSwitch在一起配合使用?

有如下需求:

有一虚拟运营商(即:SIP PROVIDER ),提供拨打外线的功能。从该处购买一 SIP 账号,具体配置信息如下:

用户名:user

密码: pass

服务器IP:100. 100.100.100

想通过和该SIP PROVIDER 对接实现拨打外线功能。即:0+要拨打的号码,就送到该SIP PROVIER (说明:此时的 SIP PROVIDER 相当于一网关)。

解决方法:

1)添加一个网关

                 在 \conf\sip_profiles\external 中添加一个名为GW_TEST.xml 的文件,内容如下:                   <gateway name="GW_TEST">                      <param name="realm" value="100. 100.100.100"/>                      <param name="username" value="user"/>                      <param name="password" value="pass"/>                   </gateway>  

(2) 新建一个拨码计划

                在 \conf\dialplan\default 中新建一个名为 call_gw_test.xml 的文件 ,内容如下:                   <include>                      <extension name="call out">                         <condition field="destination_number" expression="^0(\d+)$">                            <action application="bridge" data="sofia/gateway/GW_TEST/$1"/>                         </condition>                      </extension>                  </include>    

(3) 通过 FS_CLI.exe 运行 reloadxml ,即可生效。

\