网址:
https://gitee.com/475660/xyTalk-pc

https://github.com/xy-Group/xyTalk-pc

Xy.Platform是一个高性能、可扩展的企业通信和协作平台。包含通讯服务(XMPP协议)、客户端(PC、Android、iOS)、Web门户(用于集成企业应用)、WebAPI(用于企业扩展调用)。

XyTalk.pc是XMPP协议的即时通讯IM客户端PC软件,可用于Windows/linux/Mac. 
联系邮箱:475660@qq.com

## 特性 ##

XyTalk IM

XyTalk MUC

XyTalk Portal

XyTalk HTTP API

  企业IM服务和客户端,提供完备的功能和使用体验,注重企业特性。   企业特性的群组服务,团队沟通是IM产品的核心价值之一。   一体化办公门户平台,提供网盘、会议管理、流程审批、内容管理等。   为企业提供IM服务开发调用,提供安全可扩展的方式服务集成对接。
       

XyTalk Sync

XyTalk File Storage

XyTalk Push

XyTalk Full Client

  利用企业原有的组织架构和登陆认证体系,组织架构同步、入职自动账户启用、离职即时清除等。   企业文档库。个人、群组网盘。对海量存储需求还提供分布式文件系统。   iOS APNS和安卓消息推送服务,用于离线消息的提醒。   全栈客户端体系,包含Windows\android\iOS\Web\Linux。

## 功能 ##

功能
基础功能
登陆。
自动断线重连
个人资料修改。头像,电话,邮件等
组织架构初始化工具
单聊、群聊消息
消息复制
消息推送。iOS APNS和安卓消息推送
消息撤回
消息转发
图片消息
文件消息
置顶会话
消息加密
离线消息
消息存档
消息搜索
截屏编辑
截屏传输及展示
表情
员工位置
短语音消息
短视频消息
离线文件
离线文件服务器程序
GB级大文件传输
最近联系人
联系人列表
联系人模糊搜索。按名称、缩拼、电话、部门
组织架构展示
联系人电子名片
同事二维码扫描添加
发起群聊
群组加人
群主踢人
群名称。可修改
群组公告
群组权限控制
群组离线消息
群发\广播信息。管理员可群发
单聊拖拽转多人会话
退出群
删除群
聊天记录备份\还原
系统设置
自动升级
类微信UI操作体验
功能
企业功能
HTTP API。为企业提供IM服务调用: 
OAuth2.0认证 
SSO单点登陆接口 
HTTP文件上传 
HTTP文件下载 
组织架构同步
登陆员工同步
移动门户后台管理
移动门户Web消息
移动门户企业网盘
移动门户BPM工作流
移动门户会议预定
移动门户会议提醒
移动门户会议日历
移动门户会议记录
移动门户日程提醒、定时提醒
移动门户同事圈
移动门户通告
移动门户通讯录
移动门户电子投票
海量文件私有云分布式存储
集成邮件系统
企业LOGO定制
企业原办公OA集成
单点登陆集成
电子考勤(GPS定位考勤)
集成短信系统--移动电信联通
集成短信系统--回复支持
集成短信系统--群发支持
     

