开源即时通讯平台Tinode

什么是 Tinode ?

Tinode 是一个免费、无限制且灵活的开源消息传递平台,以移动端为主。采用纯 Go 后端(授权 GPL 3.0),客户端采用 JavaJavascriptSwiftgRPC 客户端支持C++C#GoJavaNodePHPPythonRubyObjective-C 等(授权Apache 2.0)。

安装

准备

  1. docker 文件夹中,创建一个新文件夹,并将其命名为 tinode,在 tinode 中建 3 个子目录,分别是 datauploadslogs

  2. 这一步是可选项,只有当你想启用外部设置的时候才需要下载 tinode.conf 文件,地址: https://raw.githubusercontent.com/tinode/chat/master/server/tinode.conf,将其放入到 tinode 目录,在修改前做好备份,修改时一定要记得用 UTF-8 编码格式,记得去掉注释

本质上 tinode.conf 文件是个 json 文件,你可以基于官方的 tinode.conf 修改出一个适合自己的,但是很容易搞出错误,所以没有把握的话建议先不启用外部配置

网络

Docker 管理器的 网络 中创建一个新的桥接网络

在没有容器连接的情况下,网络是灰的

数据库

tinode 支持三种数据库:RethinkDBMySQLMongoDB,老苏选了 MySQL ,但这次没有用群晖自带的 MariaDB,而是用 Docker 新安装

Tinode 要求 MySQL 版本必须在 5.7 以上

名称

容器名称 改为 mysql,进入高级设置

如果不用 mysql 做容器名称,记得要修改 tinode 的环境变量 MYSQL_DSN

mysql

高级设置

勾选 启用自动重新启动

文件夹装载路径说明
docker/tinode/date/var/lib/mysql持久化存放数据

网络

+ 号,在下拉框中找到前面添加的网络 tinode-net

选中 bridge 之后点 - 号,只留下 tinode-net

环境

可变
MYSQL_ALLOW_EMPTY_PASSWORD设置为 yes

端口设置链接 采用默认,全部设置完后,应用 即可

如果容器运行正常,就可以进行下一步了

Tinode

在注册表中搜索 tinode ,选择第三个 tinode/tinode-mysql,版本选择 latest

当然也可以下载第四个 tinode/tinode,这个版本同时包含了三种数据库适配器,需要通过 STORE_USE_ADAPTER = mysql 环境变量来指定数据库适配器。

文件夹装载路径说明
docker/tinode/tinode.conf/opt/tinode/tinode.conf配置文件
docker/tinode/logs/var/log存放日志
docker/tinode/uploads/opt/tinode/uploads上传目录
  • 其中第一项为文件,第二、三项为文件夹;

如果你不启用外部设置,可以只映射文件夹

网络

+ 号,在下拉框中找到前面添加的网络 tinode-net

选中 bridge 之后点 - 号,只留下 tinode-net

端口

除了 6060 端口 ,其他端口直接用了默认的 自动

本地端口容器端口
60606060

环境

可变
EXT_CONFIG按官方文档需设置为 /opt/tinode/tinode.conf

如果前面启用了外部配置,这里就需要设置 EXT_CONFIG,否则不需要设置,保持默认即可

如果你的 tinode.conf 配置有问题,日志会一直显示错误,比如下面👇这样:

Database adapter: mysql , version: 111
Failed to init DB adapter: dial tcp 127.0.0.1:3306: connect: connection refused
./init-db failed. Quitting.

需要修改正确,容器才能正常启动

Database adapter: mysql , version: 111
Database exists, DB version is correct. All done.

应用之后,如果不出意外的话容器应该也能正常运转

运行

在浏览器中输入 http://群晖IP:6060,就看到登录界面

设置服务器地址:

显示不全,端口是默认的 6060,而不是看到的 606

系统内置了一些测试账号

账号密码
alicealice123
bobbob123
carolcarol123
davedave123
frankfrank123

alice 登录网页

虽然显示的聊天内容都是英文,其实界面是中文的

看之前的一些文档,要注册新用户需要设置 SMTP 服务器,实际上现在已经不需要

直接搜索 alice

发测试消息

对端收到的消息

Android客户端

适用于 AndroidTinode 又名 Tindroid,可以在这里下载 Released 的版本

