Sign inSign up

job520/freeswitch

By job520

•Updated over 2 years ago

Image
0

54

job520/freeswitch repository overview

⁠启动命令

    docker run --name freeswitch1109 \
        -p 2022:22/tcp \
        -p 5060:5060/tcp \
        -p 5060:5060/udp \
        -p 5080:5080/tcp \
        -p 5080:5080/udp \
        -p 7744:7744/tcp \
        -p 8021:8021/tcp \
        -p 6000-6010:6000-6010/udp \
        --restart=no \
        -d \
        job520/freeswitch:v1.10.9

⁠容器相关操作

⁠进入 freeswitch 容器

docker exec -it freeswitch1109 /bin/bash

⁠进入 freeswitch 安装目录

cd /usr/local/freeswitch

⁠freeswitch 常用命令

⁠启动 freeswitch 控制台

fs_cli

⁠执行一条命令并回显后退出

fs_cli -x "xxx"

⁠连接到远程 freeswitch

fs_cli -H xx.xx.xx.xx -P 8021 -p xxx

⁠关闭 freeswitch

freeswitch -stop

⁠freeswitch 常用配置文件

⁠SIP(sofia) 配置(目录)

conf/sip_profiles/

⁠IVR 配置(目录)

conf/ivr_menus/

⁠用户相关配置(目录)

conf/directory/default/

⁠模块配置(目录)

conf/autoload_configs/

⁠主配置文件

/usr/local/freeswitch/conf/freeswitch.xml

⁠全局变量配置文件

/usr/local/freeswitch/conf/vars.xml

⁠用户配置文件

conf/directory/default.xml

⁠模块加载配置文件

conf/autoload_configs/modules.conf.xml

⁠播号计划配置文件

conf/dialplan/default.xml

⁠远程连接端口配置文件

conf/autoload_configs/event_socket.conf.xml

⁠呼出端口配置文件

conf/autoload_configs/switch.conf.xml

⁠动态获取xml模块配置文件

conf/autoload_configs/xml_curl.conf.xml

⁠freeswitch 其它常用目录

⁠数据库(sqlite)文件存放目录

db/

⁠声音文件存放目录

sounds/

⁠录音文件存放目录

recordings/

⁠脚本文件存放目录

scripts/

⁠freeswitch 日志文件存放目录

log/

⁠fs_cli常用命令

⁠查看版本

version

⁠查看当前运行状态

status

⁠设置控制台日志等级

console loglevel info/debug

⁠重新加载 XML 配置文件

reloadxml

⁠查看指定模块是否已加载

show modules mod_xxx

⁠加载指定模块

load mod_xxx

⁠卸载指定模块

unload mod_xxx

⁠获取全局变量的值

global_getvar xxx

⁠查看所有已注册的用户

show registrations

⁠查看指定用户是否已注册

sofia status profile internal reg 1001

⁠清理所有已注册的用户

sofia profile internal flush_inbound_reg

⁠发起呼叫
originate user/1001 &echo/&park/&hold
originate user/1001 &bridge(user/1002)
originate user/1001 &record(/tmp/test.wav)
originate user/1001 &playback(/tmp/hello.wav)
⁠显示当前活动的通道

show channels

⁠显示当前活动的呼叫信息

show calls

⁠对指定的通话进行录音

uuid_record UUID start /tmp/record.wav

⁠停止对指定通话的录音

uuid_record UUID stop all

⁠根据 UUID 杀掉某个任务

uuid_kill xxx

⁠强制挂机

hupall

⁠显示 SIP(sofia) 的注册信息及状态

sofia status

⁠显示指定 Profile 的详情

sofia status profile internal

⁠重新加载指定 Profile

sofia profile internal rescan

⁠重启指定 Profile

sofia profile internal restart

⁠开启 SIP 抓包

sofia global siptrace on

⁠关闭 SIP 抓包

sofia global siptrace off

⁠调整 SIP 日志级别

sofia tracelevel info/debug

⁠关闭 SIP 调试日志

sofia loglevel all 0

⁠呼叫队列相关
fifo list
fifo_member add user/1001
fifo_member del user/1001
⁠调用 lua 脚本

lua /tmp/test.lua

⁠显示动态xml配置模块的日志

xml_curl debug_on

⁠验证正则是否匹配

regex 1234 | \d{4}

⁠退出 FreeSWITCH 控制台

CTRL + D

⁠sipp 教程

⁠安装
yum -y install epel-release
yum -y install sipp
⁠常用参数及说明
参数                  说明
-sf                 指定 xml 文件,可分为 register.xml、uac.xml、uas.xml
-inf                指定 csv 文件,里面有帐号、密码、sip 服务器 ip 地址、sip 服务器端口号等信息
-i                  sipp 所在主机地址
-p                  sipp 端口号
-r                  发送外呼的数量, 常与 rp 参数联合使用。如: -r 1 -rp 1000 代表 1 秒发送 1 个外呼
-rp                 发送外呼的时间间隔,常与 r 参数联合使用。如: -r 1 -rp 1000 代表 1 秒发送 1 个外呼
-m                  总共发送外呼的数量
-l                  设置并发呼叫数,即同一时刻发起的外呼数量
⁠注册

sipp -sf register.xml -inf register.csv -i 10.0.0.11 -p 5001 -r 1 -rp 1000 10.0.0.11:5060 -m 10

⁠接听

sipp -sf uas.xml -i 10.0.0.11 -p 5001

⁠呼叫

sipp -sf uac.xml -inf uac.csv -r 1 -rp 1000 -i 10.0.0.11 -p 5002 10.0.0.11:5060 -m 10 -l 1

Tag summary

Content type

Image

Digest

sha256:d8a6c643f…

Size

338 MB

Last updated

over 2 years ago

docker pull job520/freeswitch:v1.10.9