freeswitch如何实现发送完invite之后发送INFO

时间: 2024-01-09 10:04:06 浏览: 35
在 FreeSWITCH 中,可以使用 ESL(Event Socket Library)API 来发送 INVITE 和 INFO 消息。首先,你需要打开一个 ESL 连接,并使用该连接发送 INVITE 请求。一旦接收到 200 OK 响应,即表示对方已经接受邀请并准备好通话。接着,你可以使用相同的连接发送 INFO 请求。 以下是一个示例代码片段,演示如何使用 ESL 发送 INVITE 和 INFO 请求: ``` #include <esl.h> esl_handle_t *handle = esl_connect("127.0.0.1", 8021, "ClueCon", NULL); esl_send_recv(handle, "sendmsg\n" "call-command: execute\n" "execute-app-name: sofia\n" "execute-app-arg: sip/1000@192.168.1.100\n" "event-lock: true\n\n"); esl_send_recv(handle, "sendmsg\n" "call-command: execute\n" "execute-app-name: info\n" "execute-app-arg: sip/1000@192.168.1.100\n" "event-lock: true\n\n"); esl_disconnect(handle); ``` 在这个示例中,我们首先使用 `esl_connect` 函数创建一个 ESL 连接。然后,我们使用 `esl_send_recv` 函数发送一个 INVITE 请求,并等待 200 OK 响应。接着,我们使用相同的函数发送一个 INFO 请求。 值得注意的是,这个示例中的请求都是同步发送的,也就是说,程序会一直等待服务器的响应。如果你需要异步发送请求,则可以使用 `esl_send` 函数。在这种情况下,你需要使用事件循环来等待服务器的响应。

相关推荐

最新推荐

recommend-type

OpenSips与freeswitch群集搭建

opensips与freeswitch群集搭建笔记,分享给要折腾的人, 很多资源太黑, 索要的积分太多
recommend-type

freeswitch呼入呼出路由配置详解

freeswitch呼入呼出路由配置详解 ,利用freeswitch 和 网关设备做了内呼和外呼,sip 中继设置 (给外呼用的,因为外呼用的是对等中继模式) SIP 中继就是填写我的freeswitch的ip和端口
recommend-type

Freeswitch外呼群呼接口

文档包含ivr外呼接口,不需要代码,根据freeswitch自己的接口mod_xml_rpc模块,外呼模式改为bgapi,就可以支持群呼了
recommend-type

Freeswitch集成科大讯飞及百度语音服务.docx

Freeswitch集成科大讯飞及百度语音服务,Freeswitch集成科大讯飞及百度语音服务,Freeswitch集成科大讯飞及百度语音服务
recommend-type

freeswitch动态获取queue队列.doc

freeswitch queue队列动态获取(dialplan,gateway同理),我做的每一步都写上了,有兴趣的可以看看
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

解释minorization-maximization (MM) algorithm,并给出matlab代码编写的例子

Minorization-maximization (MM) algorithm是一种常用的优化算法,用于求解非凸问题或含有约束的优化问题。该算法的基本思想是通过构造一个凸下界函数来逼近原问题,然后通过求解凸下界函数的最优解来逼近原问题的最优解。具体步骤如下: 1. 初始化参数 $\theta_0$,设 $k=0$; 2. 构造一个凸下界函数 $Q(\theta|\theta_k)$,使其满足 $Q(\theta_k|\theta_k)=f(\theta_k)$; 3. 求解 $Q(\theta|\theta_k)$ 的最优值 $\theta_{k+1}=\arg\min_\theta Q(
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。