https://github.com/tinode/tindroid/releases

iOS客户端

适用于 iOSTinode 又名 Tinodios, 应该可以在 App Store 中下载

小结

以上设置(包括数据库没有设置密码等等)都是非生产环境的设置,仅用于快速实现功能的体验

更多关于 docker 方式的安装和参数设置,还请查阅官方文档: https://github.com/tinode/chat/blob/master/docker/README.md

一些常见问题: https://github.com/tinode/chat/blob/master/docs/faq.md

PS:老苏设置过 SMTP 服务器,想用于新用户注册和密码找回,用 88 邮箱做了测试,但没有成功,日志中没有任何错误信息,但是也没有收到邮件,可以确认的是发送和接收邮箱都正常,也没有屏蔽,原因待查!

参考文档

Tinode instant messenger
地址: https://tinode.co/

tinode/chat: Instant messaging platform. Backend in Go. Clients: Swift iOS, Java Android, JS webapp, scriptable command line; chatbots
地址: https://github.com/tinode/chat

chat/README.md at master · tinode/chat
地址: https://github.com/tinode/chat/blob/master/docker/README.md

Tinode chat server and Apache reverse proxy on NixOS
地址: https://jiaxiaodong.com/blog/computing/server/nix/5/

tinode部署,使用_cumt_TTR的专栏-CSDN博客_tinode
地址: https://blog.csdn.net/cumt_TTR/article/details/104300501

杨浦老苏
关注 关注
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
开源webim即时通讯源码
12-12
 聚友中国即时通讯软件 使用它,可以为用户构建一个以好友关系为核心的即时交流网络,也可以把它作为web客服软件来使用。  PC端+WEB端+android端+ios端+平板端+云端多平台互通、方便集成各类应用。
