当前位置: 首页 > news >正文

【VoceChat】一个即时聊天(IM)软件,又是一个可以嵌入任何网页聊天系统

为什么要搭建私人聊天软件

在当今数字化时代,聊天软件已经成为人们日常沟通和协作的重要工具。市面上的公共聊天平台虽然方便,但也伴随着诸多隐私、安全、广告和功能限制的问题。对于那些注重数据安全、追求高效沟通的个人或团队来说,搭建一款专属的私人聊天软件无疑是一个更好的选择。

隐私安全

使用第三方聊天平台时,数据往往存储在平台的服务器上,对于我来说信息可能会存在泄露的问题,所以搭建内网聊天软件不仅仅是保护隐私的选择,更是保数据不会滥用、泄露、出售的风险。

无广告、无干扰

公共聊天软件往往通过广告或数据挖掘获取收入,这不仅带来了大量的广告推送,还使得用户信息面临被不当使用的风险。而私人聊天软件则完全不同,它可以提供一个无广告、无干扰的纯净沟通环境,让您和您的团队更加专注于沟通内容本身。

专属的社交空间

与公共社交平台不同,私人聊天软件可以让成员们享受更加私密、个性化的沟通体验,没有广告、没有不相关的信息流,真正做到为用户服务。

什么是VoceChat?

Vocechat 是一款简单、易用的聊天系统,具有轻量级、开源和可自托管等特点。

VoceChat支持独立部署,这就是说,我们可以很轻松的将其部署到自己的服务器上,用户数据由用户自己掌握,传输过程加密。并且,VoceChat是一款真正的轻量级”小而美“聊天软件,它的体积仅为15MB,几乎可以装到任何服务器上。除了作为聊天软件外,VoceChat还可以以插件的形式插入到网页中,提供网页聊天等各种丰富的功能。

VoceChat适用于团队内部交流、个人聊天服务搭建等,也可以用于网站客服、网站内嵌社区等场景。它博众聊天软件之所长,体积小,能力可不小,15MB的体积,却拥有正常聊天所需要的所有必备功能,例如回复、转发、点赞、钉选消息(相当于QQ的收藏消息)等。界面简洁,能够快速上手,且信息、图片、文件等都可以正常发送,手机版App还可以在App内直接预览PDF文件,这些已经秒杀许多同类产品了。

搭建VoceChat非常方便,不需要像我之前安装Rocket.Chat那样麻烦,安装一次就成功了,并且它很少需要特别进行维护,日常维护很方便。还提供Android、iOS端的App,Android APP可以在官网下载,iOS可以直接在AppStore内搜索到。 

对了,官方搭建了一个 Demo 站点,想要搭建但又却不知道VoceChat怎么样的可以先去体验一下,这绝对是目前你能找到的最好的私人部署聊天系统了,为作者大大的点个赞!!!

安装

Docker 安装

本地快速体验

docker run -d --name vocechat-server \
-p 3009:3000 \
--restart=always \
privoce/vocechat-server:latest

浏览器访问: http://localhost:3009/

Shell 脚本安装

提示

  • 该安装方式适用于小型设备(比如树莓派、NAS 等设备),或者想最大化性能的极客。
  • 基本原理是直接运行二进制的方式,目前支持 Linux x86_64, Arm32, Aarch64 架构。
  • 确保您的系统目录 /etc/init.d 存在,并且可写。

安装

在安装的过程中,会询问绑定的端口,域名,和是否启用 TLS(会自动申请证书)。 这里要注意的是,如果你要开启 TLS,那么端口必须为 443,也就意味着你的 vocechat-server 必须独占 443。

curl -sSf https://s.voce.chat/install.sh | sh

启动

/etc/init.d/vocechat-server.sh start

停止

/etc/init.d/vocechat-server.sh stop

更新服务版本

curl -sSf https://s.voce.chat/update.sh | sh

查看日志

/etc/init.d/vocechat-server.sh log

总结

VoceChat 是一款非常优秀的、可以私人部署的小而美的聊天系统,如果你也在为自己的团队搭建聊天系统,我建议你选用 VoceChat。

VoceChat 项目信息

官网:VoceChat Website

官方文档:https://doc.voce.chat/zh-cn/

官方 Demo:VoceChat WebAPP

开源地址:GitHub | Privoce · GitHub

 

相关文章:

【VoceChat】一个即时聊天(IM)软件,又是一个可以嵌入任何网页聊天系统

为什么要搭建私人聊天软件 在当今数字化时代,聊天软件已经成为人们日常沟通和协作的重要工具。市面上的公共聊天平台虽然方便,但也伴随着诸多隐私、安全、广告和功能限制的问题。对于那些注重数据安全、追求高效沟通的个人或团队来说,搭建一…...

