`

[iPhone高级] 基于XMPP的IOS聊天客户端程序(XMPP服务器架构)

 
阅读更多

转载自:http://blog.csdn.net/kangkangz4/article/details/7739828

 

 

[iPhone高级] 基于XMPP的IOS聊天客户端程序(XMPP服务器架构)

分类: iPhone高级 2670人阅读 评论 (8) 收藏 举报

最近看了关于XMPP的框架,以文本聊天为例,需要发送的消息为:

 

[html] view plain copy
  1. < message   type = "chat"   from = "kang@server.com"   to = "test@server.com" >   
  2.     < body > helloWord </ body >   
  3. </ 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。

分享到:
评论

相关推荐

    xmpp for ios

    2. **服务器架构**:XMPP系统通常由客户端、服务器和可能的第三方服务组成。客户端通过连接到服务器来发送和接收消息。服务器负责路由消息,并处理用户的状态(在线、离线等)。 3. **认证与安全**:XMPP支持多种...

    xmpp聊天部分,语音思路

    XMPP(Extensible Messaging and Presence Protocol)是一种基于XML的实时通信协议,广泛应用于即时通讯软件,如聊天应用程序。在这个特定的场景中,我们关注的是XMPP在实现语音聊天功能时的一些关键技术点和思路。 ...

    xmpp for ios(iPhone源代码)

    来源:Licence:Eclipse Public License平台:iOS设备:iPhone / iPad作者:Dawn_wdf  基于xmpp的即时通讯(需要配置openfire)。包括注册新用户,连接,获取朋友列表,文字通讯和语音通讯。其中保存朋友列表和...

    ios开发 XMPP的libidn 支持arm64的包

    综上所述,这个压缩包提供了一个适用于iOS开发、特别是基于XMPP框架的项目、并支持arm64架构和Xcode 11的libidn库。这对于需要处理国际化域名的iOS即时通讯应用开发者来说,是一个非常实用的资源。使用这个库可以...

    iphone 开发XMPP类型IM时需要的框架XMPPFrameWork

    这个框架简化了与XMPP服务器的交互,使得开发者能够更专注于应用程序的业务逻辑,而不是底层网络通信的复杂性。 集成`XMPPFramework`之前,你需要确保你的开发环境满足以下条件: 1. 操作系统:Mac OS X 10.6 或更...

    iphone 开发XMPP类型IM时需要的框架XMPPFramework

    XMPP基于XML,提供了一种实时通信和存在管理的框架,支持一对一、一对多以及多对多的交流,非常适合于即时通讯应用。它允许用户发送文本消息、文件、位置等信息,并支持群聊、推送通知和VoIP等功能。 XMPPFramework...

    IOS源码之iChabber-Simple gtalk and jabber client for the iphone

    本篇文章将围绕标题所提及的开源项目“iChabber”进行详尽的解析,它是一个专为iPod Touch和iPhone设计的简单GTalk和Jabber聊天客户端。通过学习这个项目,开发者可以了解到如何在iOS平台上实现即时通讯功能,特别是...

    类似微信聊天功能,可发送文字、表情、图片、音频,后台基于OpenFire,前端基于XMPPFrameWork.zip

    这样的系统通常包括客户端应用和服务器端的架构,以便实现用户间的实时交互。 描述中提到的“后台基于OpenFire”表明了服务器端采用了OpenFire作为即时通讯(Instant Messaging, IM)服务器。OpenFire是一款开源的...

    iPhone开发-qq聊天代码

    在iOS平台上开发一款类似QQ的聊天应用程序是一项技术性较强的任务,涉及到多个技术栈的整合与应用。本项目标题“iPhone开发-qq聊天代码”表明我们将深入探讨如何在iPhone应用中集成并实现QQ聊天功能,包括支持表情...

    21851194-王玉金-iPhone应用开发技术-大作业1

    Openfire服务器作为XMPP服务器,用于处理客户端之间的连接和消息传递,确保聊天的实时性和可靠性。 **2.1 Openfire服务器搭建** Openfire是基于Java的开源XMPP服务器,它可以在腾讯云上部署,为用户提供在线注册和...

    Android与ios对比分析

    包括Activity Manager(管理应用程序生命周期)、Window Manager(窗口管理)、Content Provider(数据共享)、View System(视图构建)、Notification Manager(通知管理)、Package Manager(程序管理)、...

    模仿陌陌客户端开发_iphone

    3. **即时通讯**:基于XMPP或者自建推送服务实现聊天功能,包括单聊、群聊,支持文本、图片、表情等多种消息类型。 4. **地理位置服务**:利用Core Location框架获取用户的位置信息,实现基于位置的推荐和附近的人...

    蘑菇街TeamTalk项目服务端和客户端代码

    Windows客户端适用于桌面用户,Android客户端适配于各类Android设备,而iOS客户端则为iPhone和iPad用户提供服务。这展示了TeamTalk如何实现多平台兼容,以及跨平台开发的策略和技术。 【标签】"teamtalk"是该项目的...

    XMPP 64 libidn.a

    XMPP(Extensible Messaging and Presence Protocol)是一种基于XML的开放标准通信协议,主要用于即时通讯和在线状态感知。在iOS或Android等移动平台开发XMPP应用时,常常会遇到跨平台兼容性问题,尤其是针对不同CPU...

    Android推送实现方案探讨

    2. iOS设备从苹果推送服务器(APNs)获取设备令牌(Device Token),并由应用程序接收。 3. 应用程序将设备令牌发送给第三方推送服务器。 4. 第三方推送服务器根据设备令牌将消息发送至APNs。 5. APNs负责将消息最终...

    XMPPframework库文件

    IOS开发的XMPPframework文件。 XMPP是一种基于XML的协议,它继承了在XML环境中灵活的发展性。因此,基于XMPP的应用具有超强的可扩展性。经过扩展以后的XMPP可以通过发送扩展的信息来处理用户的需求,以及在XMPP的...

    即时通讯系统IOS版本源码

    学习这个源码,你可以深入了解iOS应用程序的架构设计,如MVC(Model-View-Controller)、MVVM(Model-View-ViewModel)等,以及如何使用Objective-C或Swift进行网络编程、数据库操作和UI布局。同时,通过分析源码中...

    XMPPFrameWork Iphone官网实例

    在iOS开发中,XMPPFramework是一个广泛使用的开源库,它为开发者提供了一种简单的方式来实现XMPP协议,从而构建功能丰富的聊天应用。 XMPP的核心特性包括: 1. **可扩展性**:XMPP设计为可扩展的,允许添加新的功能...

    XMPPFramework(iPhone源代码)

    来源:github/XMPPFrameworkLicence:BSD作者:Robbie Hanson ...这份类库就是专门为iOS和Mac所写的XMPP类库,提供了一系列的接口用于写基于XMPP的功能。这份类库是thread-safe的,基于GCD。 小编注:XMPP百度百科:

Global site tag (gtag.js) - Google Analytics