因为发现网上XIFF的资料真的不多,何况现在gg又被和谐,查询资料很是不便。我写这篇文章的目的除了跟大家分享一些开发心得,也希望有类似经验的朋友看到文章后有机会多多交流。
之前我没有怎么接触过flash和flex,xiff是基于flash的,因为我们想把IM嵌入在web里,同时对flash了解不多,也没多少功夫深究,所以决定采取折中的办法,即核心通讯部分采用actionscript调用xiff,前端js与flash间互调。虽然还存在一些小的问题,但至少基本功能是有了,下面列举。
当前已有的功能包括:用户登录,列出好友,显示好友在线状态,所属组别,可以设置好友分组,修改备注姓名,移除好友,添加好友。对于聊天室的部分,包括创建聊天室,设定主题,同时邀请多人进入聊天室,踢出聊天室人员,解散聊天室,查询聊天室等功能。
界面不太漂亮,有机会再修饰。
其中,因为涉及js与flash通讯,而xiff功能是事件触发的,我觉得用纯actionscript实现最好。希望有兴趣的朋友看到了,可以发邮件到jonny903@126.com多多交流吧。
我还未解决的问题如下:如何按条件查询在线的可用聊天室,主动加入聊天室,都退出聊天室时怎样保证聊天室不被注销,是否能够实现类似群的功能。以及是否可以传输文件、在线视频等等,当然这是后话了。
使用的类库及环境版本:
开发工具:flash build 4
flex类库:flex 4.5
XIFF类库:XIFF.swc 3.0.0版本
引用的类库:as3crypto.swc
openfire版本:Openfire 3.6.4
截图如下: