(最新版本:V6.2,2019.01.03 。Xamarin移动端版本已经推出,包括 Android 和 iOS)

  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都有源码的朋友不要再问我要其它的源码了:)

四.源码版本记录

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集成!

2016.12.06  --  V5.5, 增加对MySQL数据库的支持!

2017.12.11  --  V6.0, 增加Xamarin移动端,包括 Android 和 iOS!

2019.01.03 --   V6.2, PC版修复bug:更新组成员时,没有更新组的version;修复MySQL分页错误,以及查询聊天记录错误。Android版:增加好友在线状态、群聊等功能。

五.GG截图

0. android 移动端

        

1.登录框

2.主窗体、最近联系人

    

3.聊天窗口

4.视频会话邀请、视频会话    (2015.06.17 增加视频聊天录制功能)

      

5.磁盘访问请求、进入远程磁盘

      

6.远程磁盘操作

7.网盘

8.远程协助

      

9.共享桌面(指定了QQ影音播放器的区域作为共享区域)

10.注册:

    

11.添加好友:

12.加入群:

13.群聊天:

14.离线消息:

15.发送离线文件:

16.离线文件发送完成、接收完成:

  

17.系统设置:

  

18.自拍头像:

19.使用自拍头像:

20.聊天记录:

  

21.好友分组:

  

22.正在输入:

  

六.最新源码下载

  最新源码下载以及部署说明文档,请参见这里

________________________________________________________________________

几句题外话:从GGTalk发布以来,通过GGTalk认识了一些朋友,也接了一些小单子,赚了一点小钱。有了一点甜头,目前和2、3个好朋友一起做做小项目也是不错的,这未尝不是一条养家糊口之路了?

欢迎和我探讨关于GGTalk的一切,我的QQ:2027224508,多多交流!

大家有什么问题和建议,可以留言,也可以发送email到我邮箱:2027224508@qq.com。

如果你觉得还不错,请粉我,顺便再顶一下啊

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

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

    原文地址:http://www.cnblogs.com/justnow/p/3382160.html (最新版本:V6.0,2017.12.11 .即将推出Xamarin移动端版本,包括 Androi ...

  2. 可在广域网部署运行的QQ高仿版 -- GG叽叽(源码)

    前段时间看到园子里有朋友开发了QQ高仿版的程序,我也非常有兴趣,以前一直有个做即时聊天程序的梦,趁这段时间工作不是很忙,就开始动手来做这个事情.根据我以往积累下来的项目经验,实现QQ的基本功能,问题应 ...

  3. 基于Socket通讯(C#)和WebSocket协议(net)编写的两种聊天功能(文末附源码下载地址)

    今天我们来盘一盘Socket通讯和WebSocket协议在即时通讯的小应用——聊天. 理论大家估计都知道得差不多了,小编也通过查阅各种资料对理论知识进行了充电,发现好多demo似懂非懂,拷贝回来又运行 ...

  4. 使用Xamarin开发即时通信系统 -- 基础篇(大量图文讲解 step by step,附源码下载)...

    如果是.NET开发人员,想学习手机应用开发(Android和iOS),Xamarin 无疑是最好的选择,编写一次,即可发布到Android和iOS平台,真是利器中的利器啊!而且,Xamarin已经被微 ...

  5. iOS 即时通讯 + 仿微信聊天框架 + 源码

    这些你造吗? 即时通讯(IM),在IOS这片江湖里面已经算是一个老者了,我这小旋风也是在很早以前巡山的时候,就知道有即时通讯这个妖怪,以前也多多少少接触过一些,在造APP的时候用过,哎呀,说着说着就感 ...

  6. java SSM 框架 多数据源 代码生成器 websocket即时通讯 shiro redis 后台框架源码

    A 调用摄像头拍照,自定义裁剪编辑头像 [新录针对本系统的视频教程,手把手教开发一个模块,快速掌握本系统]B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,开发利器)+快速构建表单;  技 ...

  7. 即时通信系统中实现全局系统通知,并与Web后台集成【附C#开源即时通讯系统(支持广域网)——QQ高仿版IM最新源码】

    像QQ这样的即时通信软件,时不时就会从桌面的右下角弹出一个小窗口,或是显示一个广告.或是一个新闻.或是一个公告等.在这里,我们将其统称为“全局系统通知”.很多使用C#开源即时通讯系统——GGTalk的 ...

  8. 即时通信系统中实现聊天消息加密,让通信更安全【低调赠送:C#开源即时通讯系统(支持广域网)——GGTalk4.5 最新源码】

    在即时通讯系统(IM)中,加密重要的通信消息,是一个常见的需求.尤其在一些政府部门的即时通信软件中(如税务系统),对即时聊天消息进行加密是非常重要的一个功能,因为谈话中可能会涉及到机密的数据.我在最新 ...

  9. 可在广域网部署运行的QQ高仿版 -- GGTalk总览

     (最新版本:V5.5,2016.12.06  增加对MySQL数据库的支持.) (android移动端:2015.09.24 最初发布 ,2016.11.25 最后更新) GGTalk(简称GG)是 ...

随机推荐

  1. hive mysql元数据,报错 Specified key was too long; max key length is 767 bytes

    Specified key was too long; max key length is 767 bytes 此错误为hive 元数据mysql 字符集编码问题 如 show create tabl ...

  2. canal 配置 详细说明

    git hub  https://github.com/alibaba/canal canal.properties介绍:https://agapple.iteye.com/blog/1831873

  3. 电商项目中使用Redis实现秒杀功能

    参与过抢购活动就知道,很明显的一点是商即便商品实际没有了也是可以下单成功的,但是在支付的时候会提示你商品没有了. 实现原理:list双向链表 使用redis队列,因为pop操作是原子的,即使有很多用户 ...

  4. linux 强制删除yum安装的php7.2

    由于支付宝SDK只支持php7.1,因为需要删除之前安装的7.2版,进行降级.通过yum remove不能完全删除php,必须通过rpm方式卸载.由于php安装模块间有依赖,因此需要按顺序进行卸载.如 ...

  5. centos7下面添加htop工具

    htop下载wget http://sourceforge.net/projects/htop/files/latest/download 解压tar -zxf downloadcd htop-1.0 ...

  6. Windows导入EOS工程

    [Windows导入EOS工程] 编写 EOS 智能合约时,有许多EOS提供的结构.函数.宏.文档对这些内容的描述毕竟模糊,再多的文档也比不过看实际的代码,所以还要下载EOS代码看一下. 最好有个ID ...

  7. Jekins在Tomcat上的安装和配置

    首先,apache.org的官网下载Apache Tomcat. 第二:点击/一步一步的安装tomcat,没有任何需要说明的难点. 我偏好选择安装tomcat可执行文件,这样可以在安装时就自动吧tom ...

  8. Python设计模式 - UML - 类图(Class Diagram)

    简介 类图是面向对象分析和设计的核心,用来描述系统各个模块中类与类之间.接口与接口之间.类与接口之间的关系,以及每个类的属性.操作等特性,一般在详细设计过程中实施. 类图本身就是现实世界的抽象,是对系 ...

  9. 【CSS】自定义checkbox样式

    修改原生checkbox样式. 效果 原理 1.利用CSS3属性 appearance. 该属性(强制)更改(改变)默认(原生)样式. Firefox 支持替代的 -moz-appearance 属性 ...

  10. Centos7 进入单用户模式,修复系统

    一.开机时进入如下界面,(按下方向键盘,阻止系统自动继续) 按e键出现下面界面 按方向键下,定位到最后,找到“ro”一行,ro的意思是read only,将“ro”替换成 rw init=/sysro ...