【LeetCode】动态规划—96. 不同的二叉搜索树(附完整Python/C++代码)

动态规划—96. 不同的二叉搜索树 题目描述前言基本思路1. 问题定义2. 理解问题和递推关系二叉搜索树的性质:核心思路:状态定义:状态转移方程:边界条件: 3. 解决方法动态规划方法:伪代码: 4. 进一…...

Nginx UI 一个可以管理Nginx的图形化界面工具

Nginx UI 是一个基于 Web 的图形界面管理工具,支持对 Nginx 的各项配置和状态进行直观的操作和监控。 Nginx UI 的功能非常丰富: 在线查看服务器 CPU、内存、系统负载、磁盘使用率等指标 在线 ChatGPT 助理 一键申请和自动续签 Let’s encrypt 证书 在…...

Vue向上滚动加载数据时防止内容闪动

目前的需求:当前组件向上滚动加载数据,dom加载完后,页面的元素位置不能发生变化 遇到的问题:加载完数据后,又把滚轮滚到之前记录的位置时,内容发生闪动 现在的方案: 加载数据之前记录整体滚动条…...

基于QT、ARM的智能停车管理系统+高分项目+源码

Parking-management-system 本系统基于QT、ARM开发板、Linux系统并对接百度AI 1.1 项目目的: 创建一个智能停车管理系统,能够停入车辆和取出车辆以及查询车辆停入停车场的状态并且计算车辆离开时收费情况。 1.2 项目意义: 实现停车场智能抬杆和智能收费系统&…...

1.6,unity动画Animator屏蔽某个部位,动画组合

