java esl连接freeswitch发送拨打电话<第二篇>
public class CopyOfEventEslInboundTestBak { private static final Logger log = LoggerFactory.getLogger(CopyOfEventEslInboundTestBak.class); private static String host = "127.0.0.1"; private static int port = 8021; private static String password = "ClueCon"; public static Client inBand() { final Client client = new Client(); try { client.connect(host, port, password, 20); } catch (InboundConnectionFailure e) { log.error("Connect failed", e); return null; } // 注册事件处理程序 client.addEventListener(new IEslEventListener() { public void eventReceived(EslEvent event) { // System.out.println("Event received [{}]" + // event.getEventHeaders()); // 记录接听次数和时间 if (event.getEventName().equals("CHANNEL_ANSWER")) { System.err.println("CHANNEL_ANSWER"); } if (event.getEventName().equals("CHANNEL_BRIDGE")) { System.err.println("CHANNEL_BRIDGE"); } if (event.getEventName().equals("CHANNEL_DESTROY")) { System.err.println("CHANNEL_DESTROY"); } if (event.getEventName().equals("CHANNEL_HANGUP_COMPLETE")) { System.err.println("CHANNEL_HANGUP_COMPLETE"); } } public void backgroundJobResultReceived(EslEvent event) { String uuid = event.getEventHeaders().get("Job-UUID"); log.info("Background job result received+:" + event.getEventName() + "/" + event.getEventHeaders());// +"/"+JoinString(event.getEventHeaders())+"/"+JoinString(event.getEventBodyLines())); } }); client.setEventSubscriptions("plain", "all"); return client; } public static void main(String[] args) throws InterruptedException { Client client = inBand(); dialPhone(client, "xxxxxxx电话号码"); } public static void dialPhone(Client client, String mobile){ if(client != null){ client.sendSyncApiCommand( "bgapi originate", "sofia/external/" + mobile + "@FreeSwitch的IP &playback(ivr/8000/mydoctestv2.wav)" ); //String response = client.sendAsyncApiCommand( "originate", "sofia/external/" + mobile + "@192.168.188.222 &playback(ivr/8000/mydoctestv2.wav)" ); //mydoctestv2 // System.err.println("reponse--->" + response); } }
相关推荐
freeswitch除了xml控制方式除外还支持eventsocket控制方式,本资源提供了eventsocket控制方式的demo
2. 呼叫控制:Java应用程序能够通过ESL发送命令到FreeSWITCH,实现对呼叫的全程控制。包括发起呼叫、接听呼叫、挂断呼叫等操作。用户可以通过Java应用程序的界面或API来触发这些呼叫控制功能。 综上所述,通过Java...
C语言下使用ESL连接FreeSwitch的demo,详细说明见:https://blog.csdn.net/xxm524/article/details/125840597
freeswitch esl cti 中间件
FreeSWITCH ESL ALL目标1、支持连接FreeSWITCH大规模集群2、更易于集成使用4、与spring boot 2.3.x深度整合,提供 starter5、可动态配置模块说明1.freeswitch esl 客户端(详细信息,移步至子模块)2.基于 freeswitch...
这实现了对freeswitch进行ESL调用的控制,基于本程序可实现对FS的完全控制,基于socket通讯,包含了基础库和调用程序,短小精悍,个人原创代码(不过,基础库是基于开源代码修改的),这是我自己的开源项目FSLMX中的...
freeswitch esl java client 示例代码,通过java调用esl中间件来进行freeswitch调度
org.freeswitch.esl.client-0.9.2.jar org.freeswitch.esl.client-0.9.2.sources.jar org.freeswitch.esl.client-0.9.2.javadoc.jar
实现了JSSIP 和 ESL 方式连接FreeSwitch
Java ESL调用FreeSWITCH发起呼叫 1:FreeSWITCH对外连接配置: 修改D:\VS\freeswitch-1.6.19\Win32\Debug\conf\autoload_configs\event_socket.conf.xml文件 所依赖包:JAVA调用FreeSWITCH: 需要Jar包:org....
<script type="text/javascript" src="./esl/esl.js"></script> </head> <body> <div id="main" style="height:400px"></div> <script type="text/javascript"> alert("yes"); var data = "{'one':'3'}"; ...
自由切换 FreeSwitch Java API。 install--由于china cov停止了google,无法使用git remote。 你可以从“wget ..........”获得它。 rpc--必须有两个包,分别是apach-xmlrpc 和ws-commons-util。
org.freeswitch.esl.client-0.9.2.jar org.freeswitch.esl.client-0.9.2.jar
FreeSWITCH学习参考文档 1、安装、编译、测试 2、动态添加用户 3、http接收话单 4、ESL 内联、外联 5、更改默认数据库到MySQL 更详细深入学习参考官方文档:https://freeswitch.org/
freeswitch-esl-python 注意:基本上,我想拥有一个更新的库。 我支持它是结构以及FreeSWITCH 1.4库 请参考: : 这是一个Python软件包,用于分发由FreeSWITCH生成的ESL.py模块。 这是一个自动生成的Swig模块,...
一个用于处理低级FreeSWITCH ESL连接以及关联的ESLevent的库。 - 目的 编写该库是为了实现完整的事件套接字库接口,并在处理Node.js中的FreeSWITCH时提供有意义的语义。 该库支持“入站”(连接进入FreeSWITCH的...
esl2 use esl.jar (freeswitch core) 安装esl.jar mvn install:install-file -DgroupId=org.freeswitch -DartifactId=esl -Dversion=1.6.19 -Dpackaging=jar -Dfile=esl.jar 编译 gradle release 部署 build/libs/...
esl-client是项目的基于Java的事件套接字库。 该项目是未维护的原始项目的分支,位于 状态:进行中... 例子 package com.ecovate.freeswitch.lb ; import com.google.common.base.Throwables ; import org....
media bug获取通话语音流的完整例子
本模块已经编译好了 可以直接使用 也有源码在里面 对freeswitch的空号识别有兴趣 已经想学习编写freeswitch模块的人 可以下载看看