05 2017 档案

摘要:一、 添加用户 1、conf/directory/default目录下添加用户文件名字是分机号.xml,例如1000.xml,它的内容如下: <include> <user id="1000" mailbox="1000"> <params> <param name="password" value 阅读全文
posted @ 2017-05-24 10:11 fire909090 阅读(4650) 评论(0) 推荐(0) 编辑
摘要:分类: 分类: freeswitch condition freeswitch condition 版权声明:本文为博主原创文章,未经博主允许不得转载。 版权声明:本文为博主原创文章,未经博主允许不得转载。 fs中dialplan中的condition变量可以是channel变量、内置变量 内置变量 阅读全文
posted @ 2017-05-24 10:10 fire909090 阅读(866) 评论(0) 推荐(0) 编辑
摘要:Dialplan 是freeswitch 对一个呼入电话的路由查询。通过 show dialplan 命令可以查看到当前freeswitch可以支持的哪些 dialplan. 常用的 dialplan 有 XML、LUA、inline等。 XML Dialplan 主要由一系列xml配置文件组成,格 阅读全文
posted @ 2017-05-22 17:55 fire909090 阅读(2543) 评论(0) 推荐(0) 编辑
摘要:sofia模块在freeswitch中的位置非常重要, 所有的sip通话都和它有关, 那么我们就看一下该模块的执行流程。 一、 实现的功能: 1. sip注册; 2. 呼叫; 3. Presence; 4. SLA, 等。 二、 主要的方法, 有三个, 分别为: [cpp] view plain c 阅读全文
posted @ 2017-05-17 19:55 fire909090 阅读(3041) 评论(0) 推荐(0) 编辑
摘要:我建了一个 Freeswitch 内核研究 交流群, 45211986, 欢迎加入, 另外,提供基于SIP的通信服务器及客户端解决方案。 这里以模块 helloworld 为例。 1. 创建模块目录 freeswitch/src/mod/applications/mod_helloworld 2. 阅读全文
posted @ 2017-05-16 16:48 fire909090 阅读(3253) 评论(1) 推荐(0) 编辑
摘要:以1002 呼叫 1003 为例。 Sip的状态流程 1002向FS发起INVITE消息,经过一次认证通过,1002在此向FS发起INIVTE消息。此时FS所做的处理为:1. 捕获该sip消息,在sofia中有一个对于ua Event消息事件的枚举定义:typedef enum nua_event_ 阅读全文
posted @ 2017-05-16 15:01 fire909090 阅读(1569) 评论(0) 推荐(0) 编辑
摘要:操作系统:debian8.5_x64 freeswitch 版本 : 1.6.8 python版本:2.7.9 开启python模块 安装python lib库 apt-get install python-dev 编辑modules.conf,开启python模块: languages/mod_p 阅读全文
posted @ 2017-05-12 13:59 fire909090 阅读(1031) 评论(0) 推荐(0) 编辑
摘要:操作系统:debian8.5_x64freeswitch 版本 : 1.6.8 本文仅描述sip注册的简单场景,即话机直接向处于同一个局域网的fs进行注册。 SIP协议的消息结构 消息框架 SIP协议是基于文本的协议,SIP协议的消息都遵从一个统一的消息结构: 起始行(Start-Line)、一个或 阅读全文
posted @ 2017-05-12 13:57 fire909090 阅读(2968) 评论(1) 推荐(1) 编辑
摘要:这几天用到freeswitch对接其它设备方面的知识,这里整理下,也方便我以后查阅。 操作系统:debian8.5_x64 freeswitch 版本 : 1.6.8 一、freeswitch作为被叫设备 freeswitch作为被叫设备和其它设备对接的情况比较简单,可以直接通过5080端口呼入。f 阅读全文
posted @ 2017-05-12 13:56 fire909090 阅读(5197) 评论(0) 推荐(0) 编辑
摘要:这是整理的关于freeswitch mod_event_socket的相关内容,这里记录下,也方便以后查阅。 mod_event_socket以socket的形式,对外提供控制FS一种途径, 缺省的IP是127.0.0.1,TCP端口是8021,可以在外部通过sokcet执行API/APP命令。 连 阅读全文
posted @ 2017-05-12 13:55 fire909090 阅读(2582) 评论(0) 推荐(0) 编辑
摘要:本文描述了生成freeswitch事件的几种方式,这里记录下,也方便我以后查阅。 操作系统:debian8.5_x64 freeswitch 版本 : 1.6.8 在freeswitch代码中加入事件 产生内置事件(以SWITCH_EVENT_MODULE_LOAD为例): switch_event 阅读全文
posted @ 2017-05-12 13:54 fire909090 阅读(1880) 评论(1) 推荐(0) 编辑
摘要:整体结构图 FreeswitchCore 模块加载过程 freeswitch主程序初始化时会从modules.conf.xml文件中读取配置,如果配置中如下内容生效: <load module="mod_sofia"/> 则执行加载sofia模块操作。 具体过程如下: main switch_cor 阅读全文
posted @ 2017-05-12 13:51 fire909090 阅读(4160) 评论(0) 推荐(0) 编辑
摘要:阅读目录 一. 单机安装、配置 二. 集群安装、配置 安装及部署 回到顶部 一. 单机安装、配置 1、下载zookeeper二进制安装包 下载 curl -L -O http://apache.fayea.com/zookeeper/stable/zookeeper-3.4.6.tar.gz 解压 阅读全文
posted @ 2017-05-09 16:19 fire909090 阅读(844) 评论(0) 推荐(0) 编辑
摘要:一、环境配置 操作系统:Cent OS 7 Kafka版本:0.9.0.0 Kafka官网下载:请点击 JDK版本:1.7.0_51 SSH Secure Shell版本:XShell 5 回到顶部 二、操作过程 1、下载Kafka并解压 下载: curl -L -O http://mirrors. 阅读全文
posted @ 2017-05-09 15:03 fire909090 阅读(2408) 评论(0) 推荐(0) 编辑
摘要:每个kafka broker中配置文件server.properties默认必须配置的属性如下: [java] view plain copy broker.id=0 num.network.threads=2 num.io.threads=8 socket.send.buffer.bytes=10 阅读全文
posted @ 2017-05-09 15:02 fire909090 阅读(335) 评论(0) 推荐(0) 编辑
摘要:Kafka是由LinkedIn开发的一个分布式的消息系统,使用Scala编写,它以可水平扩展和高吞吐率而被广泛使用。目前越来越多的开源分布式处理系统如Cloudera、Apache Storm、Spark都支持与Kafka集成。InfoQ一直在紧密关注Kafka的应用以及发展,“Kafka剖析”专栏 阅读全文
posted @ 2017-05-09 14:39 fire909090 阅读(218) 评论(0) 推荐(0) 编辑
摘要:条件变量 如果线程之间执行顺序上有依赖关系,可使用条件变量(Condition variables)。 可以到boost官网中参考条件变量(Condition variables)的使用。 条件变量必须和互斥量配合使用,等待另一个线程重某个事件的发生(满足某个条件),然后线程才能继续执行。共有两种条 阅读全文
posted @ 2017-05-03 13:45 fire909090 阅读(340) 评论(0) 推荐(0) 编辑
摘要:线程中断 在一个线程对象上调用 interrupt() 会中断相应的线程,并会在这个线程中抛出一个类型为 boost::thread_interrupted 的异常。 如果给定的线程不包含任何中断点,简单调用interrupt就不会起作用。 每当一个线程中断点,它就会检查interrupt是否被调用 阅读全文
posted @ 2017-05-03 13:43 fire909090 阅读(1022) 评论(0) 推荐(0) 编辑
摘要:在libxml的tutorial中介绍了一种用关键字查找节点的方法,这种方法将使用打xpath系列API。由于我才刚刚接触libxml,所以我对xpath的认识也仅仅是在tutorial提供的功能之内了。废话少说,直接进入整体。 我们在操作xml文件是经常需要根据特定的条件查找一系列的节点,为了实现 阅读全文
posted @ 2017-05-02 20:09 fire909090 阅读(2200) 评论(0) 推荐(0) 编辑
摘要:libxml读取的基本功能已经介绍过了,现在将介绍libxml编写的基本功能。 编写操作包含节点的添加,删除和修改。 对于添加,我们需要调用xmlNewTextChild函数来添加节点,需要xmlNewProp函数来添加属性。 xmlNewTextChild接受四个参数,第一个参数为新添加节点的父节 阅读全文
posted @ 2017-05-02 20:08 fire909090 阅读(917) 评论(0) 推荐(0) 编辑
摘要:在上一篇文章当中,我读取了各个节点的名字和内容,现在我将读取各个节点的属性。 [html] view plaincopyprint? <?xml version="1.0" encoding="UTF-8"?> <root> <node1>content1</node1> <node2 attrib 阅读全文
posted @ 2017-05-02 20:02 fire909090 阅读(2051) 评论(0) 推荐(0) 编辑
摘要:libxml是一个用于解析xml文件的库,在各个平台下都能使用,也支持多种语言,如c,Python等。这里是官方网站。上面有libxml的api和一些code examples,都是英文的。不过比较简单。 libxml的基础功能就是对xml的读和写。下面将简单介绍libxml的读的功能。(大部分内容 阅读全文
posted @ 2017-05-02 19:59 fire909090 阅读(12301) 评论(0) 推荐(1) 编辑
摘要:C++ Boost Thread 编程指南 0 前言 标准C++线程即将到来。CUJ预言它将衍生自Boost线程库,现在就由Bill带领我们探索一下Boost线程库。 就在几年前,用多线程执行程序还是一件非比寻常的事。然而今天互联网应用服务程序普遍使用多线程来提高与多客户链接时的效率;为了达到最大的 阅读全文
posted @ 2017-05-02 16:58 fire909090 阅读(553) 评论(0) 推荐(0) 编辑
摘要:bind - boost 头文件: boost/bind.hpp bind 是一组重载的函数模板.用来向一个函数(或函数对象)绑定某些参数. bind的返回值是一个函数对象. 它的源文件太长了. 看不下去. 这里只记下它的用法: 9.1 对于普通函数 假如有函数 fun() 如下: void fun 阅读全文
posted @ 2017-05-02 16:21 fire909090 阅读(452) 评论(0) 推荐(0) 编辑
摘要:本片文章主要介绍boost::function的用法。 boost::function 就是一个函数的包装器(function wrapper),用来定义函数对象。 1. 介绍 Boost.Function 库包含了一个类族的函数对象的包装。它的概念很像广义上的回调函数。其有着和函数指针相同的特性但 阅读全文
posted @ 2017-05-02 16:20 fire909090 阅读(196) 评论(0) 推荐(0) 编辑
摘要:前言 这篇文章总结的是C++中的类型转换,这些小的知识点,有的时候,自己不是很注意,但是在实际开发中确实经常使用的。俗话说的好,不懂自己写的代码的程序员,不是好的程序员;如果一个程序员对于自己写的代码都不懂,只是知道一昧的的去使用,终有一天,你会迷失你自己的。 C++中的类型转换分为两种: 而对于隐 阅读全文
posted @ 2017-05-02 15:38 fire909090 阅读(253) 评论(0) 推荐(0) 编辑
摘要:2016-09-05 10:36 194人阅读 评论(0) 收藏 举报 2016-09-05 10:36 194人阅读 评论(0) 收藏 举报 分类: C++(11) 分类: C++(11) 从一个简单的问题开始,删除数组中某个元素后连续重复的元素,例如 1,1,2,3,3,1,1,1,4,0 > 阅读全文
posted @ 2017-05-02 13:21 fire909090 阅读(388) 评论(0) 推荐(0) 编辑
摘要:1.关于set C++ STL 之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector, string, list等方便的容器,更重要的是STL封装了许多复杂的数据结构算法和大量常用数据结构操作。vector封装数组,list封装了链表,map和set封装了二叉树等,在封装这些数据结构的时 阅读全文
posted @ 2017-05-02 10:48 fire909090 阅读(428) 评论(0) 推荐(0) 编辑