随笔分类 -  09.Open Source

1 2 3 4 5 ··· 11 下一页
摘要:FreeSwitch: esl 调用lua动态传参&日志查看lua脚本在执行过程中,可动态接收参数,这样可以让系统更灵活,以上节的自动外呼为例,callout.lua改成下面这样: -- 主叫 local callernum = argv[1]; -- 被叫 local calleenum = argv[2]; freeswitch.consoleLog(" 阅读全文
posted @ 2024-01-15 09:59 菩提树下的杨过 阅读(118) 评论(2) 推荐(0) 编辑
摘要:FreeSwitch: esl inbound模式下外呼拨号相信大家可能接到过一些电话,听上去不象是真人打过来的,比如:通知“您的信用卡到期了”,或者“您订的飞机航班取消了,请尽快改签或取消行程”,这种就是所谓的“自动外呼”系统,技术上讲,可以通过 esl inbound模式实现(注:对esl不熟悉的朋友,戳这里) 大概思路: 先把一些要外呼的任务计划,落地 阅读全文
posted @ 2024-01-13 17:17 菩提树下的杨过 阅读(102) 评论(0) 推荐(0) 编辑
摘要:FreeSwitch+lua实现IVR(互动式语音应答)IVR(Interactive Voice Response)交互式语言应答,是呼叫中心的1个经典应用场景,FreeSwitch官方有一个利用lua实现的简单示例,大致原理是利用lua脚本+TTS实现,记录一下:(环境:FreeSwitch 1.10.11 + Windows 10) 步骤1:安装T 阅读全文
posted @ 2024-01-13 15:32 菩提树下的杨过 阅读(54) 评论(0) 推荐(1) 编辑
摘要:FreeSwitch:群振、顺振研究在呼叫中心系统中,有二类特殊的应用场景,即所谓的“群振”(也叫“共振”或“同振”)以及“顺振”。 群振的业务场景: 当客人电话进线时,希望呼叫中心的所有客服都能响应(即:假设呼叫中心有5个客服在接线,客人来电时,这5个客服的电话一起响),任何1个客服都可以接听(注:该客服接起来后,其它客服的分机就不 阅读全文
posted @ 2024-01-07 16:07 菩提树下的杨过 阅读(122) 评论(0) 推荐(0) 编辑
摘要:Gson如何自定义Calendar序列化/反序列化直接开干吧,假设有这么一个类: @Data @AllArgsConstructor class BeanSample { public Calendar birthday; @Override public String toString() { if (birthday == null) { re 阅读全文
posted @ 2022-04-20 22:29 菩提树下的杨过 阅读(322) 评论(0) 推荐(0) 编辑
摘要:如何解析SIP报文本文讲述了如何使用开源项目pkts-sip对SIP进行解析,以及如何扩展 阅读全文
posted @ 2021-09-28 10:29 菩提树下的杨过 阅读(1661) 评论(0) 推荐(2) 编辑
摘要:flink 1.11.2 学习笔记(5)-处理消息延时/乱序的三种机制在实时数据处理的场景中,数据的到达延时或乱序是经常遇到的问题,比如: * 按时间顺序发生的数据1 -> 2,本来应该是1先发送,1先到达,但是在1发送过程中,因为网络延时之类的原因,导致1反而到达晚了,变成2先到达,也就造成所谓的接收乱序; * 发送方本身就延时了,比如:事实上按1 -> 2产生的数 阅读全文
posted @ 2021-09-05 17:28 菩提树下的杨过 阅读(886) 评论(0) 推荐(0) 编辑
摘要:FreeSwitch:send_dtmf/uuid_send_dtmf发送按键注意事项很多时候我们打电话到公司前台,会听到类似“欢迎致电XXX,办公电话请直拨分机,咨询XX请按1,咨询YY请按2”这样的语音提示。在一些特定流程中,系统自动发起呼叫打到前台,希望实现自动按键(即:不用人手动按键),FreeSwitch提供了2个基本命令: send_dtmf及uuid_send_dtmf 阅读全文
posted @ 2021-08-29 16:44 菩提树下的杨过 阅读(1329) 评论(3) 推荐(0) 编辑
摘要:FreeSwitch: ESL Inbound内联模式下如何设置单腿变量outbound外联模式下,可以参考我先前写的文章:freeswitch: ESL中如何自定义事件及自定义事件的监听,使用export导出变量。但是inbound模式下,ESL client并未封装export命令,如果要给某条腿附加一个变量值,可以借助uuid_setvar命令。 一、命令行验证 阅读全文
posted @ 2021-06-26 16:20 菩提树下的杨过 阅读(796) 评论(0) 推荐(0) 编辑
摘要:redis过期机制及注意事项按Redis官网说法:对于设置了过期时间的key,有2种清理机制,原文如下: How Redis expires keys Redis keys are expired in two ways: a passive way, and an active way. A key is passively 阅读全文
posted @ 2021-05-29 11:35 菩提树下的杨过 阅读(610) 评论(0) 推荐(0) 编辑
摘要:一次完整的通话过程SIP报文分析场景: 主叫方(1004,Yate客户端,端口号:52110) -> 通过FreeSWITCH(端口号:5070)呼叫 -> 被叫方(1000,ZoIPer客户端,端口号:5070) 被叫方经历:振铃->(N秒后)接听->正常通话一段时间后->挂断电话。 注:主叫、被叫、FreeSWITCH均在同1 阅读全文
posted @ 2021-05-23 22:49 菩提树下的杨过 阅读(2189) 评论(1) 推荐(1) 编辑
摘要:SIPp测试freeswitch用户注册默认情况下,拨打内部用户时,freeswitch需要该用户注册了才能对其发起呼叫,否则会提示-ERR USER_NOT_REGISTERED 如果使用wireshark等工具,可以在本机使用voip终端工具注册,抓包观察一下SIP报文。 注:如果mac上首次使用wireshark时,可能会遇到 yo 阅读全文
posted @ 2021-05-23 19:27 菩提树下的杨过 阅读(3069) 评论(0) 推荐(1) 编辑
摘要:freeswitch批量添加用户默认情况下,freeswitch内置了1000-1019这20个用户,如果需要添加更多用户,可以按如下步骤操作: 一、复制用户文件 \FreeSWITCH\conf\directory\default 下有1000.xml ~ 1019.xml 这20个用户的配置文件,以1000.xml为例: 1 阅读全文
posted @ 2021-05-17 14:02 菩提树下的杨过 阅读(1179) 评论(1) 推荐(0) 编辑
摘要:sipp学习笔记sipp是一个针对SIP协议进行测试的免费开源工具,可运行于windows/mac/linux,官方地址:http://sipp.sourceforge.net/。 一、安装 本文只介绍mac上的安装方式,其它平台(windows/linux)的安装,可参考官方文档 (注:感谢黄龙舟做的中文翻译) 阅读全文
posted @ 2021-05-16 17:22 菩提树下的杨过 阅读(3830) 评论(2) 推荐(1) 编辑
摘要:EvalEx示例项目做久了,难免会发现有些需求总是反复无常,今天想这样,明天想那样,但是逻辑本身又不是很复杂,比如: A、很多系统为了鼓励用户,会出一些奖励政策:连续打卡(或登录)X天,奖虚拟币Y枚。但是这个X,Y的系数,可能会经常调整,有时候甚至还会搞1个上限封顶。 B、系统出现重大故障后,事后复盘,要定故障等级 阅读全文
posted @ 2021-03-28 22:05 菩提树下的杨过 阅读(456) 评论(1) 推荐(0) 编辑
摘要:ES异地双活方案对于单机房而言,只要参考Elastic Search 官方文档,搭建一个集群即可,示意图如下: 原理类似分布式选举那一套,当一个master节点宕机时,剩下2个投票选出1个新老大,整个集群可以继续服务。对于核心系统,只部署单机房总归有点不保险,万一单机房故障就废了(比如:断电断网、或光缆被挖断)。那 阅读全文
posted @ 2021-03-28 21:05 菩提树下的杨过 阅读(3251) 评论(2) 推荐(1) 编辑
摘要:flink 1.11.2 学习笔记(5)-lambda表达式的使用问题flink的api,提供了流畅的链式编程写法,写起来行云流水,感受一下: SingleOutputStreamOperator<Tuple3<String, Integer, String>> counts = env //设置并行度1,方便观察输出 .setParallelism(1) //添加k 阅读全文
posted @ 2021-03-10 13:22 菩提树下的杨过 阅读(892) 评论(0) 推荐(3) 编辑
摘要:freeswitch: ESL中如何自定义事件及自定义事件的监听虽然freeswitch已经内置了一些标识的事件,比如:CHANNEL_CREATE(发起呼叫时触发),CHANNEL_HANGUP_COMPLETE(电话挂断时触发)...,但是有时候我们想根据业务需求,新增一些自定义的事件,比如:客人进线后,如果分配到了一个空闲的客服,希望触发一个特定的事件。 阅读全文
posted @ 2021-03-01 23:41 菩提树下的杨过 阅读(2881) 评论(2) 推荐(2) 编辑
摘要:flink 1.11.2 学习笔记(4)-状态示例接上节继续,今天学习Flink中状态的使用。数据处理的过程中,对当前数据的处理,有时候要依赖前一条数据的值,这种被称为“有状态”的计算。 举个例子:有这么一个公司,喜欢用内部沟通软件(类似企业微信)来做员工考勤,假设这个软件会定时上报每个员工的在线状态,如果在线(online),认为员工在上班,如果 阅读全文
posted @ 2020-12-20 21:41 菩提树下的杨过 阅读(370) 评论(0) 推荐(0) 编辑
摘要:flink 1.11.2 学习笔记(3)-统计窗口window接上节继续,通常在做数据分析时需要指定时间范围,比如:"每天凌晨1点统计前一天的订单量" 或者 "每个整点统计前24小时的总发货量"。这个统计时间段,就称为统计窗口。Flink中支持多种Window统计,今天介绍二种常见的窗口:TumbingWindow及SlidingWindow。 如上图,最下面 阅读全文
posted @ 2020-12-19 15:19 菩提树下的杨过 阅读(776) 评论(0) 推荐(0) 编辑

1 2 3 4 5 ··· 11 下一页