Sign inSign up

job520/freeswitch

By job520

Updated about 2 years ago

Image
0

53

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

about 2 years ago

docker pull job520/freeswitch:v1.10.9