1 Star 0 Fork 113

Mines / GG

forked from gsbhzh / GG 
Create your Gitee Account
Explore and code with more than 12 million developers,Free private repositories !:)
Sign up
This repository doesn't specify license. Please pay attention to the specific project description and its upstream code dependency when using it.
Clone or Download
contribute
Sync branch
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README

可在广域网部署运行的QQ高仿版


项目地址:http://www.cnblogs.com/justnow/p/3382160.html

**查看详细请访问作者博客


  (最新版本:V5.1,2016.06.01 增加了系统通知功能!)

  GGTalk(简称GG)是QQ的高仿版,包括客户端(PC客户端、android移动端)、服务端、数据库,可在广域网部署使用。我想写一个类似汇总的文章,通过这篇文章,大家可以了解到GG的全貌和最新进展,以及关于一些常见问题的解答也汇总在这里。

  言归正传,对我个人而言,我的目标并不是做一个QQ高仿版的玩具,而是希望做成一个能够真正使用的产品(这个过程还有很长的路要走),并持续维护下去。

已实现的功能

(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),并可以通过配置在真实数据库和虚拟数据库之间自由切换。

(25)语音视频设备测试

(26)聊天消息加密

(27)系统通知

开发环境及源码入口说明

  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.如果要将GG部署到广域网,则可以在服务端的配置文件中设置监听的端口;而在客户端的配置文件中,则可以指定服务器的IP和Port。

2.麦克风、摄像头的选择可在客户端系统设置窗口(SystemSettingForm)中指定。

3.语音视频:也有很多朋友问语音视频设备的工作怎么不正常,或者语音视频不流畅,这个可以直接参考OMCS官方文档:摄像头、麦克风、扬声器、设备测试 、带宽要求。

4.特别说明一下:GG项目中,只要是我写的代码,全部都放出来了。拜托喜欢每一个dll都有源码的朋友不要再问我要其它的源码了:)

开发环境

  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类用于缓存所有的用户信息、群组信息,并与真实/虚拟数据库进行交互。

版本记录

2013.08.07 -- V1.0, 登录、好友列表、文字聊天、文件传送、文件夹传送

2013.09.02 -- V1.8, 语音视频聊天

2013.09.23 -- V2.0, 网盘、远程磁盘

2013.11.05 -- V2.4, 远程协助、共享桌面

2014.04.15 -- V3.0, 注册、加好友、加入群、群聊

2014.05.16 -- V3.2, 离线消息、离线文件

2014.05.28 -- V3.4, 系统设置、最近联系人

2014.06.30 -- V3.5, 自拍头像、修改密码、删除好友

2014.08.06 -- V3.6, 语音消息、语音留言

2014.09.16 -- V3.7, 优化视频聊天

2014.11.06 -- V4.0, 聊天记录、好友分组、登录状态、GIF动态表情

2014.12.31 -- V4.1, 托盘闪动消息提醒、公开JustLib源码。

2015.03.25 -- V4.2, 主窗体靠边自动隐藏

2015.06.17 -- V4.3, 视频聊天全过程录制,生成标准的MP4文件。

2015.09.02 -- V4.4, 增加对SqlServer数据库的支持,并可以通过配置在真实数据库和虚拟数据库之间自由切换。 增加语音视频设备测试功能。

2015.09.02 -- V4.4, 客户端增加Android移动端版本。

2016.01.20 -- V4.5, 加密聊天消息,让通信更安全!语音视频优化,视频聊天更流畅!

2016.05.30 -- V5.1, 增加系统通知功能,并支持与Web集成!

部署说明:

1.当前版本服务端默认配置为内存虚拟数据库版本,不需要安装数据库。

2.将GGTalk.Server文件夹拷贝到服务器上,运行GGTalk.Server.exe。

3.修改客户端配置文件GGTalk.exe.config中ServerIP配置项的值为服务器的IP。

4.运行客户端,注册帐号登录试用。

5.内置测试帐号为 10000,10001,10002,10003,10004;密码都是 1。

6.若要测试android移动端,请先修改安卓源码中服务器的IP和端口,然后重新编译生成apk。

如果需要使用真实的物理数据库,则需按下列步骤进行:

  1. 在SqlServer 2000/2005/2008 中新建数据库GGTalk,然后在该库中执行 GGTalk.sql 文件中的脚本以创建所需表。

  2. 打开服务端的配置文件GGTalk.Server.exe.config

(1)修改 UseVirtualDB 配置项的值为false。

(2)修改 DBIP 配置项的值为数据库的IP地址。

(3)修改 SaPwd 配置项的值为数据库管理员sa的密码。

3.修改客户端配置文件GGTalk.exe.config中ServerIP配置项的值为服务器的IP。

4.运行客户端,注册帐号登录试用。

GG安卓版源码

  GG安卓版本已实现如下功能:

(1)登录服务端

(2)文字聊天,表情图片,消息提醒

(3)好友列表

(4)显示好友在线状态

(5)文件传输

说明:本安卓demo属于入门级水平,目的是为了展示与PC打通的基本实现。若要将GG安卓版本的源码用于正式项目中,建议先对其进行重构,或者敬请等候后续更完善的版本分享给大家!

Empty file

About

可在广域网部署运行的QQ高仿版 -- GG叽叽。 项目地址:http://www.cnblogs.com/justnow/ expand collapse
Cancel

Releases

No release

Contributors

All

Activities

Load More
can not load any more
1
https://gitee.com/leiweicyz_admin/GG.git
git@gitee.com:leiweicyz_admin/GG.git
leiweicyz_admin
GG
GG
master

Search