职业IT人社区

 找回密码
 注册

扫一扫,访问微社区

搜索
查看: 119|回复: 0

可在广域网部署运行的即时通讯系统 -- GGTalk总览(附源码下载)

[复制链接]
joe 发表于 2018-4-11 17:17 | 显示全部楼层 |阅读模式
  GGTalk开源即时通讯系统(简称GG)是QQ的高仿版,同时支持局域网和广域网,包括客户端(PC客户端、android移动端)、服务端、数据库。从2013年最初的GG1.0开放源码以来,到后来陆续增加了网盘功能、远程协助功能、离线文件功能、群聊功能、语音聊天功能、视频聊天功能、以及视讯录制功能、和增加了数据库。我想写一个类似汇总的文章,通过这篇文章,大家可以了解到GGTalk开源即时通讯系统的全貌和最新进展,以及关于一些常见问题的解答也汇总在这里。
  言归正传,对我个人而言,我的目标并不是做一个QQ高仿版的玩具,而是希望做成一个能够真正使用的产品(这个过程还有很长的路要走),并持续维护下去。
一.GGTalk开源即时通讯系统已实现的功能
(01)注册、登录、查找用户、添加好友、好友列表。
(02)自拍头像。
(03)文字聊天、字体设置、GIF动态表情、窗口震动、截图、手写板、登录状态(在线、离开、忙碌、勿打扰、隐身)、输入提醒
(04)群功能:创建群、加入群、退出群、群聊天
(05)文件传送、文件夹传送(支持断点续传)
(06)语音视频聊天
(07)远程磁盘
(08)远程协助
(09)共享桌面(可以指定要共享的桌面区域)
(10)可靠的P2P
(11)网盘   
(12)离线消息
(13)离线文件
(14)托盘闪动:跟QQ完全一样,当接收到消息时,托盘会闪动对应好友的头像。点击头像,将弹出与好友的聊天框。
(15)最近联系人列表
(16)系统设置:开机自动启动、麦克风设备索引、摄像头设备索引,叉掉主窗口时关闭程序还是隐藏窗口。
(17)聊天记录:支持本地保存和服务器端保存两种方式。
(18)好友分组:新增/删除分组,修改分组名称,改变好友的所属分组。
(19)打开聊天窗口时,自动显示上次交谈的最后一句话。
(20)输入提醒:像QQ一样,当对方正在输入消息时,我这边的聊天框可以看到对方“正在输入”的提示。
(21)自动记录:GG2014会自动记录上次打开的主界面的位置、大小;最后一次打开的聊天窗口的大小;最后一次设定的字体的颜色、大小等。
(22)主窗体靠边自动隐藏。
(23)录制视频聊天。
(24)支持数据库(SqlServer 2000/2005/2008、MySQL),并可以通过配置在真实数据库和虚拟数据库之间自由切换。
(25)语音视频设备测试   
(26)聊天消息加密
(27)系统通知

二.开发环境及GGTalk即时通讯源码说明
1. 服务端和PC端 :VS2010 ,开发语言:C#, .NET Framework 版本: 2.0
2. android移动端:android studio 1.3.2 ,gradle 1.3
3. 部署PC客户端时,客户端机器还需要安装 VC++ runtime(2008、2010、2013)。
4. 若是要开始研究GG的源码,客户端和服务端的入口分别是:
(1)客户端:请特别关注 MainFormPartial.cs 这个文件,客户端接收到的消息几乎都是在这个文件中处理的;GlobalUserCache类用于缓存所有的用户信息、群组信息、包括本地持久化这些信息,以及根据版本号自动更新这些信息。
(2)服务端:请特别关注 CustomizeHandler.cs 这个文件,服务端接收到的消息几乎都是在这个文件中处理的;GlobalCache类用于缓存所有的用户信息、群组信息,并与真实/虚拟数据库进行交互。

三.相关说明
1.如果要将GGTalk开源即时通讯系统部署到广域网,则可以在服务端的配置文件中设置监听的端口;而在客户端的配置文件中,则可以指定服务器的IP和Port。
2.麦克风、摄像头的选择可在客户端系统设置窗口(SystemSettingForm)中指定。
3.语音视频:也有很多朋友问语音视频设备的工作怎么不正常,或者语音视频不流畅,这个可以直接参考OMCS官方文档:摄像头、麦克风、扬声器设备测试带宽要求
4.特别说明一下:GG项目中,只要是我写的代码,全部都放出来了。拜托喜欢每一个dll都有源码的朋友不要再问我要其它的源码了:)

下载地址:
https://pan.baidu.com/s/1bRPvaoMFrxYmHKT0VHClEQ



您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|网站帮助|职业IT人 ( 粤ICP备12053935号 )

GMT+8, 2018-7-17 02:23 , Processed in 0.072421 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2018 Comsenz Inc.

快速回复 返回顶部 返回列表