libjingle开发人员指南
libjingle开发人员指南
libjingle SDK包含C + +源代码和文档,使您能够设计连接和网络交换数据的应用程序(通过点对点数据连接)。该SDK包含代码和示例应用程序,一个Window平台的Vs2005 的解决方案,其他平台的configuration and makefiles文件用来编辑程序。注意,代码有一些外部依赖(例如:语音聊天程序需要Linphone或GIPS VoiceEngine Lite,这取决于您的平台)。
该代码包括网络和代理协商类,XML解析类,STUN服务器,以及所有必要的连接和启动两台计算机之间交换数据的代码。连接代码使应用程序能够有力穿越NAT和防火墙设备使用ICE机制,使用STUN服务器来交换UDP或TCP数据包。您可以根据伯克利式的授权来使用代码,或扩展满足自己的特定需求。
Jingle and libjingle
libjingle是创建在XMPP协议扩展了(XEP - 0166)标准的时候。libjingle开发队伍建立了自己的协议来处理会话协商,并且后来又与XMPP协会共同指定了Jingle标准;因此,虽然了libjingle协议和Jingle非常相似,它们并不相同,不能互通互用。
libjingle的当前版本的代码仍然使用原来的内部协议,这是略有不同,并且不符合的Jingle规范。不过,有足够接近Jingle,这是值得学习的Jingle规格。存在“接近但不完全相同的”的条件,libjingle的音频内容的说明(早期版本的Jingle音频内容描述格式XEP - 0167),并且通过ICE传输说明(早期版本的Jingle Raw UDP 传输描述文档XEP - 0176),和raw UDP传输描述(早期Jingle使用的UDP传输描述文档XEP - 0177版)。凡本文件所 提到“Jingle”或其相关的扩展名(在libjingle使用该协议),真的是指原来,内部协议条款
Libjingle开发小组打算使用公开Jingle在libjingle(同时使了libjingle落后当前定义版本兼容)。
先决条件
为了使用了libjingle,你应该熟悉XMPP协议,一般的网络概念,和C + +。此外,它有助于将与Jingle建议延长熟悉(XEP - 0166),和静乐和Libjingle上面列出的其他相关扩展。
创建和使用libjingle的要求环境说明在 创建一个libjingle应用程序。
组织的文件
本文档包括以下主要内容:
*重要概念:描述了了libjingle的一些关键概念。很重要的,如果这是您第一次使用libjingle。
http://code.google.com/intl/zh-CN/apis/talk/libjingle/important_concepts.html
*libjingle通用程序:提供了libjingle程序的主要组成部分的概述,和一些关于如何创建libjingle的P2P连接。
*创建libjingle程序:描述的主要任务,每个了libjingle应用程序必须执行。
*示例应用程序:描述如何构建和运行示例应用程序。还包括详细的资料,这些应用程序如何工作的。
*参考资料:参考指南重要了libjingle类。
SDK的组则
The libjingle SDK 包含一些目录.
|
Directory |
Description |
|
base/ |
底层类,如socket和多线程提供的基本功能。无论P2P或会议部件都依赖于这些类 |
|
examples/ |
Contains two sample applications built on libjingle: call, and file share. There are other files in this directory, but they are used for helper applications. 包含了两个libjingle应用程序: call, and file share.在该目录下还有其他文件,是帮助这个两个应用程序 |
|
p2p/ |
Classes in libjingle's Peer to Peer component, which negotiate, establish, and maintain peer-to-peer connections through almost any network configuration regardless of NAT-enabled devices and firewalls. |
|
session/ |
专业类的基本的对等会话的行为根据什么类型的数据交换的(例如,语音或文件)。 |
|
third_party/ |
默认的文件夹以保存各种第三方的代码需要的扩展。例如,Linphone和GIPS VoiceEngine Lite方案文件应该被安装在这里使用语音聊天示例应用程序。 |
|
xmllite/ |
解析和建立XMPP 的类. |
|
xmpp/ |
接收和发送XMPP协议的请求类,管理共同的XMPP协议任务(如服务器任务或宣布存在记录)。 |
注意libjingle有一些问题你应该知道:
·libjingle是正在开发的代码,它不是完美、完整、没有瑕疵的。例如:密码保护,有些方面还不够稳定、URL解析,并不尽如人意。
·示例代码使用SSL来传送到客户端的XMPP服务器的密码,但它不提供任何额外的安全(除关闭屏幕回声),以保护客户的密码。
from:http://blog.csdn.net/miky_sun/article/details/4929919
libjingle开发人员指南的更多相关文章
- 第六代智能英特尔® 酷睿™ 处理器图形 API 开发人员指南
欢迎查看第六代智能英特尔® 酷睿™ 处理器图形 API 开发人员指南,该处理器可为开发人员和最终用户提供领先的 CPU 和图形性能增强.各种新特性和功能以及显著提高的性能. 本指南旨在帮助软件开发人员 ...
- Python开发人员指南
本指南是一个全面的资源贡献 给Python的 -为新的和经验丰富的贡献者.这是 保持由维护的Python同一社区.我们欢迎您对Python的贡献! 快速参考 这是设置和添加补丁所需的基本步骤.了解基础 ...
- .NET CoreCLR开发人员指南(上)
1.为什么每一个CLR开发人员都需要读这篇文章 和所有的其他的大型代码库相比,CLR代码库有很多而且比较成熟的代码调试工具去检测BUG.对于程序员来说,理解这些规则和习惯写法非常的重要. 这篇文章让所 ...
- Microsoft Orleans 之 开发人员指南
开发一个Grain 在开发Grain之前请先阅读Grains 这篇文章 Grain 接口 Grains通过调用各自定义在接口中的方法相互作用,一个grain实现了事先定义好的一个或多个接口,grain ...
- OAuth 2 开发人员指南
这是支持OAuth2.0的用户指南.对于OAuth1.0,一切都是不同的,所以看它的用户指南. 本用户指南分为两个部分,第一部分是OAuth2.0提供端(OAuth 2.0 Provider),第二部 ...
- OAuth 2 开发人员指南(Spring security oauth2)
https://github.com/spring-projects/spring-security-oauth/blob/master/docs/oauth2.md 入门 这是支持OAuth2.0的 ...
- Prism5.0开发人员指南内容 Contents of the Developer's Guide to Prism Library 5.0 for WPF(英汉对照版)
The Prism for WPF guide contains the following topics: Prism指南包含以下内容: Download and Setup Prism 下载并安装 ...
- Prism5.0开发人员指南内容(纯汉语版)
Prism指南包含以下内容: 下载并安装Prism Prism5.0新内容 介绍 初始化应用程序 组件间的依赖管理 模块化应用程序开发 实现MVVM模式 进击的MVVM 组合式用户界面 导航 松耦合组 ...
- Prism开发人员指南5-WPF开发 文档翻译(纯汉语版)
2014四月 Prism以示例和文档的形式帮助你更简单的设计丰富灵活易维护的WPF程序.其中使用的设计模式体现了一些重要的设计原则,例如分离关注点和松耦合,Prism帮助你利用松耦合组件设 ...
随机推荐
- Appnium+python实现手势密码为什么总是报错
最近一直在尝试Appnium实现Android手机自动化测试,一直一直卡在一个点上,那就是手势密码,因为所测应用的手势密码使用的不是单个的imageview实现的手势密码解锁窗,所以只能靠坐标点来定位 ...
- Bonobos | IT桔子
Trumaker | IT桔子 Trumaker trumaker.com
- Python进阶(面向对象编程基础)(四)
1.方法也是属性 我们在 class 中定义的实例方法其实也是属性,它实际上是一个函数对象: class Person(object): def __init__(self, name, score) ...
- Linux下那些奇葩的命令
相信喜爱编程,痴迷技术的你,肯定接触过甚至深爱着linux,甚至可能已经很熟悉linux了,可是linux那逗比的一面,你又知道多少. 本文!纯粹娱乐!不喜勿喷! 1.程序猿的愤慨! yes 当我们再 ...
- 模拟jquery封装选择器
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- iscc2016 mobile1-TurtleShell.apk解题过程
拿到程序先运行,简单的验证输入的flag正确与否.jeb加载apk文件 实在库文件里面验证,所以ida加载之,so文件是加密的,所以看不到关键验证函数,百度搜了下libhackme.so,出来这篇文章 ...
- BFC——块级格式上下文
BFC中的B指的是block,对应的还有IFC,I指的是inline.对于BFC的理解可以参考层叠上下文.页面中,盒子的排布规则,是生效在对应的BFC中.两个BFC中的布局互不影响.页面的本身的根本身 ...
- Ajax客户登陆验证
服务器端操作方便之处我就不吹了,地球人都知道,它最烦莫过于页面刷新,头都被刷晕了,而且他在刷新的时候,还触发服务器端的事件,现在Ajax的出现,他们的结合是发展的必然! 一.介绍一下Aj ...
- (转)js 中{},[]中括号,大括号使用详解
一.{ } 大括号,表示定义一个对象,大部分情况下要有成对的属性和值,或是函数. 如:var LangShen = {"Name":"Langshen",&qu ...
- (转)ASP.NET MVC 学习第一天
天道酬勤0322 博客园 | 首页 | 发新随笔 | 发新文章 | 联系 | 订阅 | 管理 随笔:10 文章:0 评论:9 引用:0 ASP.NET MVC 学习第一天 今天开始第一天学习as ...