像QQ这样的即时通信软件,时不时就会从桌面的右下角弹出一个小窗口,或是显示一个广告.或是一个新闻.或是一个公告等.在这里,我们将其统称为“全局系统通知”.很多使用C#开源即时通讯系统——GGTalk的朋友都建议我加上一个类似的功能,今天,GGTalk 5.1终于实现了这一功能,并且可以通过Web后台发送全局系统通知.下面,我们将一步步讲述这一功能是如何实现的(通过类似同样的步骤,大家可以为GGTalk添加任意的自己需要的功能). 1.定义消息类型和协议类 我们将全局系统通知分为两类: (1)第一…
加密重要的通信消息,是一个常见的需求.在一些政府部门的即时通信软件中(如税务系统),对聊天消息进行加密是非常重要的一个功能,因为谈话中可能会涉及到机密的数据.我在最新的GG 4.5中,增加了对聊天消息进行加密的功能,但这一功能并不是强制的,可以通过开关来进行控制.本文就从 为什么要加密消息.不加密有什么风险开始说起,一直到把GG即时通信系统中实现加密消息的完整实现介绍清楚. 想要直接下载体验的朋友请点击:下载中心 一.为什么要加密消息? 我们知道所有的消息在底层是以bytep[]进行传输的,如果…
在即时通讯系统(IM)中,加密重要的通信消息,是一个常见的需求.尤其在一些政府部门的即时通信软件中(如税务系统),对即时聊天消息进行加密是非常重要的一个功能,因为谈话中可能会涉及到机密的数据.我在最新的GG 4.5中,增加了对即时聊天消息进行加密的功能,但这一功能并不是强制的,可以通过开关来进行控制.本文就从 为什么要加密消息.不加密有什么风险开始说起,一直到把GG即时通信系统中实现加密消息的完整实现介绍清楚. 想要直接下载体验的朋友请点击:下载中心 一.为什么要加密即时聊天消息? 我们知道所有…
像QQ这样的即时通信软件,时不时就会从桌面的右下角弹出一个小窗口,或是显示一个广告.或是一个新闻.或是一个公告等.在这里,我们将其统称为“全局系统通知”.很多使用GGTalk的朋友都建议我加上一个类似的功能,今天,GGTalk 5.1终于实现了这一功能,并且可以通过Web后台发送全局系统通知.下面,我们将一步步讲述这一功能是如何实现的(通过类似同样的步骤,大家可以为GGTalk添加任意的自己需要的功能). 1.定义消息类型和协议类 我们将全局系统通知分为两类: (1)第一种通知,是发给所有用户的…
下载Openfire源码 下载地址:https://www.igniterealtime.org/downloads/index.jsp,当前最新版本为:4.2.3 Eclipse上部署Openfire 1.把openfire源文件拷贝到Eclisps的工作目录中,我的目录是D:\eclipse-workspace 2.进入openfire_src>build>eclipse目录下,把里面settings.classpath.project三个文件拷贝到openfire_src目录,并用win…
转:http://blog.csdn.net/huwenfeng_2011/article/details/43412617 源码搭建 下载地址: 地址:http://www.igniterealtime.org/downloads/source.jsp 环境准备 第1步:  在官网上在下最新源码,这里是3.8.1.解压后得到如下图所示: 第2 步: 在IDE工具上新建一个Java普通工程命名openfire 第3步: 将解压后的openfire_src目录的下的所有文件源码复制到此项目下,例图…
  (最新版本:V6.2,2019.01.03 .Xamarin移动端版本已经推出,包括 Android 和 iOS) GGTalk开源即时通讯系统(简称GG)是QQ的高仿版,同时支持局域网和广域网,包括客户端(PC客户端.android移动端).服务端.数据库.从2013年最初的GG1.0开放源码以来,到后来陆续增加了网盘功能.远程协助功能.离线文件功能.群聊功能.语音聊天功能.视频聊天功能.以及视讯录制功能.和增加了数据库.我想写一个类似汇总的文章,通过这篇文章,大家可以了解到GGTalk开…
原文地址:http://www.cnblogs.com/justnow/p/3382160.html (最新版本:V6.0,2017.12.11 .即将推出Xamarin移动端版本,包括 Android 和 iOS) GGTalk开源即时通讯系统(简称GG)是QQ的高仿版,同时支持局域网和广域网,包括客户端(PC客户端.android移动端).服务端.数据库.从2013年最初的GG1.0开放源码以来,到后来陆续增加了网盘功能.远程协助功能.离线文件功能.群聊功能.语音聊天功能.视频聊天功能.以及…
针对获取到location.href的兼容代码: try { ajaxLocation = location.href; } catch( e ) { // Use the href attribute of an A element // since IE will modify it given document.location ajaxLocation = document.createElement( "a" ); ajaxLocation.href = "&quo…
本文转载自:http://www.crifan.com/files/doc/docbook/uboot_starts_analysis/release/html/uboot_starts_analysis.html 目录 正文之前 1. 本文内容 2. 本文目标 3. 代码来源 4. 阅读此文所要具有的前提知识 5. 声明 1. start.S详解 1.1. 设置CPU模式 1.1.1. globl 1.1.2. _start 1.1.3. ldr 1.1.4. .word 1.1.5. .ba…