动画组合 一边跑一边攻击 using System.Collections; using System.Collections.Generic; using UnityEngine;public class One : MonoBehaviour {private Animator anim;// Start is called before the first frame updatevoid Start(){anim GetComponent<Animator>();…...

发动机冷却系统排空气

发动机冷却系统排空气的几种常见方法 发动机冷却系统是汽车发动机的重要组成部分&#xff0c;它的主要作用是通过循环冷却液来吸收和散发发动机产生的热量&#xff0c;确保发动机在正常工作温度下运行。然而&#xff0c;在冷却系统的运行过程中&#xff0c;由于各种原因&#…...

三周精通FastAPI:1 第一步入门

FastAPI是一个非常棒的python web和api框架&#xff0c;准备用三周的时间“精通它” 学习流程参考FastAPI官网的用户教程&#xff1a;教程 - 用户指南 - FastAPI 学前提示 运行代码 所有代码片段都可以复制后直接使用&#xff08;它们实际上是经过测试的 Python 文件&#x…...

RestTemplate基本使用之HTTP实现GET请求和POST请求

一、GET请求实例 public static TianQi getTianQi(String city) {RestTemplate restTemplate new RestTemplate();HashMap res restTemplate.getForObject("http://www.tianqiapi.com/api/?versionv6&appid15118158&appsecretgVNnwva8&city" city, H…...

2024-10-18 问AI: [AI面试题] 神经网络有哪些不同类型?

文心一言 神经网络有多种不同类型&#xff0c;每种类型都有其特定的结构和应用场景。以下是一些主要的神经网络类型&#xff1a; 前馈神经网络&#xff08;FNN&#xff09;&#xff1a; 也称为全连接神经网络或感知器网络。由输入层、隐藏层和输出层组成&#xff0c;信息流是单…...

【开源免费】基于SpringBoot+Vue.JS课程作业管理系统(JAVA毕业设计)

本文项目编号 T 023 &#xff0c;文末自助获取源码 \color{red}{T023&#xff0c;文末自助获取源码} T023&#xff0c;文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…...

jmeter中对于有中文内容的csv文件怎么保存

jmeter的功能很强大&#xff0c;但是细节处没把握好就得不到预期的结果。今天来讲讲有中文内容的csv文件的参数化使用中需要注意的事项。 对于有中文内容&#xff0c;涉及到编码格式&#xff0c;为了让jmeter能正确地读取csv文件中的中文&#xff0c;需要把文件转码为UTF-8BOM…...

Leetcode 921 Shortest Path in Binary Matrix

题意&#xff1a;求二维矩阵中往8个方向移动的话&#xff0c;从左上方到右下方移动的最短路径 https://leetcode.com/problems/shortest-path-in-binary-matrix/description/ 解答&#xff1a;bfs易得 class Solution { public:int shortestPathBinaryMatrix(vector<vecto…...

第二十二篇——菲欧几何:相对论的数学基础是什么?

目录 一、背景介绍二、思路&方案三、过程1.思维导图2.文章中经典的句子理解3.学习之后对于投资市场的理解4.通过这篇文章结合我知道的东西我能想到什么&#xff1f; 四、总结五、升华 一、背景介绍 对于几何的几个工具&#xff0c;让我再次感叹数学的伟大&#xff0c;逻辑…...

【AI整合包及教程】EchoMimic:开创数字人新时代,让静态图像“活”起来!

在数字化浪潮的推动下&#xff0c;人工智能技术正以前所未有的速度渗透到我们生活的方方面面。从智能家居到自动驾驶&#xff0c;从智能客服到医疗诊断&#xff0c;AI的触角无处不在。而如今&#xff0c;阿里巴巴旗下的蚂蚁集团再次引领潮流&#xff0c;宣布开源其革命性的数字…...

ArcGIS 最新底图服务地址

ArcGIS 最新底图服务地址 说明 先上地址&#xff1a; 地形图&#xff1a; https://services.arcgisonline.com/arcgis/rest/services/Elevation/World_Hillshade/MapServer深色地形图&#xff1a;https://services.arcgisonline.com/arcgis/rest/services/Elevation/World_Hi…...

【服务器部署】Docker部署小程序

一、下载Docker 安装之前&#xff0c;一定查看是否安装docker&#xff0c;如果有&#xff0c;卸载老版本 我是虚拟机装的Centos7&#xff0c;linux 3.10 内核&#xff0c;docker官方说至少3.8以上&#xff0c;建议3.10以上&#xff08;ubuntu下要linux内核3.8以上&#xff0c…...

三菱FX PLC设计一个电子钟程序实例

在这里介绍三菱FX系列PLC的计数器C的功能、结构&#xff0c;计数过程及工作原理。 功能&#xff1a; 对内部元件X、Y、M、S、T、C的信号进行计数。 结构&#xff1a; 线圈、触点、设定值寄存器、当前值寄存器。 地址编号&#xff1a; 字母C&#xff0b;&#xff08;…...

妇女、商业与法律(WBL)(1971-2023年)

WBL项目由世界银行开发&#xff0c;旨在通过分析时间序列数据&#xff0c;研究女性机会不平等与劳动市场动态之间的关系。该项目提供了1971年至2023年的190个经济体的面板数据&#xff0c;包括8个评分指标和35个数据点&#xff0c;涵盖了流动性、工作场所、薪酬、婚姻、父母身份…...

python 卸载、安装、virtualenv

前言 本文汇总下python环境的安装与卸载。 卸载python环境 卸载系统环境内的python环境 python_version_number3.10 sudo rm -rf /Library/Frameworks/Python.framework/Versions/${python_version_number}/ sudo rm -rf "/Applications/Python ${python_version_numb…...

【kafka】Golang实现分布式Masscan任务调度系统

要求&#xff1a; 输出两个程序&#xff0c;一个命令行程序&#xff08;命令行参数用flag&#xff09;和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽&#xff0c;然后将消息推送到kafka里面。 服务端程序&#xff1a; 从kafka消费者接收…...

day52 ResNet18 CBAM

在深度学习的旅程中&#xff0c;我们不断探索如何提升模型的性能。今天&#xff0c;我将分享我在 ResNet18 模型中插入 CBAM&#xff08;Convolutional Block Attention Module&#xff09;模块&#xff0c;并采用分阶段微调策略的实践过程。通过这个过程&#xff0c;我不仅提升…...

Java如何权衡是使用无序的数组还是有序的数组

在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中&#xff0c;各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过&#xff0c;在涉及到多个子类派生于基类进行多态模拟的场景下&#xff0c;…...

06 Deep learning神经网络编程基础 激活函数 --吴恩达

深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...

如何更改默认 Crontab 编辑器 ?

在 Linux 领域中&#xff0c;crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用&#xff0c;用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益&#xff0c;允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...

【Android】Android 开发 ADB 常用指令

查看当前连接的设备 adb devices 连接设备 adb connect 设备IP 断开已连接的设备 adb disconnect 设备IP 安装应用 adb install 安装包的路径 卸载应用 adb uninstall 应用包名 查看已安装的应用包名 adb shell pm list packages 查看已安装的第三方应用包名 adb shell pm list…...

怎么让Comfyui导出的图像不包含工作流信息,

为了数据安全&#xff0c;让Comfyui导出的图像不包含工作流信息&#xff0c;导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo&#xff08;推荐&#xff09;​​ 在 save_images 方法中&#xff0c;​​删除或注释掉所有与 metadata …...

探索Selenium:自动化测试的神奇钥匙

目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...

从面试角度回答Android中ContentProvider启动原理

Android中ContentProvider原理的面试角度解析&#xff0c;分为​​已启动​​和​​未启动​​两种场景&#xff1a; 一、ContentProvider已启动的情况 1. ​​核心流程​​ ​​触发条件​​&#xff1a;当其他组件&#xff08;如Activity、Service&#xff09;通过ContentR…...