Nonstop Progressive Marxism
    Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    xuanxuanpublic

    喧喧

    http://xuan.im

    然之协同提供的面向企业即时通信解决方案。

    喧喧

    特色功能

    • 开聊:和服务器上的任何用户开聊,收发表情、图片、截屏、文件样样在行;
    • 开源安全:源码开放,客户端和服务器通信全程加密,安全可靠;
    • 讨论组:一个人讨论的不过瘾?随时邀请多人组建个性讨论组;
    • 公开讨论组:将讨论组公开,任何感兴趣的人都可以加入进来;
    • 通知及提醒:与系统桌面环境集成,即时收到新消息通知;
    • 会话管理:将任意会话(包括讨论组和公开讨论组)置顶,精彩内容不容错过,还可以重命名讨论组、为讨论组设置白名单及浏览会话的所有消息历史记录;
    • 通讯录:浏览企业成员资料和联系信息;
    • 轻量级服务器端:轻松搭配然之协同使用。

    使用

    客户端

    受益于 Electron 的跨平台特性,喧喧客户端提供了 Windows、MacOS 和 Linux 版本。

    下载地址见:http://xuan.im/#downloads

    更多帮助参见 官方客户端使用指南

    服务器端

    客户端主要通过 WebSocket 协议与服务器端进行实时通信,另外还用到了 https 协议来从服务器获取配置及上传下载文件。

    +------------+                 +------------+            +----------------+
    |  Xuanxuan  |---------------->|  Xuanxuan  |----------->|   Rangerteam   |
    |   Client   | WebSocket/Https |   Server   | Http/Https |     Server     |
    |  (PC/Mac)  |<----------------|   (xxd)    |<-----------| (Your Website) |
    +------------+                 +------------+            +----------------+
    

    客户端与服务器端 API 参考:API 文档。服务器端 API 同样是开放的,你可以使用自己熟悉的技术(例如 node.js、go、swift)实现自己的服务器端。

    官方默认的服务器使用 go 语言实现(简称为 xxd 服务),你可以在 /server/xxd/ 目录下找到源代码。xxd 服务提供了 WebSockethttps 接口供客户端使用。

    xxd 服务本身并不存储和管理用户资料和消息数据,而是使用应用更为广泛的 http 协议与另一个服务器(简称 http 服务)通信。这样你只需要在你自己的网站上开发一系列 http 接口即可为你的网站用户启用喧喧。

    官方默认提供的 http 服务是基于开源协同办公软件 然之协同 开发,你可以在 /server/ranzhi/ 目录下找到相关源代码。然之协同服务器部署请参考:服务器部署指南

    这里有一个公开的测试服务器供使用:

    地址:https://demo.ranzhi.org
    用户:demo
    密码:demo
    
    或用户:demo1, demo2, ... demo10
    密码:123456
    

    注意:测试服务器不能使用传送文件功能。

    客户端开发

    客户端主要使用的技术为 Webpack + Electron + React。使用下面的步骤快速进入开发状态:

    1. 下载源码:git clone https://github.com/easysoft/xuanxuan.git
    2. 在源码目录执行:npm install
    3. 启动 react hot server,执行:npm run hot-server
    4. 启动客户端,执行:npm run start-hot

    执行 npm run package 进行客户端打包。

    详情请参考:客户端开发者指南

    许可证

    喧喧使用 ZPL 开源许可证,另外还使用了如下开源项目:

    install

    npm i xuanxuan

    Downloadslast 7 days

    1

    version

    1.1.1

    license

    ZPL 1.2

    homepage

    xuan.im

    repository

    github.com

    last publish

    collaborators

    • avatar