`
iunknown
  • 浏览: 410044 次
社区版块
存档分类
最新评论

sptalk:基于 spserver/spxml/spdict 实现的 jabber 服务器

阅读更多
在 3 年前因为工作需要,搞过一段时间 jabberd 1.4 ,那时被jabberd 1.4 的代码搞的晕头转向。当时就在想要自己实现一个 jabber 服务器。在逐步实现了 spxmlspserverspdict 这 3 个库之后,实现 jabber 的时机终于到了。

http://code.google.com/p/sptalk/

经过几天的编码之后,终于可以成功地用两个客户端互发信息了。目前实现了注册,登录,添加好友,互发信息功能。
由于对 jabber 协议不熟,所以这次的实现在事前没有认真地做系统的架构设计,目前是基于单机,单进程的方式来实现的。这次姑且作为一次快速原型开发。先逐渐在这个原型上实验各种功能,等成熟之后,再从头来设计一个比较完善的架构。

下面是使用 Exodus 和 neos 两个客户端通过 sptalk 对话的截图。
分享到:
评论
1 楼 iunknown 2007-07-31  
上次实现了基本功能之后,发现有个问题,就是添加好友的时候,会循环出现添加好友的提示。今天跟踪了一下,终于找到原因了。解决了这个问题之后,终于可以发布一个 0.1 release 了。

0.1 版本模仿 jabberd 1.4 ,使用xml文件来保存用户的注册信息。这个版本实现的功能包含:注册,登录,添加好友(但没有实现 presence ),互发信息。

http://sptalk.googlecode.com/files/sptalk-0.1.src.tar.gz

相关推荐

    Android代码-ChatSecureAndroid

    app built on open standards like XMPP/Jabber and OTR encryption: https://guardianproject.info/apps/chatsecure It includes OTR4J: https://github.com/otr4j/otr4j and BouncyCastle for Java: ...

    jabber/xmpp技术研究与应用

    Jabber/XMPP(eXtensible Messaging and Presence Protocol)是一种基于XML的即时消息传递和在线状态服务协议。它最初由Jabber开发,后被IETF采纳为正式标准。该协议的核心优势在于其开放性、灵活性以及跨平台的特性...

    基于Jabber/XMPP 的即时通讯系统的设计与实现

    ### 基于Jabber/XMPP的即时通讯系统设计与实现——远程教育视角 #### 引言 随着互联网的迅速发展与普及,即时通讯(Instant Messaging, IM)已成为现代社会沟通的重要工具。它不仅提供了便捷的信息传递方式,还...

    iView 管理员手册

    - **Jabber**:配置与 Jabber 相关的设置。 - **扩展名**:关联特定的扩展名。 - **权限覆盖**:允许对特定用户或角色的权限进行微调。 - **配置状态**: - **权限组**:定义不同权限级别的组别,以便更好地控制...

    Social-InventoryManagement-Module:Inventarverwaltungsmodul // Datacrow的库存管理模块-开源

    库存管理不只是项目清单! //库存管理不仅限于普通的清单!... 联系人//联系人:聊天(Jabber):xmpp://mrpenguin@jabber.org在线会议:xmpp://Social-InventoryManagement-Module@conference.jabber.org

    ubuntu安装简单架设Jabber

    2. **配置Jabber服务器**:Jabber的主配置文件位于`/etc/jabber/jabber.xml`。需要修改以下部分以匹配DNS中的定义: ```xml <jabberd:cmdline flag="h">oaserver.org</jabberd:cmdline> </host> ``` 3. **...

    jabber概述

    Jabber会话是由两个方向的XML流组成的:客户端到服务器和服务器到客户端。当客户端连接到服务器时,会发起客户端-服务器XML流,服务器也会相应地发起服务器-客户端XML流。所有<message/>、<presence/>和<iq/>元素都...

    software-development-podcasts:精选的播客列表可能对编写软件的人很感兴趣

    JavaScript Jabber: : 巨型机器人撞入其他巨型机器人: : Java Posse: : 地下室编码器: http : //basementcoders.com/ (现已停用) Dev1(视频) http://dev1.tv/视频播客 软件工程电台: http : //...

    安装和配置jabber服务器教程

    Jabber作为一种基于XML的开放通信协议,由Jabber软件基金会开发和支持。它主要用于即时消息传递,并且采用自由许可(GPL/JOSL),这意味着任何人都可以免费使用并进行扩展。 Jabber与其他主要的即时通讯服务(如AIM...

    基于Jabber的IM系统的研究与实现

    **Jabber/XMPP简介** Jabber是最早实现XMPP协议的开源项目,而XMPP则是一种基于XML的开放标准,用于实时通讯和协作。XMPP设计的核心理念是灵活性和可扩展性,使得开发者能够轻易地添加新的功能和特性。XMPP支持一对...

    Jabber 协议 即时消息和在线状态的系统

    Jabber 协议是一种基于XML的开放即时通讯协议,主要设计用于实现即时消息和在线状态的传递。这个协议由Jabber开源社区发起,并且不断演化以适应各种扩展需求。Jabber协议的核心特点在于其开放性,允许开发者创建...

    基于jabber(XMPP)架设内部即时通讯服务

    Jabber,作为一款开源的即时通讯服务器,基于XMPP(可扩展消息处理现场协议)实现了这一功能。本文将详细阐述如何利用Jabber(XMPP)搭建内部即时通讯服务,特别是通过Openfire客户端的使用。 XMPP是一种基于XML的...

    Jabber 协议 概述

    Jabber 会话是由两个平行的 XML 流组成的:一个从客户端到服务器端,另一个从服务器端到客户端。当客户端连接到服务器时,客户端将发起客户端-服务器的 XML 流,而服务器则会响应客户端发起服务器-客户端的 XML 流。...

    网络通信 jabber协议

    Jabber协议是一种基于XML的即时通讯协议,由开源社区主导开发,主要用于实现即时消息和在线状态的交换。它的核心优势在于其开放性,允许开发者根据需求进行扩展和定制。Jabber协议主要包括三个顶级XML元素:`...

    基于开源jabber_XMPP_架设内部即时通讯服务的解决方案.pdf

    3. **Jabber客户端安装配置**:为了与Jabber服务器通信,需要在客户端设备上安装支持Jabber/XMPP的即时通讯软件。官方推荐的客户端包括Exodus、Pandion、Psi、Spark等,这些客户端适用于不同的操作系统,如Windows、...

    简单架设Jabber局域网即时通讯服务器.rar

    1. **Jabber/XMPP协议**:XMPP基于XML,提供了一种用于即时通讯和在线状态交换的标准协议。它的设计目标是灵活性和可扩展性,使得开发者可以轻松地添加新功能和集成其他系统。 2. **服务器软件**:常见的Jabber...

    简单架设Jabber-局域网即时通讯服务器.doc

    S到Windows,客户端则有众多跨平台的选择,如Gaim(现称为Pidgin)、Adium等,...通过自行搭建Jabber服务器,你可以创建安全、私有的即时通讯网络,实现与全球Jabber用户的互联互通,或者仅限于局域网内的内部通信。

Global site tag (gtag.js) - Google Analytics