本篇介绍两个使用.NET技术,确切的说是使用C#写的Jabber Code Libraries – Jabber.NET、agsXMPP,以及一个Java写的跨平台Jabber Server – Wilefire。

前言:

即将完成Jabber Protocal(XMPP) : Core的翻译,在接下来的学习中将结合使用一个Jabber代码库和一个Jabber服务器,做些XMPP实现的分析与Practice。

Jabber-NET

Jabber- NET是一个使用.NET技术连接到Jabber服务器的类库集。它目前没有任何实现服务器端的计划,如果你兴趣于领导一个分项目来实现服务器端,那么就 可以将其从你的选择中排除。它是用C#写的,但是也可以用.NET的其它语言(如VB.NET)进行引用,可以用于组件也可以用于客户端。同时当你探究时 你会发现深藏其中的好东西,如Trees、命令行处理等,而且要比也是使用.NET技术的JabberCOM来的简单。

事实上,Jabber- NET似乎已经被搁置,最近一次跟新也是在半年以前,跟新了一些新Xep的支持,以及对vs2005的支持。另外它的文档极少,而且除了邮件列表里有些声 响,没有支持该项目的开发Forum或是Blog。也因此官方没有整理好的源文件及编译好的类库可下载。不过仅从中做一些参考,在它的CVS上还是可以进 行的。

在Jabber Code Libraries中的介绍:

Code Libraries中罗列了用于 Jabber/XMPP 开发的一些知名类库。

Library

Language

License

Client

Component

Server

Jabber-Net

C#

JOSL

Yes

Yes

--

有兴趣研究Jabber-Net的朋友可以下载我从CVS中整理编译后的类库:Jabber-NET Setup

agsXMPP

agsXMPP 是用C#写的,用于XMPP协议开发的SDK, 该SDK以基于"AG-Software shared source licence"的开源软件形式发布。目前版本0.1。

不同于Jabber-NET,它作为一个SDK同时支持Client、Component和Server的开发;有着比较良好的文档、邮件列表及开发社区支持。官方页面:agsXMPP SDK,Forum: agsXMPP SDK

下面是一个简单示例,展示了采用agsXMPP登录XMPP服务器,发送一条信息给另一个用户的方便性。仅用三行代码:

// Wait for the OnLogin event and send your message
xmpp.Send( new Message("test@jabber.org", MessageType.chat, "Hello, how are you?"));

在Jabber Code Libraries中的介绍:

Library

Language

License

Client

Component

Server

agsXMPP

C#

Shared Source

Yes

Yes

Yes

Wildfire

Wildfire就非常知名了,它不是类库,而是一个Java写的跨平台的Jabber服务器实现。它的安装、管理、定制、与其它应用的整合以及联合其它网络都非常简单,甚至做为你的自己的应用程序的平台也是如此方便。它有着强大的Jive软件社区支持 - Jive Software:instant messaging

Wildfire支持中文,目前版本为3.1,我们可以基于GPL许可证来使用。

在Jabber Servers中的介绍:

Servers中罗列了我们可以利用的,来自许多开源项目和商业用途的 Jabber/XMPP 服务器实现。

Server

Feature Score

License

Platforms

Wildfire

98%

GPL or Proprietary

AIX, HP-UX, Linux, MacOS X, Solaris, Windows

更多的Jabber服务器介绍可以参见iso1600的:常用开源Jabber(XMPP) IM服务器介绍

from:http://www.cnblogs.com/hunts/archive/2006/12/07/585014.html

