讲到 ESL (Event Sock Lib)
应该讲讲 fs_cli
。fs_cli
就是使用到了 ESL
。
在 FreeSWITCH的安装 完成后,/usr/local/freeswitch/bin
目录下,有一个 fs_cli
。今天我们就来讲讲这个应用的实现。
首先打开应用 ./fs_cli
就是熟悉的命令行输入。在终端上面,我们可以看到 FreeSWITCH
打印出来的日志和调试信息,也可以往里面输入一些命令执行。
输入 /exit
或者 Ctrl + D
退出应用。
关于 FreeSWITCH
自带的一些命令可以查看 官方的wiki
fs_cli 的实现
下面来谈谈 fs_cli
的实现。其实就是 fs_cli
连接到 mod_event_socket
的一个应用,建立连接后进行命令的控制。具体的 C
实现可以参考源码,下面简单的用 python
简单是模拟了一下使用 ESL
的原理。
# 简易流程 `python` Demo
import socket
# import json
PEER_IP = '127.0.0.1'
PEER_PORT = 8021
PASSWORD = 'ClueCon'
REV_LEN = 10240