ReSIProcate之编译、安装、配置、运行、测试proxy

reSIProcate实现GB28181服务——注册、心跳、已注册用户存储、catalog、invite、info、subscribe 为什么是reSIProcate 我最初使用的是exosip2,但是个人感觉作为sipserver并不是很合适,因此找到了reSIProcate, 代码封装很好,就是资料比较少,在阅读demo和源码后先整理一份用于注册和心跳的demo,希望能帮助到大家。 特别说明 我这个demo是stack和dum在独立的线程中,transport也在单独的线程中处理,因为是demo, 只测试了和海康摄像机的通信,也没有处理资源的销毁,只是作为参考,如果代码有不妥之处希望留言指正。 好,废话不多说,上代码! 代码 阅读详情

我使用了vs2008编译器,下载的最新版本ReSIProcate 1.51,在windows 7下编译

编译

 

Build->Configuration Manager钩掉basicCall,basicMessage,basicRegister,还有resip_test,接着Build Solution.

我用vs2008编译,有一处错误,AresDns Line 158,WarningLog之间使用条件编译不认识#字符

 

由

 

改为

 

注意:在Linux下编译,需要预先安装些外部库,在Ubuntu下运行参考文章中的命令:

 

sudo aptitude update; sudo aptitude install subversion g++ gperf libssl-dev libpopt-dev libpcre3-dev libdb4.2++-dev libboost-dev

 

安装运行resiprocate的proxy

运行 /repro/WinSetup/Debug/Setup.msi,默认安装到文件夹C:/Program Files/ReSiprocate

vs 2008 的repro project 属性修改:

Debugging Command 定位到repro可执行文件安装路径,默认设置为C:/Program Files/ReSiprocate/repro.exe

Build Events->Post-Build Event->Command Line设置为copy "$(TargetPath)" "C:/Program Files/ReproSIPProxy"

至此编译resiprocate,copy至安装文件夹,即可运行repro了

运行repro,在浏览器中输入http://localhost:5080,点击login并输入用户名admin和密码admin登录。

 

配置resiprocate的proxy

这里仅仅谈谈windows下的配置

 

两种方式:一、配置文件,二、命令行参数

配置文件方式需要代码做些稍许变动,这里仅仅谈谈比较原装的命令行参数,主要是那些影响proxy运行的关键参数。

 

先谈谈命令行参数几种比较简单的实现方式

一、vs2008中repro项目属性,参数填写在Debugging->command Arguments

二、新建快捷方式,在Targets一栏中的可执行文件后面空一格在"-"之后填写参数

三、新建cmd文件,同二可执行文件后面空一个在"-"之后填写参数

 

具体参数解析可参考CommandLineParser类中,采用了popt外部库解析命令行参数

 

[-parameter value] [-parameter value] ...

parameter为table每行第二个参数,而value参考每行最后一个参数,参数解释参考每行倒数第二个参数

如果某值第二个参数为0的话,需要直接在代码中设置值了

比如要设置log-type为vsdebugwindow,log-level为STACK的话,命令行参数就是

-l vsdebugwindow -v STACK

 

注意:ReSIProcate1.5版本,代码需要稍作修改才可以支持vsdebugwindow

 

 

一些参数的简单介绍

disable-auth  设置为true的话,电话注册可无需验证

record-route  设置的话,会话建立之后的sip信令依然从proxy走,当然要强制启用的话,得设置forceRecordRoute为true

 

测试resiprocate的proxy

如果手边比较方便的话,可以直接使用网关连接两个电话分机,或者用软电话,注册到proxy上,互相拨打。


也可以依照参考文章中的测试方法使用ReSIProcate自带的测试程序进行测试。

 

 

参考文章

http://www.resiprocate.org/Quick_Subversion_Checkout_and_Compilation_HOWTO#Unix_Systems_.28Including_OS_X.29

 

 

简单写了个纲要,还没有具体的测试

 

ReSIProcate协议栈 最新的开源ReSIProcate协议栈 E文苦手就这里下吧 立即下载

相关推荐

reSIProcate 协议源码

这是一份resip协议栈的源码 通过这份高质量的源码,你可以领会C++的世界是多么的优美

SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)

写在前面:本想淅淅沥沥的将sip语音对讲的整个开发过程全部记录下来,但由于工作原因,确实没时间写。这距离上一次使用sip都过去一年多了,再次使用时,稍感陌生,一周使用下来,却发现对源码了解更深。          这次继续先聊聊编译resiprocate-1.10.2,Windows的就不用说了,直接用VS打开工程文件,直接就编译过了,Linux版本的也简单,这就不说了。现在主要说说在Linux...

学无止尽,谨言慎行! 2611

repro_1.12(ubuntu).zip

resiprocate 1.12版本编译的repro 服务,提供sip服务

resiprocate: 开源的VoIP协议栈

