转载自:http://blog.csdn.net/kangkangz4/article/details/7739828
分类:
iPhone高级
2012-07-12 13:42
2670人阅读
收藏
举报
最近看了关于XMPP的框架,以文本聊天为例,需要发送的消息为:
-
<
message
type
=
"chat"
from
=
"kang@server.com"
to
=
"test@server.com"
>
-
<
body
>
helloWord
</
body
>
-
</
message
>
基中from是从哪个用户发送的消息,to是发给谁的消息,XMPP的用户都是以邮箱形式。body就是我们发送的消息文本。
好了,说到这里,我们就来开发一个基于XMPP的IOS聊天客户端程序,首先我们需要XMPP服务器,这里,我就拿本机做服务器,首先从xmpp Server
下载ejabberd
这个服务器,ejabberd支持Linux
/ Mac OS X / Solaris / Windows,所以任何操作系统都可以做我们的聊天服务器。好了,下载完后,一步一步安装就可以了,这里我们要注意一下
这里我们的服务器就是dpc1338a(一般就是机器名,默认就可以了,不需要改),每台机器的用户名都不一样,这里的服务器域名就是机器名,这个我们需要记住哦
接着一步一步,还要设置管理员密码,密码当然也需要记住了,不然我们没办法登录管理员页面去。
好了,安装完后启动,显示如下:
我们点击admin interface,会要求我们输入用户名和密码:
这里用户名是前面我们安装的时候有一个管理员名,将管理员名跟我们的服务器组合就可以了,我这里是admin@dpc1338a,每一台机器都不一样,不要照抄哦,这样你是登录不了的,密码就是安装的时候设置的密码
登录成功后就会显示如下页面:
这里我们需要解释的就是<访问控制列表
>,这里是设置管理员的,我们可以在这里创建其他管理员,这个不是我们的重点,我们的重点是<虚拟主机
>
点开<虚拟主机
>,下面有一个<dpc1338a
>,也点开
这里有一个<用户
>,我们需要创建几个用户来进行数据交互。
我创建了kang@dpc1338a,test@dpc1338a, abc@dpc1338a这几个用户,过一会我们就用这几个用户进行聊天
好了,服务器装好了以后,我们就需要下载个客户端来进行聊天,这里有一些客户端工具
http://xmpp.org/xmpp-software/clients/
,这里我们主要推荐MAC用Adium
,Windows用Citron
,下一章我们要介绍IOS的xmpp
framework。
分享到:
相关推荐
2. **服务器架构**:XMPP系统通常由客户端、服务器和可能的第三方服务组成。客户端通过连接到服务器来发送和接收消息。服务器负责路由消息,并处理用户的状态(在线、离线等)。 3. **认证与安全**:XMPP支持多种...
XMPP(Extensible Messaging and Presence Protocol)是一种基于XML的实时通信协议,广泛应用于即时通讯软件,如聊天应用程序。在这个特定的场景中,我们关注的是XMPP在实现语音聊天功能时的一些关键技术点和思路。 ...
来源:Licence:Eclipse Public License平台:iOS设备:iPhone / iPad作者:Dawn_wdf 基于xmpp的即时通讯(需要配置openfire)。包括注册新用户,连接,获取朋友列表,文字通讯和语音通讯。其中保存朋友列表和...
综上所述,这个压缩包提供了一个适用于iOS开发、特别是基于XMPP框架的项目、并支持arm64架构和Xcode 11的libidn库。这对于需要处理国际化域名的iOS即时通讯应用开发者来说,是一个非常实用的资源。使用这个库可以...
这个框架简化了与XMPP服务器的交互,使得开发者能够更专注于应用程序的业务逻辑,而不是底层网络通信的复杂性。 集成`XMPPFramework`之前,你需要确保你的开发环境满足以下条件: 1. 操作系统:Mac OS X 10.6 或更...
XMPP基于XML,提供了一种实时通信和存在管理的框架,支持一对一、一对多以及多对多的交流,非常适合于即时通讯应用。它允许用户发送文本消息、文件、位置等信息,并支持群聊、推送通知和VoIP等功能。 XMPPFramework...
本篇文章将围绕标题所提及的开源项目“iChabber”进行详尽的解析,它是一个专为iPod Touch和iPhone设计的简单GTalk和Jabber聊天客户端。通过学习这个项目,开发者可以了解到如何在iOS平台上实现即时通讯功能,特别是...
这样的系统通常包括客户端应用和服务器端的架构,以便实现用户间的实时交互。 描述中提到的“后台基于OpenFire”表明了服务器端采用了OpenFire作为即时通讯(Instant Messaging, IM)服务器。OpenFire是一款开源的...
在iOS平台上开发一款类似QQ的聊天应用程序是一项技术性较强的任务,涉及到多个技术栈的整合与应用。本项目标题“iPhone开发-qq聊天代码”表明我们将深入探讨如何在iPhone应用中集成并实现QQ聊天功能,包括支持表情...
Openfire服务器作为XMPP服务器,用于处理客户端之间的连接和消息传递,确保聊天的实时性和可靠性。 **2.1 Openfire服务器搭建** Openfire是基于Java的开源XMPP服务器,它可以在腾讯云上部署,为用户提供在线注册和...
包括Activity Manager(管理应用程序生命周期)、Window Manager(窗口管理)、Content Provider(数据共享)、View System(视图构建)、Notification Manager(通知管理)、Package Manager(程序管理)、...
3. **即时通讯**:基于XMPP或者自建推送服务实现聊天功能,包括单聊、群聊,支持文本、图片、表情等多种消息类型。 4. **地理位置服务**:利用Core Location框架获取用户的位置信息,实现基于位置的推荐和附近的人...
Windows客户端适用于桌面用户,Android客户端适配于各类Android设备,而iOS客户端则为iPhone和iPad用户提供服务。这展示了TeamTalk如何实现多平台兼容,以及跨平台开发的策略和技术。 【标签】"teamtalk"是该项目的...
XMPP(Extensible Messaging and Presence Protocol)是一种基于XML的开放标准通信协议,主要用于即时通讯和在线状态感知。在iOS或Android等移动平台开发XMPP应用时,常常会遇到跨平台兼容性问题,尤其是针对不同CPU...
2. iOS设备从苹果推送服务器(APNs)获取设备令牌(Device Token),并由应用程序接收。 3. 应用程序将设备令牌发送给第三方推送服务器。 4. 第三方推送服务器根据设备令牌将消息发送至APNs。 5. APNs负责将消息最终...
IOS开发的XMPPframework文件。 XMPP是一种基于XML的协议,它继承了在XML环境中灵活的发展性。因此,基于XMPP的应用具有超强的可扩展性。经过扩展以后的XMPP可以通过发送扩展的信息来处理用户的需求,以及在XMPP的...
学习这个源码,你可以深入了解iOS应用程序的架构设计,如MVC(Model-View-Controller)、MVVM(Model-View-ViewModel)等,以及如何使用Objective-C或Swift进行网络编程、数据库操作和UI布局。同时,通过分析源码中...
在iOS开发中,XMPPFramework是一个广泛使用的开源库,它为开发者提供了一种简单的方式来实现XMPP协议,从而构建功能丰富的聊天应用。 XMPP的核心特性包括: 1. **可扩展性**:XMPP设计为可扩展的,允许添加新的功能...
来源:github/XMPPFrameworkLicence:BSD作者:Robbie Hanson ...这份类库就是专门为iOS和Mac所写的XMPP类库,提供了一系列的接口用于写基于XMPP的功能。这份类库是thread-safe的,基于GCD。 小编注:XMPP百度百科: