freeswitch公开教程-ESL

freeswitch公开教程-ESL,第1张

freeswitch公开教程-ESL

ESL连接

我们常用客户端形式连接到freeswitch

使用java语言

引用maven


    org.freeswitch.esl.client
    org.freeswitch.esl.client
    0.9.2

然后就可以在服务中进行创建esl inbound方式连接到freeswitch。

使用Client连接后,监听IEslEventListener后,就可以监听各类通道事件了。

常见的通道事件,create、answer、bridge、hangup等

CHANNEL_CREATE,//通道创建事件
HEARTBEAT,//心跳包
SESSION_HEARTBEAT,
CHANNEL_ANSWER,
CHANNEL_HANGUP_COMPLETE,
PLAYBACK_STOP

创建完成的client,可以发送同步命令和异步命令两种方式。

sendAsyncApiCommand

sendSyncApiCommand

有了这两个方法,我们可以通过java程序来 *** 作各类freeswitch命令,达到自己的目标。

比如使用uuid_transfer进行转接:

String command = "uuid_transfer "+ uuid + " -bleg " + extension;
EslMessage result =  freeswitchClient.sendAsyncApiCommand(command, "");

esl可以做很多有意思的工作,比如为了节约客服宝贵时间,批量给客户进行外呼,等客户接通后转接给空闲的坐席。

还比如,使用esl进行各类命令控制,callcenter的坐席上下线状态的动态控制,强制转接、监听进行质检。只要你想到的各类命令,通过一门后端语言进行esl连接,能够非常好的完成你的目标。

通过esl的事件监听,实现通话记录状态控制,一个channel的创建到answer,到hangup。

通过esl的事件监听,监听asr等事件。

通过esl的事件监听,监听你自己自定义的事件。

当然我们也可以使用其他语言的esl连接,包括c、python、golang等。

 

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5710151.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存