## 技术相关 ##

  • 开发语言:Java8
  • 通讯协议: XMPP(用于消息)、HTTP
  • 通讯Server: Tigase + Nginx + Kafka + Zookeeper,针对XMPP和企业业务我们做了部分定制,如离线文件、组织架构同步服务、企业集成登陆验证服务、消息同步、消息撤回、消息翻译、流程机器人等服务。服务器插件基于Tigase开发,
  • OSGi service platform: Apache Felix
  • WebServer Portal & API: Spring、Shiro、Activiti、Websocket
  • PC端UI: Java Awt/Swing(very low?知道intellij idea、Google Android Studio用什么开发的吗?)
  • Swing皮肤:Darcula
  • 异步框架: Java8内置CompletableFuture、SwingWorker,原则是适合就好,不必过重
  • 缓存:客户端堆内缓存,服务器端Ehcache
  • DB: MySQL(Server side)、SQLite(客户端)
  • 文件服务(用于离线文件存储、群文件、图片、短语音、短视频、企业文档库等应用),支持:
    • 私有自带Xy.File OSS-FS文件系统服务 ,自主开发,免费开源.(https://gitee.com/475660/xyFS
    • 私有企业云存储:Seafile网盘
    • 私有分布式文件:FastDFS文件系统
    • 私有分布式文件:MongoDB GridFS分布式文件系统
    • 私有分布式文件:百度文件系统 BFS
    • 私有分布式文件:微信后台分布式存储数据库 PaxosStore
    • 私有BASE64转存关系数据库存储(停用)
    • 公有云存储:阿里OSS云存储
    • 公有云存储:七牛云
    • 公有云存储:腾讯文件云存储 CFS
  • ORM:Mybatis
  • 日志库:logback、slf4j-log4j12
  • 其他客户端:Android、iOS、Web

## 截图预览 ##

PC版群组会话界面: 
 PC版群组管理界面: 
 PC版建群界面: 

PC版会话界面: 

PC版联系人界面: 
 
发送文件,接收者是Spark客户端: 
PC版设置界面: 
 
Android版、iOS版界面: 

后台管理界面: 

XyTalk企业即时通讯IM开始开源的更多相关文章

  1. GIM企业即时通讯

    GIM企业即时通讯是笔者Garfield(QQ:3674571)采用.NetFramework4.0+SQL2008R2开发的一套企业内网/外网 通用的即时通讯(IM)软件,分为服务器端和客户端,通讯 ...

  2. ENTBOOST 2014.180L 发布,开源企业IM免费企业即时通讯

    ENTBOOST,VERSION 2014.180 Linux版本发布,主要增加企业IM应用集成功能,完善安卓SDK功能及部分BUG修正: 7/1(明天)发布Windows版本,敬请关注! ENTBO ...

  3. 开源企业IM-免费企业即时通讯-ENTBOOST V2014.180 Linux版本号正式公布

    ENTBOOST,VERSION 2014.180 Linux版本号公布,主要添加企业IM应用集成功能,完好安卓SDK功能及部分BUG修正: 7/1(明天)公布Windows版本号,敬请关注! ENT ...

  4. 开源企业IM-免费企业即时通讯-ENTBOOST V2014.183 Windows版本号正式宣布

    ENTBOOST,VERSION 2014.183 Windows(点击下载)版本号公布.主要添加PC端P2P(点对点)文件传输功能:公布安卓Android手机clientAPP 1.0版本号.公布苹 ...

  5. 开源企业IM-免费企业即时通讯-ENTBOOST V2014.180 Windows版本号正式公布

    ENTBOOST,VERSION 2014.180 Linux版本号公布,主要添加企业IM应用集成功能,完好安卓SDK功能及部分BUG修正. 下一版本号公布时间.7月15日.敬请关注. ENTBOOS ...

  6. 开源企业IM-免费企业即时通讯-ENTBOOST V0.9版本号公布

    ENTBOOST V0.9版本号公布,更新内容:1.完好多人群组聊天,提高群组聊天性能及稳定性:2.苹果IOS SDK.添加联系人管理功能,优化API和内部流程.修复部分BUG.3.添加企业应用功能集 ...

  7. 开源企业IM-免费企业即时通讯-ENTBOOST V2014.183 Linux版本号正式公布

    版权声明:本文为博主原创文章,欢迎转载,转载请尽量保持原文章完整,谢谢! https://blog.csdn.net/yanghz/article/details/37807975 ENTBOOST, ...

  8. [重磅开源] 比SingleR更适合的websocket 即时通讯组件---ImCore开源了

    有感而发 为什么说 SignalR 不合适做 IM? IM 的特点必定是长连接,轮训的功能用不上. 因为它是双工通讯的设计,用hub.invoke发送命令给服务端处理业务,其他就和 ajax 差不多, ...

  9. 开源企业IM免费企业即时通讯ENTBOOST V2014.177版本号正式公布

    版权声明:本文为博主原创文章,欢迎转载,转载请尽量保持原文章完整,谢谢! https://blog.csdn.net/yanghz/article/details/30529469 ENTBOOST, ...

随机推荐

  1. Python 学习图谱

    https://mp.weixin.qq.com/s/-fJYAlOs4ui0YeJ-W6BkeQ

  2. mysql命令行常用指令

    一. 启动mysql:service mysql start 停止mysql:service mysql stop 重启mysql:service mysql restart 查看mysql服务状态: ...

  3. linux操作命令,批量注释#方法

    用户,密码 1.修改密码:passwd 2.切换用户:  su root 3.增加用户:adduesr+用户 4.root更改目录的权限:chown  leopard:leopard data/ -R ...

  4. react项目的ant-design-mobile的使用

    现在测试一下ant-design-mobile的使用,引用一个Button 没有样式 这个问题是没有引入样式 解决方法有两种 这种方法自己弄不出来,然后用另外一种方法 引入样式: import 'an ...

  5. [leetcode]27. Remove Element删除元素

    Given an array nums and a value val, remove all instances of that value in-place and return the new ...

  6. javascript函数闭包(closure)

    一,首先感受下javascript函数的闭包 二,闭包 1,定义:闭包就是能够读取其他函数内部变量的函数,由于在javascript语言中,只有在函数内部的子函数才能够读取局部变量,因此可以把闭包简单 ...

  7. python基础之Day8

    一.什么是文件 文件是操作系统为用户或应用程序提供的一个读写硬盘的虚拟单位 文件的操作核心就:读.写 即我们只需要对于进行读写操作,就是对操作系统发起请求,然后由操作系统将用户或者应用程序对文件的读写 ...

  8. Python之队列Queue

    今天我们来了解一下python的队列(Queue) queue is especiall useful in threaded programming when information must be ...

  9. 转载:C# 将引用的DLL文件放到指定的目录下

    当软件引用的DLL比较多的时候,全部的DLL都放在exe同目录下,显得比较乱,如果能把dll放到响应的文件夹下面,就方便很多 下面是解决该问题的一种方法: 右键点击项目:属性->设置,项目会生成 ...

  10. vue中的import、export、requre的区别

    在es6之前js一直没有自己的模块语法,为了解决这种尴尬就有了require.js的出现.在es6发布之后js又引入了import的概念使得不清楚两者之间的区别的同学在实际使用过程中造成了自己的误解, ...