ios:Tinodios:适用于iOS的Tinode消息客户端
02-04
Tinodios:适用于iOS的Tinode Messaging Client Swift中iOS客户端。 状态:测试版。 可用且基本稳定,但可能会发生错误。 获得支持 阅读API文档。 要获得支持,常见问题和讨论,请发布到 。 对于bug和功能请求,请提出。 产品特点 已完成 登录 注册新帐户。 开始新的聊天。 编辑个人详细信息。 编辑聊天参数。 查看活动聊天列表 一对一或在群聊中发送和接收纯文本消息。 应用内状态通知。 未读邮件计数器。 本地数据持久性。 传输级别安全-https / wss。 Drafty:文本的Markdown样式格式,例如* style *→
开源即时通讯(IM)系统 高仿微信,阿里面试100%会问到的JVM
wegrefa的博客
03-31 730
学习技术是一条慢长而艰苦的道路,不能靠一时激情,也不是熬几天几夜就能学好的,必须养成平时努力学习的习惯。所以:贵在坚持!最后如何才能让我们在面试中对答如流呢?答案当然是平时在工作或者学习中多提升自身实力的啦,那如何才能正确的学习,有方向的学习呢?有没有免费资料可以借鉴?为此我整理了一份Android学习资料路线:这里是一部分我工作以来以及参与过的大大小小的面试收集总结出来的一套BAT大厂面试资料专题包,主要还是希望大家在如今大环境不好的情况下面试能够顺利一点,希望可以帮助到大家。
java-开源即时通讯(IM)系统Android端
07-12
java-开源即时通讯(IM)系统Android端
webapp:使用React的Tinode网络聊天
02-04
Tinode网站 简报 单页Web聊天应用程序。 该应用程序是基于构建的。 没有外部依赖项。 总体而言,这很像开源的WhatsApp或Telegram网络应用。 尽管该应用通常可以使用,但是请记住,这是正在进行的工作。 可能存在一些错误,缺少一些功能。 该应用程序仅在最新的Chrome和Firefox中进行了测试。 NPM软件包。 可以在尝试使用较新或较旧的版本。 有关演示访问和其他说明,。 安装和运行 这不是一个独立的应用程序,它只是一个前端,一个客户端。 它需要一个。 请参阅。 获得支持 阅读和API文档。 要获得支持,常见问题和讨论,请发布到 。 对于bug和功能请求,请提出。
Android WebSocket实现即时通讯功能
06-09
使用Java-WebSocket开源框架开发Android端即时通讯功能。主要功能: 1、与websocket建立长连接 2、与websocket进行即时通讯 3、Service和Activity之间通讯和UI更新 4、弹出消息通知(包括锁屏通知) 5、心跳检测和重连(保证websocket连接稳定性) 6、服务(Service)保活 聊天界面也比较完整,后台存活比较稳定,目前已在生产环境使用。具体效果请看:https://blog.csdn.net/xch_yang/article/details/88888350
tinode-js:Tinode JavaScript绑定
05-11
Tinode的Javascript绑定 该SDK为基于浏览器的应用程序实现了客户端协议。 可以在和 ()上查看它的运行情况。 这不是一个独立的项目。 它只能与一起使用。 定期发布的NPM软件包位于 您可以将最新的独立缩小版SDK包含在html文件中,如下所示: < script crossorigin =" anonymous " src =" https://cdn.jsdelivr.net/npm/tinode-sdk/umd/tinode.prod.js " > </ script > 或在发展为 < script crossorigin =" anonymous " src =" https://cdn.jsdelivr.net/npm/tinode-sdk/umd/tinode.dev.js " > </ script > 获得支持 阅读和API文档。 要获得支
使用tinode架设自己的私有聊天服务
robinfoxnan的专栏
11-30 2902
架设tinode服务器,实现聊天自由
开源 IM 系统 tinode 部署教程| WSL 环境
lwebapp.com
02-09 951
为便于后端启动,我们采用 WSL 环境,配合 docker 安装数据库,来启动 IM 应用配合修改前端代码,前端需要从另一个仓库来拉取
tinode开发环境搭建
cumt_TTR的专栏
12-02 1760
tinode 支持websocket, long polling(长轮询), grpc 支持3种数据库:MySQL, Mongodb, rethinkdb 完整的客户端: web, desktop,ios,andorid 后端编程语言:Golang 下载代码 项目在github上的地址 go get 注意 需要梯子 还要配置git和命令行的代理 运行 goland配置 服务端编译 一些琐...
tinode部署,使用
cumt_TTR的专栏
02-15 3730
下载相关文件 从github上下载相关的包,我用的是:tinode-mysql.linux-amd64.tar.gz MySQL数据库 版本要求: ` MySQL 5.7 or above is required` 查看版本: mysql> select version(); +-----------------------------+ | version() ...
IM即时通讯聊天系统源码UNIAPP开源费附教程
04-24
IM即时通讯聊天系统源码UNIAPP开源项目 开放28018 8383 1236端口 演示ys.bzoss.top 安装mongodb 修改端口为28018 删除全部禁用函数 命令安装: mongodb安装 cd /www/server cd mongodb cd bin ./configure make && make install ./configure && make && make install cd ../ cd /opt cd ffmpeg ./configure && make && make install 数据库:MySql + mongodb 前端打包工具:Hbuilder 服务器搭建工具:宝塔 + Xshell
开源项目-tinode-chat.zip
09-03
开源项目-tinode-chat.zip,Instant messaging server in Go, not XMPP
tindroid:适用于Android的Tinode聊天客户端应用程序
02-04
Tindroid:适用于Android的Tinode消息客户端 使用后端的Android即时通讯。 Beta版质量的软件。 调试APK在中可用。 获得支持 阅读和API文档。 要获得支持,常见问题和讨论,请发布到 。 对于bug和功能请求,请提出。 什么有效: 一对一对话和群聊。 具有无限数量的只读订户的频道。 应用内状态通知。 未读邮件计数器。 推送通知。 消息状态通知:消息传递到服务器; 接收和阅读通知; 键入通知。 Markdown样式的文本格式,例如* styled *→ styled 。 实现为可扩展。 附件和嵌入式图像。 静音/取消静音对话和其他精细的权限管理
佳蓝即时通讯系统开源
08-16
佳蓝即时通讯系统开源版是一个基于websocket、php和mysql的全功能即时通讯系统。 目前已完成电脑版基础功能,包括:查找添加好友、创建群组,私聊,群聊。 测试账号:佳蓝测试专用
MySQL —— 表的基本操作
最新发布
学习C++的小陈同学
04-30 378
本篇整理了和表结构相关的各种基本操作(增删查改等等)
MySQL 之 主从复制
我见青山多妩媚,料青山见我应如是
04-28 527
复制是指将主数据库的DDL 和 DML 操作通过二进制日志传到从库服务器中,然后在从库上对这些日志重新执行,从而使得从库和主库的数据保持同步。MySQL支持一台主库同时向多台从库进行复制, 从库同时也可以作为其他从服务器的主库,实现链状复制。
MySQL】1.安装与配置
2301_79719531的博客
04-28 813
文件的安全性问题。文件不利于数据查询和管理。文件不利于存储海量数据。文件在程序中控制不方便。数据库存储介质:磁盘+内存。为了解决上述问题,专家们设计出更加利于管理数据的软件——数据库,他能更加有效的管理数据。数据库可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。
java即时通讯开源
10-19
Java即时通讯开源是指使用Java语言编写的开源即时通讯系统。这些系统可以用于电商平台的通知下发、客服聊天等场景。以下是一些常见的Java即时通讯开源项目: 1. Netty:Netty是一个高性能、异步事件驱动的网络应用程序框架,可以用于开发各种协议的客户端和服务器端。 2. Smack:Smack是一个开源的XMPP(可扩展通信和表示协议)客户端库,可以用于开发即时通讯应用程序。 3. Openfire:Openfire是一个XMPP服务器,可以用于搭建企业级即时通讯系统。 4. RocketMQ:RocketMQ是一个分布式消息队列系统,可以用于实现消息通知等功能。 如果您需要使用Java开发即时通讯系统,可以考虑使用上述开源项目。同时,您也可以根据自己的需求选择其他的开源项目或自行开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 适合国内网盘的免费挂载工具CloudDrive 38058
  • 能在路由器里挂载阿里云盘的aliyundrive-webdav 37864
  • 能将阿里云盘挂载为webdav的webdav-aliyundriver 36202
  • Redis可视化工具RedisInsight 31611
  • 能让Jellyfin直接挂载阿里云盘的aliyundrive-fuse 31063

