pjsip的编译及简单使用

1.下载
下载地址:http://www.pjsip.org/download.htm
我下载的是pjproject-1.12.zip

2.编译
将下载的文件解压后,目录下有pjproject-vs8.sln,可以直接使用vs2005打开,
目录下的readme.txt文件中有编译说明,关于windows下的注意点如下:
  Building Win32 Target with Microsoft Visual Studio
          Generally we can just do these steps:

         1. Visual Studio 6: open pjproject.dsw workspace,
         2. Visual Studio 2005: open pjproject-vs8.sln solution,
         3. Create an empty pjlib/include/pj/config_site.h, and
         4. build the pjsua application.
新建一个空文件pjlib/include/pj/config_site.h后,编译pjsua工程出现以下错误:
1>LINK : fatal error LNK1104: cannot open file 'dsound.lib'

看名字dsound.lib像是directX里面的东本,试着在Microsoft DirectX 9.0 SDK (Summer 2004)/lib中查找(DirectX SDK需要单独下载),果然找到了,将路径添加进去后,编译通过了。在pjproject-1.12\pjsip-apps\bin目录中,可以看到编译好的程序 pjsua-i386-Win32-vc8-Debug.exe

3.测试
似乎不能在一台机子上打开两个客户端,所以借助虚拟机。分别在在p1、p2上运行程序,根据提示信息,拨打电话过程如下:
1).在p1中输入"m",接着输入sip:192.168.9.81(p2的ip)
2).p2中会打印出接听提示信息,输入"a"接听,再输入200作为应答
3).现在连接建立成功了,p2输入"h"挂电话
截个图:


4.用Wireshark截获的sip命令


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/434252.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IOS之导航控制器与表视图

7.1 导航控制器 7.2 创建第一级控制器 7.3 第一个二级控制器 7.4 第一个三级控制器 7.5 第二个二级表控制器 7.6 第三个二级表控制器 7.7 第四个二级表控制器 7.8 第五个二级表视图控制器 7.8 第六个二级表视图控制器 7.1 导航控制器 关于导航控制器和表视图 导航控制器和表视图…

gin redis 链接不上_Redis 高并发问题,及解决方案!

(一)redis技术的使用:redis真的是一个很好的技术,它可以很好的在一定程度上解决网站一瞬间的并发量,例如商品抢购秒杀等活动。。。redis之所以能解决高并发的原因是它可以直接访问内存,而以往我们用的是数据…

任务管理平台_软件品质评测系统任务分发管理平台

testkuaibao|软件测试自学公众号1●为什么需要任务分发平台●在一个基本的评测系统中我们有了评测执行工具、评测数据、评测环境就能进行一次评测任务的执行,但现在是大数据时代,我们更多的需求是针对大量数据进行评测。比如在输入法评测中我们有10000个…

[转载]Visual Studio 2010敏捷利剑:详解Scrum

Visual Studio 2010敏捷利剑:详解Scrum 【IT168 专稿】随着微软Visual Studio 2010 Ultimate Beta2版本的发布,除了它提供协同一致的ALM(应用程序生命周期)管理工具外,MSF for Agile Software Development过程框架从4.2升级到5.0,并且是以Scr…

网站收录工具(php导航自动收录源码)_10步把企业网站优化做到极致,SEO优化的核心知识...

对于企业网站优化,重要的就3点,内容原创、外链建设、内部优化,其它网站优化也会涉及到这些,但是企业站就变的简单的多了,下面10步让你把企业网站优化做到极致。第一步:首先域就是让搜索引擎选择我们网站的主…

mysql not is null_转!!mysql 字段 is not null 和 字段 !=null

今天在查询数据时,查到包含一条某个时间startTime(该字段默认为null ) 为null的记录,想把它过滤,加了 startTime! null 的条件,结果记录都没了,应该用条件 is not null。转自:https://segmentfault.com/a/1…

myeclipse mysql连接_MyEclipse连接Mysql数据库的方法(一)

准备工作:MyEclipse使用的是2013版,mysql Ver 14.14 Distrib 5.6.281.jar包的下载(jdbc驱动)我下载的是:mysql-connector-java-5.1.7-bin.jar2.打开MyEclipse---->选择window---->选择open perspecctive---->myeclipse Database Exp…

c malloc 头文件_C/C++笔试题:主要考察C/C++语言基础概念算法及编程,附参考答案...