是一个开源的VoIP协议栈,它提供了SIP、SDP等核心协议的支持,并且可以用于实现各种VoIP相关的应用程序和服务。 ## 什么是resiprocate? resiprocate是一个基于C++编写的开源VoIP协议栈。它的设计目标是提供一个高效、可靠、易于使用的API,以便开发人员可以快速地创建各种VoIP应用。resiprocate支持多种协议,包括SIP、SDP、TLS、HTTP等,并...

gitblog_00085的博客 794

SAP MM 物料描述MAKTX 40个字符不够用的问题处理

SAP物料描述表,长度40个字符一般情况下,40个字符在描述中也够用了,但是要加上规格之类的额外描述就不一定了,特别是对于辅助件-刀具。解决方案一:对maktx增强,换成CHAR80或者CHAR100的,但是风险较大,涉及到好多地方,另外SAP+ 算号器 也不支持。解决方案二:增强字段。内部顾问,建议在 那就在这里加一个字段,具体过程如下:1、创建域2、创建架构3、附加架构4、GUI 设置 5、后台设置6、MASS/MM17字段新增。过程1、创建域 SE112、创建结构 se11 3、MARA附加架构

GAVIN 4728

C#通过Aforge调用电脑摄像头(附代码)

C#标准库本身不带有能调用电脑摄像头的库,如果利用windows自身的API来实现的话,着实有些麻烦。Aforge这个第三方库能很好的实现调用、处理的功能。 PS:文末给大家分享了完整的项目源码,各位最好先下载下来,对照着来看 1、先看一下效果 2、Aforge介绍 AForge.NET是一个专门为开发者和研究者基于C#框架设计的,这个框架提供了不同的类库和关于类库的资源,还有很多应用程序例子,包括计算机视觉与人工智能,图像处理,神经网络,遗传算法,机器学习,机器人等领域。 3、我使用的开发环境 操作系统

weixin_44996090的博客 1万+

如何使用SIPp测试ReSIProcate的Proxy