最新评论

  • 开源企业资源规划ERPNext的安装

    杨浦老苏: 表情包非常感谢,期待中

  • 开源企业资源规划ERPNext的安装

    gfans001: 不管是不是真心,下次有时间我给你单独写一篇安装 erpnext 的文章,真的非常简单表情包

  • 开源企业资源规划ERPNext的安装

    杨浦老苏: 不用怀疑,我就是个小白

  • 适配Ollama的前端界面Open WebUI

    杨浦老苏: 网络没问题的话,应该很快的

  • 开源企业资源规划ERPNext的安装

    gfans001: 这种写文章,没有人会看的,特别是小白,原因去吓退了。明明很简单的事情,非要饶了远路,严重怀疑作者水平

您愿意向朋友推荐“博客详情页”吗?

  • 强烈不推荐
  • 不推荐
  • 一般般
  • 推荐
  • 强烈推荐
提交

最新文章

  • 手把手教你搭建公众号AI聊天机器人
  • 食谱管理和餐饮计划应用Mealie
  • 用Docker单独安装xiaoya-alist
2024
05月 2篇
04月 17篇
03月 18篇
02月 16篇
01月 18篇
2023年188篇
2022年162篇
2021年75篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨浦老苏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳SEO优化公司阿里百度网站优化排名价格鹤岗百度竞价包年推广价格长春网站优化按天收费四平网络营销公司扬州网站优化报价太原网页制作公司合肥百度竞价包年推广哪家好衢州SEO按效果付费衡水百度关键词包年推广推荐吉安设计公司网站永湖企业网站建设公司晋中网络推广报价潜江网站制作报价临猗网站设计模板推荐坑梓外贸网站建设黑河关键词按天收费推荐来宾网页制作多少钱鄂州建设网站价格平湖网站优化软件多少钱上饶企业网站建设哪家好盘锦网站搜索优化临汾关键词排名包年推广东营网站搭建嘉兴阿里店铺运营报价坪地营销型网站建设娄底seo优化报价辽阳建设网站公司深圳关键词排名包年推广公司辽阳网站优化按天计费公司哈尔滨关键词排名多少钱歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化