首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏菩提树下的杨过

    freeswitch笔记(3)-esl入门

    esl全称Event Socket Library, 通过它可以与freeswitch进行交互,esl client支持多种语言,本文将以esl java client为例,演示一些基本用法: 一、两种模式 如上图,inbound模式下:java应用引用esl java client的jar包后(注:esl java client底层是依赖netty实现的),连接到fs(fs内置了mod_event_socket package com.cnblogs.yjmyzz.freeswitch.esl; import org.freeswitch.esl.client.IEslEventListener; import org.freeswitch.esl.client.inbound.Client; import org.freeswitch.esl.client.inbound.InboundConnectionFailure ; import org.freeswitch.esl.client.transport.event.EslEvent; import org.freeswitch.esl.client.transport.message.EslHeaders

    7.3K22发布于 2020-02-18
  • 来自专栏菩提树下的杨过

    freeswitch笔记(8)-esl outbound 填坑笔记

    github上的esl-client已经N年未更新了,上面有一堆bug,记录一下: 一、内存泄露 org.freeswitch.esl.client.transport.message.EslFrameDecoder https://github.com/esl-client/esl-client/issues/24 也有记载 参考下图,手动加上释放处理即可 ? 二、线程池优化 ? 连接到esl client,初始化channel。 既然已经是线程池了,为啥这里esl的事件又单独交给1个单线程池来处理呢? 上述这些问题,笔者已经fork了一份代码进行了修改,有兴趣的同学,欢迎fork,地址:https://github.com/yjmyzz/esl-client

    2.4K31发布于 2020-07-07
  • 来自专栏菩提树下的杨过

    FreeSwitch: esl inbound模式下外呼拨号

    相信大家可能接到过一些电话,听上去不象是真人打过来的,比如:通知“您的信用卡到期了”,或者“您订的飞机航班取消了,请尽快改签或取消行程”,这种就是所谓的“自动外呼”系统,技术上讲,可以通过 esl inbound 模式实现(注:对esl不熟悉的朋友,戳这里) 大概思路: 先把一些要外呼的任务计划,落地存储(比如:在某个时间点,应该去拨打哪些号码,放哪些语音) 搞个job去轮询,把这些任务定时取出来 (注:1-2这二个步骤 然后在esl inbound的代码中调用: client.sendAsyncApiCommand("luarun", "callout.lua"); 方法2的实现细节:直接在java代码中,发起originate

    1.7K10编辑于 2024-01-14
  • 来自专栏菩提树下的杨过

    FreeSwitch: esl 调用lua动态传参&日志查看

    argv是1个内置的变量,存储了传进来的参数(注:下标从1开始) 注2:lua脚本一般不太容易断点调试,所以建议关键的地方打日志(类似freeswitch.consoleLog 或 print) 然后esl

    1K10编辑于 2024-01-16
  • 来自专栏硬件分享

    电容器的ESR、ESL,会有什么影响

    电容器的ESR、ESL 电容器的等效电路与RLC串联电路相同 ESR:等效电阻 ESL:等效电感 串联时的阻抗如何变化? 串联时的阻抗 不同元件时的阻抗 在谐振点,电容器与ESL不存在阻抗,仅ESR存在阻抗在谐振点的频率由电容器和ESL决定,各元件成分决定阻抗的特性。

    3.5K40编辑于 2022-11-18
  • 来自专栏pyvoip

    自定义Python版本ESL库访问FreeSWITCH

    环境:CentOS 7.6_x64 Python版本:3.9.12 FreeSWITCH版本 :1.10.9 一、背景描述 ESL库是FreeSWITCH对外提供的接口,使用起来很方便,但该库是基于C语言实现的 这里记录下使用自定义Python版本(比如自编译的Python版本)编译及使用ESL的过程,并提供预编译的二进制文件。 -config python-config 3、编译ESL库 1) 生成Makefile文件 进入 freeswitch-1.10.9. 2)编译ESL模块 进入 freeswitch-1.10.9. -release/libs/esl 目录,执行 编译操作: make py3mod 图片 三、运行效果 1、ESL库导入效果 在编译目录导入ESL库,具体效果如下: 图片 2、接收事件 这里将ESL库复制到其它机器进行事件接收测试

    1.4K90编辑于 2023-04-25
  • 来自专栏菩提树下的杨过

    freeswitch笔记(9)-esl outbound中如何放音采集按键?

    关于这个功能,esl-client 上给出的源码示例极具误导性,根本跑不起来,见: https://github.com/esl-client/esl-client/blob/master/src/test /java/OutboundTest.java 正确姿势:必须在事件订阅的回调里,才能拿到用户按键值 示例代码: package org.freeswitch.esl.client; import org.freeswitch.esl.client.dptools.Execute ; import org.freeswitch.esl.client.dptools.ExecuteException; import org.freeswitch.esl.client.internal.Context ; import org.freeswitch.esl.client.outbound.IClientHandler; import org.freeswitch.esl.client.outbound.IClientHandlerFactory ; import org.freeswitch.esl.client.outbound.SocketClient; import org.freeswitch.esl.client.transport.event.EslEvent

    1.8K41发布于 2020-08-10
  • 来自专栏菩提树下的杨过

    freeswitch笔记(4)-esl inbound模式的重连及内存泄露问题

    esl inbound client,内部有一个canSend()方法: public boolean canSend() { return channel ! ; } 大多数情况下(之所以说大多数情况是因为最末尾还有一个authenticated),都可以用它来检测网络是否断开,如果断开了,可以自己写代码重连(注:0.9.2版本依赖的netty较老,esl 而且在org.freeswitch.esl.client.inbound.Client#connect()方法里,有一个判断: ? 如果之前有连着,先close断开,接下来看close方法: ? 为了重现这个问题,我们先准备一段代码: import org.freeswitch.esl.client.IEslEventListener; import org.freeswitch.esl.client.inbound.Client ; import org.freeswitch.esl.client.transport.event.EslEvent; public class InboundTest { private

    3K31发布于 2020-02-24
  • 来自专栏菩提树下的杨过

    FreeSwitch: ESL Inbound内联模式下如何设置单腿变量

    outbound外联模式下,可以参考我先前写的文章:freeswitch: ESL中如何自定义事件及自定义事件的监听,使用export导出变量。 但是inbound模式下,ESL client并未封装export命令,如果要给某条腿附加一个变量值,可以借助uuid_setvar命令。 二、ESL Inbound示例代码 try { //inbound test final Client inboundClient = new Client(); inboundClient.connect

    1.6K20发布于 2021-07-01
  • 来自专栏菩提树下的杨过

    freeswitch: ESL中如何自定义事件及自定义事件的监听

    可参考以下代码(注:以下所有代码依赖的esl-client,来自于github上的最新代码) @Override public void onConnect(Context context, EslEvent ExecuteException e) { e.printStackTrace(); } finally { context.closeChannel(); } } ESL 而且用export导出的变量,在取值时,要加上variable_前缀,即: event.getEventHeaders().get("variable_MY-VAR-2"); 另外还有一个大坑,可能是esl-client 上述完整示例代码见: https://github.com/yjmyzz/esl-client/blob/master/src/test/java/org/freeswitch/esl/client/CustomEventTest.java

    4.4K31发布于 2021-03-04
  • 来自专栏3D视觉从入门到精通

    TPAMI 2023|eSL-Net++:基于事件相机的超分辨率图像恢复

    在使用合成数据集进行训练后,所提出的eSL-Net可以极大地提高7-12 dB的性能。此外,不需要额外的训练过程,所提出的eSL-Net可以很容易地扩展到帧率与事件相同的连续帧生成任务中。 eSL-Net,在统一的框架下解决噪声、运动模糊和低空间分辨率的问题。 如图2所示,eSL-Net的基本思想是将基于事件的强度图像重建方法的更新步骤映射到由多个固定阶段组成的深度网络架构,每个阶段对应于公式(9)的一次迭代,因此eSL-Net是一个可解释的深度网络。 算法理论 图3 eSL-Net++的模型流程 图4 eSL-Net++的模型细节 实验结果 我的思考 虽然同样都是基于数据增强的稀疏学习模型,相比于eSL-Net,eSL-Net++主要的优化在于它不仅仅是将事件通过卷积直接作用在图像上来迭代计算图像的稀疏编码 综上,eSL-Net和eSL-Net++最值得借鉴学习的地方就是,两者利用稀疏编码的思想对图像和事件进行处理的过程,需要进一步查看源码来学习。

    86920编辑于 2023-04-30
  • 来自专栏云深之无迹

    Qualcomm《Pseudo-Capless LDO设计指南》解读

    100 400 以上文档中列出了针对不同负载电容、不同电压变化场景下,允许的最大线路寄生电感(ESL)。 如果超出ESL要求,必须在LDO输出端局部增加电容,不能算Pseudo-Capless。 但是大概的直观感觉是负载电容大,允许的ESL更高。反过来说负载电容小,ESL要求更严苛(线路短,寄生小)。 如何计算系统的Lumped ESL(总等效ESL) 文档提出了三种常见连接结构,并给出如何估算总ESL的方法: 案例 连接方式 ESL计算方式 注意事项 Case 1 单负载+单电容 LDO到电容的单条 trace的ESL 负载电容总和必须满足要求。 Case 3 串联负载(daisy-chain) 第一颗大电容前的trace ESL总和 如果第一颗大电容>1uF(或0.47uF,低电流情况),则只看到第一大电容前的trace ESL

    79210编辑于 2025-04-28
  • 来自专栏无量测试之道

    Python + Pandas + Matplotlib初探数据分析

    = [] FIJ_dt = [] CNSZV002_data = [] CWH_data = [] CWSW_data = [] ESL_data = [] FIJ_data = [] for i ': ESL_data.append(all_data[i][2]) ESL_dt.append(all_data[i][1]) elif all_data[i] ', '2019-01', 11008), ('ESL', '2019-02', 11605), ('ESL', '2019-03', 14493), ('ESL', '2019 -04', 12231), ('ESL', '2019-05', 13571), ('ESL', '2019-06', 12307), ('ESL', '2019-07', 13777 ), ('ESL', '2019-08', 12866), ('ESL', '2019-09', 13276), ('ESL', '2019-10', 13223), ('ESL

    53920编辑于 2022-07-04
  • 来自专栏菩提树下的杨过

    以呼叫中心为例解释如何将有状态设计转换成无状态设计?

    所以调用ACD Service 通常设计成异步调用,等ACD分到人后,再主动回调ESL Client,ESL Client调用对应的指令,最终把客人与客服的电话桥接(brige)起来,他俩才能听到对方的声音 ,必须回调到Esl Client-1(这里需要1个寻找特定机器回调的处理),而且还要带上用户来电1的特定标识。 ESL Client与ACD Service 可以很简单的弹性伸缩而不影响业务。 ? 可以借助消息队列来改进,比如ACD Service分配到客服后,把分配结果发到Kafka队列中,ESL Client监听MQ即可,不过要注意的是,消息建议用广播的方式,让所有ESL Client都能监听消费每 比如:来电1的客服分配结果,ACD Service发到Kafka后,被ESL Client-2监听消费了,ESL Client-1可能就拿不到了(当然:ESL Client-2也可以判断,如果不是属于自己的分配结果

    1.7K21发布于 2020-12-08
  • 来自专栏蓝牙Ble/Mesh

    【蓝牙系列】蓝牙5.4到底更新了什么(1)--- PAwR

    整个网络中,单个ESL的唯一地址是组ID和ESL ID的组合,因此,这就意味着基于新标准的ESL网络最多可以包含32640个电子货架标签,且每个标签都可以从单个接入点进行控制。 1. 但是大多数命令和响应都是使用 PAwR PDU 传输的 ESL 消息。 ESL 使用由 8 位 ESL ID 和 7 位组 ID 组成的设备寻址方案。 ESL ID 在由组 ID 标识的设备组中是唯一的。因此,ESL 设备网络最多可包含 128 个组,每个组最多包含 255 个属于该组成员的独特 ESL 设备。 写入的数据包括由 ESL ID 和 Group ID 组成的 ESL 地址的分配。 Group是一个 ESL profile 概念,但它的值也用来表示 ESL 设备应该扫描的子事件的编号。 作为 ESL 组#1 成员的所有 ESL 在 PAwR 子事件#1 上同步,因此接收此 PDU。 ESL_ID=n 的 ESL 处理有效载荷中的唯一命令并在 PAwR 响应槽 #0 中响应。

    11.6K12编辑于 2023-03-08
  • 来自专栏数据科学与人工智能

    【机器学习】机器学习资料大汇总

    注:本页面主要针对想快速上手机器学习而又不想深入研究的同学,对于专门的researcher,建议直接啃PRML,ESL,MLAPP以及你相应方向的书(比如Numerical Optimization, Koller因提出了Probabilistic Relational Models拿到了2001年的IJCAI Computers and Thought Award 统计学习|斯坦福 授课老师是ESL 贝叶斯思想 MLAPP 第5章 Bayesian statistics 第6章 Frequentist statistics 机器学习第6章 贝叶斯学习 监督学习 ESL 第2章 Overview 统计学习方法概论 《机器学习》(Mitchell) 第1章 引言 PRML 第1章 Introduction MLAPP 第1章 Introduction 第2章 Probability ESL 4章 Linear Method for Classification 统计机器学习 第6章 逻辑斯谛回归与最大熵模型 4 神经网络 PRML 第5章 Neural Networks ESL

    1.7K90发布于 2018-02-26
  • 来自专栏FreeSWITCH中文社区

    FreeSWITCH如何开启Event Socket Language支持

    本文将介绍如何在FreeSWITCH中开启Event Socket Language(ESL)支持,以及如何使用golang语言来编写ESL应用程序。 开启ESL支持 要开启ESL支持,需要在FreeSWITCH的配置文件中启用mod_event_socket模块,以及设置相应的参数。 这样,就开启了ESL支持,可以使用ESL客户端来连接到FreeSWITCH的Event Socket服务器了。 使用golang编写ESL应用程序 要使用golang编写ESL应用程序,需要使用一个支持ESL的golang库。 总结 本文介绍了如何在FreeSWITCH中开启Event Socket Language(ESL)支持,以及如何使用Golang语言来编写ESL应用程序。

    1.2K11编辑于 2025-02-19
  • 来自专栏光芯前沿

    分段电极设计TFLN调制器实现去DAC的直接数字-光转换技术突破

    分段长度设计(ESL)的技术实现 3.1 电极分段的逆向设计算法       ESL技术的核心是基于功率线性化目标的分段长度求解: 1.  图5显示,ESL-DOC的功率传输曲线与理想直线的吻合度超过99.5%,而传统二进制加权DOC在码0和码15处的偏差超过1 LSB,呈现明显的"正弦波"畸变。 图7的对比实验表明: - 实现10⁻¹²的SER时,ESL-DOC仅需10dB光功率,较传统方案降低5dB; - 相同光功率(15dB)条件下,ESL-DOC的误码率比二进制DOC低10¹⁰倍。       这种性能提升源于ESL技术将符号功率间隔从非均匀的2.3%-12.7%优化为均匀的6.67%,使接收机的判决阈值设计难度大幅降低。 5.2 异质集成芯片的工程实现       实际制备的TFLN光子芯片包含6组ESL-DOC与6组二进制加权DOC,单个ESL-DOC的物理尺寸为5mm×2mm,分段电极宽度2.4μm,间隔5μm。

    36600编辑于 2025-07-02
  • 来自专栏石开之旅

    硬件笔记(26)---- 高速电路中滤波电容的选取

    先要知道电容的等效电路  其中ESL取决于电容的类型和封装,一般用贴片陶瓷电容为例,对于直插式电解电容,他们的ESL很大。 按下表,封装越大,ESL越大,但是0612有些例外 0612和1206就是 长短边的区别,0612是长边为焊接边,一方面长边的焊接面积更大,一方面内部电容体到焊盘的距离近,因此有最低的ESL 电容器件在谐振频率时阻抗最小 ,在谐振点之前,阻抗由电容主导,之后的由ESL主导 但是滤波时如果只是用不同容值,但同一封装的电容,有可能会出现这样的情况

    38910编辑于 2024-03-15
  • 来自专栏技术杂记

    RabbitMQ 的CLI管理工具 rabbitmqadmin(2)

    里找到 如果之前没安装过 Erlang ,可以直接下载 [root@h102 rabbitmq]# wget https://packages.erlang-solutions.com/erlang/esl-erlang /FLAVOUR_1_general/esl-erlang_18.3-1~centos~6_amd64.rpm --2016-04-18 16:45:35-- https://packages.erlang-solutions.com /erlang/esl-erlang/FLAVOUR_1_general/esl-erlang_18.3-1~centos~6_amd64.rpm Resolving packages.erlang-solutions.com awaiting response... 200 OK Length: 44480824 (42M) [application/x-redhat-package-manager] Saving to: “esl-erlang ============================>] 44,480,824 350K/s in 4m 54s 2016-04-18 16:50:31 (148 KB/s) - “esl-erlang

    54710发布于 2021-11-25
领券