想开发一套java的即时通讯工具,希望有经验的朋友来坐坐 java的C/S结构,实现即使通讯聊天,文件传送,消息广播等等功能。(以后扩展为语音视频等)类似QQ.有没有那位有经验的指点一二?比如底层协议? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 参考LumaQQhttp://lumaqq.linuxsir.org注:这只是一个客户端,协议还是腾讯的那一套。 协议当然就是TCP/UDP了,但是在这个协议的基础上,最好是设计一套自己的通讯协议。可以用XML描述,或者有格式的文件来描述。 嗯,LumaQQ不错!可是他是访问QQ的服务的。我希望的是那种带有Server端的,有无适合的开源项目提供研究? miaoliujun(傲龙) :能不能具体点呢? 使用Java开发的. 用XMPP协议,服务端用wildfire,客户端用spark,相应资源在www.jivesoftware.org有,自己去看看吧 用lumaQQ做客户,自己开发一个服务器程序实现QQ协议就可以了lumaQQ已经很强大了 用的着这么多七七八八的开源的东西吗?真是不懂,我读大二的时候,就自己写了一个,虽然功能不是很强大(聊天,文件发送,消息群发,支持群),但是道理都是一样,看你愿意把它做成什么样子 ,底层协议当然是tcp和udp了,只不过在这层上面,你需要自己设计一套自己的通信规范,不然等程序多了就乱套了,而且不容易扩展.大致过程如下:1.服务器启动监听线程2.客户端连接进来,标志为登陆(tcp连接)3.服务器为此客户端连接启动一个服务线程,此线程接到指令为登陆,作如下初始化工作: 验证用户身份 读取用户网络信息 读取此用户所有好友 向此用户所有好友发出该用户已经上线 向该用户返回登陆成功指令4.客户端接受到登陆成功指令,此服务器读取所有好友信息,包括好友当前ip,发消息时候要用的.启动信息监听线程,次线程在指定端口循环监听信息,利用udp协议,此时该客户可以聊天了,我当时实现的是聊天用udp协议,因为如果服务器端消息群发,或者群内发消息的话,用udp的广播形式发送出去比较好,用tcp则比较麻烦大致上就这样了,源码谁要阿,反正我留着也没有用,我在局域网上调试过,效果不错哦:) sourceforge.org上很多这类的程序啊。 wudouguerwxx(家有小熊) :你以为做项目是些程序玩儿呢?就那个局域网上的一个通信程序还拿出来的说啥啊。那些基本的技术还用你说么?通信程序最主要考虑的是什么问题啊?是网络!现实中有几个是局域网啊?考虑过NAT,考虑过防火墙么?考虑过服务器性能问题,考虑过P2P么? cs模式的就比较简单如果是BS模式的就比较感兴趣! 非嵌套for循环效率问题 java 处理字符唯一的方法 JScrollPane的JTtextArea显示内容定位问题 如何知道一个class在那个jar文件中 关于FileOutputStream类的问题? 请回复 散分第五问:讲一讲package的用法? 谁有JBuilder mobileset2.0 的license key? 我是java新手,java可以做什么阿? java中的CyclicBarrier的问题 请问,国外人气比较旺的JAVA论坛有哪些呢?谢谢!! 请问在JDK1.5版本中,对FOR语句进行了怎样的强化?
http://lumaqq.linuxsir.org
注:这只是一个客户端,协议还是腾讯的那一套。
我希望的是那种带有Server端的,有无适合的开源项目提供研究?
lumaQQ已经很强大了
tcp和udp了,只不过在这层上面,你需要自己设计一套自己的通信规范,不然等程序多了就乱套了,而且不容易扩展.大致过程如下:
1.服务器启动监听线程
2.客户端连接进来,标志为登陆(tcp连接)
3.服务器为此客户端连接启动一个服务线程,此线程接到指令为登陆,作如下初始化工作:
验证用户身份
读取用户网络信息
读取此用户所有好友
向此用户所有好友发出该用户已经上线
向该用户返回登陆成功指令
4.客户端接受到登陆成功指令,此服务器读取所有好友信息,包括好友当前ip,发消息时候要用的.启动信息监听线程,次线程在指定端口循环监听信息,利用udp协议,此时该客户可以聊天了,我当时实现的是聊天用udp协议,因为如果服务器端消息群发,或者群内发消息的话,用udp的广播形式发送出去比较好,用tcp则比较麻烦
大致上就这样了,源码谁要阿,反正我留着也没有用,我在局域网上调试过,效果不错哦:)
那些基本的技术还用你说么?
通信程序最主要考虑的是什么问题啊?是网络!现实中有几个是局域网啊?
考虑过NAT,考虑过防火墙么?考虑过服务器性能问题,考虑过P2P么?
如果是BS模式的就比较感兴趣!