花了两天时间阅读SIPp的文档,包括SIPp Reference Document,STSLabs User Manual。 颇有些说明书控的感觉,一切准备好了,开始进行了使用SIPp测试ReSIProcate的Proxy的实践,没想到颇为不顺,于是有了这篇博文,记录一下个人经验,以供后人借鉴。 一开始按照说明Run sipp with embedded server (uas

soliddream66的专栏 3295

基于stm32f407VGT6控制WS2812的TIM1+PWM+DMA实现方式

项目中使用到了ws2812灯带,作为产品的外观显示灯,经过开发之后,整理一下,仅供大家参考。 WS2812B是一个集控制电路与发光电路于一体的智能外控LED光源。 其外型与一个5050 LED灯珠相同, 每个元件即为一个像素点。 像素点内部包含了智能数字接口数据锁存信号整形放大驱动电路, 还包含有高精度的内部振荡器和可编程定电流控制部分, 有效保证了像素点光的颜色高度一致。数据协议采用单线归零码的通讯方式, 像素点在上电复位以后, DIN端接受从控制器传输过来的数据, 首先送过来的24bit数据被第一个像素

weixin_43608153的博客 9214

【reSIProcate学习】搭建与测试笔记

作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/ 1.目标 兼容标准、易用性、效率达到> 1000 tps 、占用空间< 1 MB、可移植、支持Windows、并且SIP安全 2.应用 嵌入式电话、软终端、网关、代理、B2BUA、IM/状态服务器、客户端。 3.特性 支持协议:UDP, TCP, TLS, IPv6 ...

weixin_34327761的博客 554

STM32 移植FreeModbus详细过程

modbus是一个非常好的串口协议(当然也能用在网口上),它简洁、规范、强大。可以满足大部分的工业、嵌入式需求。 这里详细说下如何将freemodbus移植到stm32平台。我之前下载的版本是1.6,我会在我的下载链接里面加上1.6的freemodbus压缩包以及我已经移植好的stm32 for freemodbus版本。我上传的移植好的绝对没问题,经过多个板子测试。这里编译器使用的是keil5.28,单片机用的是STM32F103RCT6。 移植到VET6以及ZET6的话只需要改一下选择的芯片就好,改法:

qq_40305944的博客 8万+

QT实现MQTT服务端(附完整源码)

QT实现MQTT服务端(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 1253

SER研究笔记

我们项目组现在的测试环境就是用SER作为SIP Proxy。SER以C写成,据说其性能比其他任何SIP Proxy都好,并且是高度可配置的。默认配置下,SER在响应中加入了类似如下的头部:Server: Sip EXpress router (0.9.6 (i386/linux))后来,从ekiga.net(Ekiga是FedoraCore4及以上附带的开源软电话,而ekiga.net是其默认SI

kenny_yu的专栏 5678

【Java基础知识 1】Java入门级概述

优快云最强Java专栏,包含全部Java基础知识点、Java8新特性、Java集合、Java多线程、Java代码实例,理论结合实战,实现Java的轻松学习。

学Java,找哪吒 16万+

转载笔记

http://blog.youkuaiyun.com/kenny_yu/archive/2007/03/12/1526434.aspx我们项目组现在的测试环境就是用SER作为SIP Proxy。SER以C写成,据说其性能比其他任何SIP Proxy都好,并且是高度可配置的。默认配置下,SER在响应中加入了类似如下的头部:Server: Sip EXpress router (0.9.6 (i386/lin

seraphsky的专栏 1960

Orange3实战教程:文本挖掘---主题建模

主题建模通过LDA、LSI或HDP算法分析文档集合,自动发现隐含主题结构。组件输入为文档语料库,输出包括带主题权重的语料库、主题词分布及完整主题数据。不同算法特性各异:LSI允许正负权重但解释性较弱,LDA更易解释,HDP参数复杂需谨慎设置。结果可结合词云、热力图等可视化工具分析主题特征及分布。示例显示如何通过预处理文本、选择算法(如提取5个LDA主题),并利用MDS和箱线图探索主题间关系及关键词分布。

err2008的专栏 362

PCL 基于强度的双边滤波【2026最新版】

基于强度信息的双边滤波代码实现、滤波前后点云未出现变化的原因以及获取带有强度pcd点云的方法。本文由优快云点云侠原创,博客长期更新,本文最近一次更新时间为:2026年5月24日。

点云侠的博客 29万+

SIP语音对讲从零到整之(一)sip介绍

该专栏选去两种协议(pjsip、resip)进行学习,其他协议暂时不纳入讲解范围。这两种协议均是我亲自使用、验证过。以下一些言辞仅是我一家之言,有不对的地方欢迎大家指正,谢谢。 PJSIP和ReSIP区别 1、ReSIProcate协议栈 ReSIProcate是SIPFoundry的开源项目,ReSIProcate协议栈是在VOCAL的基础上建立的,由于VOCAL开始只支持rfc325

学无止尽,谨言慎行! 1万+

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

【亲测免费】 reSIProcate:构建高效SIP协议应用的利器

reSIProcate 是一个开源的 SIP(Session Initiation Protocol)协议栈实现,旨在为开发者提供一个强大且灵活的工具,用于构建基于 SIP 协议的应用程序。该项目自 1.8.x 版本开始,采用了新的构建系统,简化了开发流程,同时保留了旧版本的构建系统以支持遗留项目。reSIProcate 不仅支持传统的 SIP 功能,还提供了对 IPv6、SSL 等现代网络技术的...

gitblog_01131的博客 555

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Resiprocate_源码分析

协议栈的层次SIP为应用层(Application-Layer)的协议,所以不需要改变操作系统便可以支持。SIP 已经获得3GPP (Third GenerationPartnershipProject)、3GPP2 (Third Generation PartnershipProjectNumber 2)等机构认证,成为未来第三代行动通讯 (3G) 的标准。下面是SIP的分...

weixin_34352005的博客 1080

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

reSIProcate介绍(英文)

  reSIProcate SIP stack overview reSIProcate is a high performance, object-oriented, C++ sip stack that is compliant with RFC 3261. It includes supp

NeoMc的技术博 2797

resiprocate:构建现代通信应用的开源利器

在当今数字通信快速发展的时代,VoIP技术已成为企业通信和个人交流的重要支撑。在众多开源VoIP解决方案中,resiprocate凭借其强大的协议支持和灵活的架构设计,为开发者提供了一个可靠的通信基础设施。 ## 协议栈的核心价值 resiprocate作为基于C++开发的开源项目,其设计理念围绕"模块化"和"可扩展性"展开。该项目不仅实现了SIP、SDP等核心通信协议,还整合了ICE、TUR

gitblog_00453的博客 666

Windows平台下reSIProcate项目使用

首先从官网上下载源码,进行编译,中途需要更改部分错误,更改后可以编译运行的项目地址在: 疑问: 1、为什么不需要BerkelyDB就能创建*.db文件? 因为 注意事项: 1、在repro.exe的当前目录下必须存在repro.config配置文件。 2、如果提示“libmysql.dll”文件找不到,可以在resiprocate-1.8.14\contrib\...

1004

resiprocate 学习笔记

resiprocate学习

liuxingrui4p的专栏 422

reSIProcate 项目使用教程

### 2.1 环境准备 在开始之前,请确保你的系统已经安装了以下工具和库: - Git - CMake - C++ 编译器(如 GCC 或 Clang) - OpenSSL - Ares 库 ### 2.2 下载项目 首先,使用 Git 克隆 reSIProcate 项目到本地: ```bash git clone https://github.com/resiprocate/resi...

gitblog_01100的博客 783

resiprocate编译测试

从github下载的源码,无论怎么配置boost的include路径,总是报编译错误。无奈,只能从tarball源码编译。tarball的源码从https://www.resiprocate.org/files/pub/reSIProcate/releases/下载,下载后解压到reciprocate目录下,然后执行下面命令就可以编译安装了。$ cd resiprocate $ ./configur

摩西的专栏 1759
上一篇: C库风格字符串实现CString的Replace函数功能
下一篇: 如何使用SIPp测试ReSIProcate的Proxy
soliddream66
博客等级 码龄19年 93粉丝 65原创
评论 14
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值