Jabber Software:Jabber-NET、agsXMPP与Wilefire[转]的更多相关文章

  1. Jabber/XMPP协议与架构

    一.概述 由Jeremie Miller于1998年开始这个项目.Jabber是一个开放源码形式组织产生的网络实时通信协议,第一个公开版本于2000年5月发行.Jabber已经由IETF XMPP协议 ...

  2. 开源Jabber(XMPP) IM服务器介绍

    一.摘要 这是我粗略读了一遍Jabber协议和相关技术文章后的产物,有些地方不一定准确.在文章中引用的一些代码来自www.jabber.org上的文章. 二. 什么是Jabber    Jabber就 ...

  3. 基于XMPP的即时通信系统的建立(二)— XMPP详解

    XMPP详解 XMPP(eXtensible Messaging and Presence Protocol,可扩展消息处理和现场协议)是一种在两个地点间传递小型结构化数据的协议.在此基础上,XMPP ...

  4. 基于XMPP的即时通信系统的建立 — XMPP IQ详解

    XMPP详解 XMPP(eXtensible Messaging and Presence Protocol,可扩展消息处理和现场协议)是一种在两个地点间传递小型结构化数据的协议.在此基础上,XMPP ...

  5. Kamailio

    http://www.kamailio.org/wiki/cookbooks/4.1.x/core IMS 支持接口 MSC接口,信令:ISUP over IP和SIP, 用户面: rtp协议 PCR ...

  6. RFC3920

    RFC3920 可扩展的消息和出席信息协议 (XMPP): 核心协议 关于本文的说明 本文为互联网社区定义了一个互联网标准跟踪协议,并且申请讨论协议和提出了改进的建议.请参照"互联网官方协议 ...

  7. XMPP即时通讯协议使用(前传)——协议详解

    XMPP详解 XMPP(eXtensible Messaging and Presence Protocol,可扩展消息处理和现场协议)是一种在两个地点间传递小型结构化数据的协议.在此基础上,XMPP ...

  8. XEP-0078:非SASL认证

    XEP-0078:非SASL认证 抽象: 这个文件规定了使用Jabber的Jabber的服务器和服务认证的协议:智商:AUTH命名空间.注意哦:本文规定的协议,取而代之的SASL认证的被取代,如RFC ...

  9. wordpress自定义后台用户联系方式 添加qq、微博、微信

    在 WordPress 后台,个人设置(Profile)中,可以设置电子邮件和 Website,如何添加国人常用的 QQ, 微博,微信呢? <?php /* Plugin Name: Custo ...

随机推荐

  1. 未打开Ad Hoc Distributed Queries

    SSAS访问ORACLE数据仓库读取数据创建CUBE的时候报如下错误: SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'Open ...

  2. 查看MAC系统JRE和JDK版本

    经常有些软件有JRE或者JDK的版本要求,但怎么查询MAC上现在的JRE或JDK的版本呢?很简单,用这两个命令 这个是查询JRE的版本: $ java -version java version &q ...

  3. 【Slickflow学习】.NET开源工作流项目转换(二)

    第一次自己写博客文章,大家多多指教.写博客主要记录一下学习的过程,给初学者提供下参考,也留给自己做备忘. Slickflow .NET开源工作流-项目转换 上一篇文章里说了1.2版本的下载,下载解压后 ...

  4. css关于宽度

    很多时候,我们指定了某个元素的宽度,浏览器渲染时却只给这个元素一半的宽度,这时可以试试min-width属性,该属性表示浏览器不能偷懒,资源再紧张也得分配min-width指定的宽度.

  5. 读jQuery官方文档:$(document).ready()与避免冲突

    $(document).ready() 通常你想在DOM结构加载完毕之后才执行相关脚本.使用原生JavaScript,你可能调用window.onload = function() { ... }, ...

  6. Java多线程并发

    http://wangjianwei866.blog.163.com/blog/static/9295823201231665319314/ 基于以上网文,调整了一下格式,修改了一些标点和拼写错误. ...

  7. ListView的item中有button和checkbox,listview的点击事件无效

    ListView的item中有button和checkbox,listview的点击事件无效,解决办法: 在item布局文件中的根控件中添加属性设置: android:descendantFocusa ...

  8. 【Android】关于pix,dip,dip,sp等相关概念

    1.px (pixels)像素 – 是像素,就是屏幕上实际的像素点单位. dip或dp (device independent pixels)设备独立像素, 与设备屏幕有关. sp (scaled p ...

  9. jsp(一) : servlet基础

    1.客户  servlet容器   servlet 2.实现接口     #1.接口:servlet :             constrontor .init().service.destroy ...

  10. 第三篇、C_双向链表(循环链表)

    简介: 在用C/C++开发系统中,我们知道用数组或者单链表来开发,如果是数据比较大的话,性能很不好,效率也不高.因此常常需要考虑系统的实用性,常常采用双向链表来开发. 示例: 1.数据 typedef ...