基于XMPP的IOS实现单聊,群聊功能(一)

      这篇文章包括接下来的几篇文章主要是来介绍下用XMPP协议实现IOS中类似QQ微信那样的单聊,群聊功能。事先说明下,如果想要完全实现像QQ群那样的功能,服务器必须要升级。为什么这么说呢?因为xmpp是一个比较老的协议。离我们的业务需求还是有点距离的。就拿群聊来说,我们业务是实现和qq群一样的功能。而xmpp的群是聊天室的概念。这会出现什么问题呢?业务需要建一个群,群里每个人都能看到群成员信息(包括jid,昵称等),只要你加了群,其他人在群里发送的消息不管你在线离线下次登录的时候必须能收到。 而由于xmpp的群是个聊天室的概念。你进入房间才能收到消息,才算是这个聊天室的成员,离线后就自动离开房间了。所以对于别人包括群主来说,当他们查看群成员信息时,你在线就是群成员,不在线就不是了。而且你不在线时他们在群里聊天的信息你也看不到。因为你没有进入房间。

      其他还有包括头像,昵称等各种问题,当然这些问题最后都解决了。一部分是通过服务端新开一些接口给客户端解决的(比如根据jid取用户头像等等)。还有一部分是通过客户端进行较复杂的逻辑处理解决的(比如把加入的房间存入书签,用来记录加了哪些群等等)。那时我第一次弄这个被搞得一个头两个大啊。。。顺便给大家推荐个网址,对学习XMPP协议很有帮助http://wiki.jabbercn.org/RFC6121#JID.E5.B1.9E.E6.80.A7。


网站里面各种情景的XML格式都写的非常清楚,下篇文章开始讲项目的配置和服务器的登录验证了。初学者最好先看看XMPP的基本概念比如Jid,IQ,花名册,出席协议,bpid等等。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

霸王剑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值