1.编写my_strcpy函数,实现与库函数strcpy类似的功能,不能使用任何库函数;答:char *strcpy(char *strDest, const char *strSrc){if ( strDest NULL || strSrc NULL)return NULL ;if ( strDest strSrc)returnstrDest ;char *tem…

SQLlite数据导入到mySQL_如何批量导入数据到Sqlite数据库

做android和ios开发的一般都用Sqlite数据库,有的时候数据需要批量导入,那么如何导入呢?在这里,介绍2种方法供大家参考。一、用sqlite命令以windows系统为例,linux下命令是一样的。1.安装sqlite工具包首先要安装有sqlit…

c/c++ 运行库

11.2 C/C运行库 11.2.1 C语言运行库 任何一个C程序,它的背后都有一套庞大的代码来进行支撑,以使得该程序能够正常运行。这套代码至少包括入口函数,及其所依赖的函数所构成的函数集合。当然,它还理应包括各种标准库函数的实现。…

下面哪个字段是http请求中必须具备的_理解HTTP协议-HTTP协议详解总结

一、HTTP协议的演进HTTP(HyperText Transfer Protocol)协议是基于TCP的应用层协议,它不关心数据传输的细节,主要是用来规定客户端和服务端的数据传输格式,最初是用来向客户端传输HTML页面的内容。默认端口是80。1、HTTP 0.9版本 1991年这个版…

ad电阻原理图_负载电阻的原理及应用

在开始主题之前,我们需要了解的是:负载电阻是什么?将其拆分:负载和电阻;负载,顾名思义,是指连接在电路中的电源两端的电子元件。主要功能就是将电能转换成其他形式的能,以实现能量的…

python dataframe 新列_Python第二十四课:Pandas库(四)

Python第二十四课:Pandas库(四)点击上方“蓝字”,关注我们.不知不觉,我们已经跨越了千难万险,从零开始,一步步揭开了Python神秘的面纱。学到至今,回过头,才晓得自己在不知不觉已经学会了如此多的…

hashmap 遍历_别慌,送你21 个面试官必问HashMap考点

Java面试笔试面经、Java技术每天学习一点Java面试关注不迷路作者:菜鸟小于来源:https://www.cnblogs.com/Young111/p/11519952.html1:HashMap 的数据结构?A:哈希表结构(链表散列:数组链表)实现,…

22套精美的网页按钮图标设计推荐(包括PSD和AI文件)

图标是一个简单的单色符号,表示对象的基本形状。字形被广泛地使用在我们周围的公共场所,如机场和商场或购物中心。在网页设计当中,他经常会被使用,用来展示每个元素代表的意思,他简洁大方,一目了然&#xf…

轻gc和重gc分别在什么时候发生_GC发展与现状

GC发展Java不像C或C那样,需要程序员在编程的过程中,时刻注意申请内存保存对象,在对象使用完成后,要在合适的时机将对象占用的内存释放掉(析构函数);Java得意与内部的三大机制,保证了程序开发方便&#xff1…

nginx离线安装_web高可用-基于keepalived和nginx

一.体系架构在Keepalived Nginx高可用负载均衡架构中,keepalived负责实现High-availability (HA) 功能控制前端机VIP(虚拟网络地址),当有设备发生故障时,热备服务器可以瞬间将VIP自动切换过来,实际运行中体验只有2秒钟…

php mysql 实现原理_php+mysql分页原理实现

完整代码如下:!htmlhead-"-type"";GBK"styletype"text/css"body{font-size:12px;font-family:verdana;width:100%;}div.page{text-align:center;}div.content{height:300px;}div.pagea{border:#aaaadd1pxsolid;text-decoration:none;…

python任意代码都可以缩进去_我发现了个 Python 黑魔法,执行任意代码都会自动念上一段 『平安经』...

最近的"平安经"可谓是引起了不小的风波啊。作为一个正儿八经的程序员,最害怕的就是自己的代码上线出现各种各样的 BUG。为此,明哥今天分享一个 Python 的黑魔法,教你如何在你执行任意 Python 代码前,让 Python 解释器自…

域用户更改密码提示拒绝访问_AD域中的ACL攻防探索

前言关于域内ACL的攻防近两年经常被人所提起,同时也产生了很多关于域内ACL相关的工具和攻击方式,本文将会从ACL的概念谈起,然后介绍几种不同的域内攻击方式以及如何监测和防御对于ACL的攻击。ACL的概念和作用ACM:首先想要了解ACL首…