即时通讯(IM)软件的开发

原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处 、作者信息本声明。否则将追究法律责任。

最近老板要求开发一款即时通讯软件,我的天啊,这该怎么办,以前根本就没有这方面的开发经验。

首先想到的就是该用什么协议。常用的http协议肯定是不行的,socket开发方面也没什么经验。因此,最好是能在网上找到开源的项目直接用上。通过查阅资料得知:

即时通讯协议(Instant Messaging),主流的IM协议有4种,

即时消息和存在协议IMPP(Instant Messaging And PresenceProtocol),

存在和即时消息协议PRIM(Presence and Instant Messageing Protocol),

SIP即时消息和存在扩展协议SIMPLE(SIP for Instant Messaging and Presence Leveraging Extensions),

可扩展消息与存在协议XMPP(Extensible Messageing and Presence Protocol.

先查到了一篇教程

http://mobile.tutsplus.com/tutorials/iphone/building-a-jabber-client-for-ios-server-setup/

这篇文章服务器选型不太好,代码不能直接调试和使用,说明也太少了,后来就没有看下去。

偶然的机会,我在查XMPP的相关资料时,发现下面这个网站还不错

http://xmpp.org/xmpp-software/

列出了使用了XMPP协议的所有服务器、客户端软件,以及相应的框架。上面列出的软件有很多都不太好用。通过一番尝试,最终我选择了openfire 作为即时通讯的服务器端,xmpp-framwork 作为iOS开发的客户端框架。在调试时还需要选择一款现有的IM客户端,mac下好用的有iChat (后改为iMessage) 和 Adium,windows下好用的有Pidgin。我们这个服务器端是自签名的,客户端软件会有安全提示,有些客户端软件甚至直接就不给使用。不过好在自己开发的iOS客户端不会有安全提示警告,因此不会影响用户使用。

至此,技术选型已经没问题了,目前开发得也比较顺畅。

欢迎有相关兴趣的一起交流。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值