trbot Channel
13 subscribers
2 photos
7 links
当前机器人 @trvoicebot
测试群组兼讨论群
https://t.me/+BomkHuFsjqc3ZGE1
Download Telegram
合并了一个月前创建的合并请求,现在机器人的 log 已经 99% 都是由 zerolog 输出的了
1:32AM INF Read config file from default path defaultConfigPath=./config.yaml
1:32AM INF Get token from environment botTokenID=7276415954
1:32AM WRN Get FFmpegPath from environment FFmpegPath=/root/ffmpeg/bin/ffmpeg
1:32AM INF Use mult log writer logFileLevel=warn logFilePath=./db_yaml/log.txt
1:32AM INF Admin list is set AdminIDs=[1086395364,2074319561]
1:32AM INF Allowed updates list is set allowedUpdates=["message","edited_message","channel_post","edited_channel_post","inline_query","chosen_inline_result","callback_query"]
1:32AM INF FFmpeg path is set FFmpegPath=/root/ffmpeg/bin/ffmpeg
1:32AM INF Inline mode config has been read DefaultHandler=voice PaginationSymbol=- ResultsPerPage=50 SubCommandSymbol=+
1:32AM INF trbot branch=alpha buildAt="2025-07-04 01:32:35+08:00" buildOn=racknerd-9ae746 changes=1 commit=c21de3fcb1ef49e7b65c5bd95276412e93b013d2 logLevel=info runtime=go1.23.5 version=c21de3f
1:32AM INF Bot initialized user={"ID":7276415954,"name":"??","username":"trvoicebot"}
1:32AM ERR Failed to initialize database error="failed to ping Redis [0] database: dial tcp [::1]:6379: connect: connection refused" database=redis
1:32AM INF Database initialized database=yaml databaseLevel=low
1:32AM INF Available databases highLevel=0 lowLevel=1
1:32AM INF Plugin initialize success pluginName="Detect Keyword"
1:32AM INF Plugin initialize success pluginName="Limit Message"
1:32AM INF TeamSpeak server connected build=1655727713 funcName=initTeamSpeak platform=Linux pluginName=teamspeak3 version=3.13.7
1:32AM INF Plugin initialize success pluginName=teamspeak
1:32AM INF Plugin initialize success pluginName=Udonese
1:32AM INF Plugin initialize success pluginName=VoiceList
1:32AM INF Plugin initialize success pluginName="Saved Message"
1:32AM INF Run (6/6) initializer success
1:32AM INF Working at Webhook Mode listenAddress=localhost:2847

当然这都是后端的事情,今天主要的更新内容其实是能将贴纸存档到频道里了,为此我创建了一个频道来存档贴纸 https://t.me/trbot_stickercollect

不过这个功能并不对非管理员用户开放,除此之外给机器人发贴纸包还是能随便下自己想要的贴纸包
今天更新了什么:
降低了稳定性,提高了无法处理请求的概率
今天更新了什么:
仿照 @soutubot 搜图机器人做了一个功能,当你给机器人发送图片时,可以获得各个搜索引擎的搜图链接

关于搜图的功能只有提供搜图链接,没有原 bot 那种自动搜图功能

感谢 @soutubot @soutubot_ch
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
今天更新了什么:
降低了稳定性,提高了无法处理请求的概率

计划在月底公开代码仓库
今天更新了什么:

启用了收藏功能的用户,直接给 bot 发信息,会有一个按钮可以直接保存,不需要再回复消息发送 /save 命令
1
今天更新了什么:

给机器人发送 tg 的 GIF 时,机器人可以将其转换为正常的 GIF 文件,转换过程同样由 ffmpeg 完成

更改了有多个 handler 时选择使用时的提示文字
今天更新了什么:

好像什么都没有更新,因为今天更新的内容是 Teamspeak 用户列表监听的功能,可以不用用户每次变动就发送一条信息,而是只编辑一条置顶的消息,有用户变动也只编辑这条消息

而这个插件目前需要自己部署机器人,但还没公开代码仓库,也就是还不能用上

从技术层面的更新就是添加了状态 handler,这个也暂时没有作用到任何插件中
今天更新了什么:

状态 handler 投入使用,现在添加群组检测关键词时有两种方法,一是发送 /setkeyword 关键词 来逐个添加关键词,二则是在私聊中发送 /setkeyword 命令打开管理菜单,选择群组或群组关键词,点击添加关键词后,bot 会提示你继续输入关键词,这个时候就可以直接发送关键词,不需要再使用 /setkeyword 关键词 这种方式,期间也可以发送 /cancel 或点击按钮来撤销添加或停止添加关键词

但目前依然还是只能发一个词添加一个,关键词长度依然是 30 个英文字符
今天更新了什么:

杂七杂八的把日志和错误处理改了改,看到 bug 就修,想了想大概明显的变化就是选择功能时的按钮全改成中文了
今天本来不打算写,但是出了个未知 bug 导致响应迟钝,不太清楚是什么原因
今天更新了什么:

把命令 handler 都重写了一下,现在支持在频道信息里使用命令了,不过现在没有任何插件在频道中支持使用,打算留给后面用

去掉了一个通用但是有点*山的函数,因为它导致了几次 panic,同时改了不少逻辑选项,估计这几天会偶尔出现 bug

在获取搜索图片链接功能的地方去掉了图片预览
并非今天更新了什么:

修复了 inline 模式下关键词搜索的问题,原因是参数填反了

inline 模式现支持分类功能,目前仅用在 saved message 插件中,在 inline 模式中输入 = 号,等待机器人的响应,继续输入对应的分类即可
今天更新了什么:

检测关键词功能在频道里也可以用了,如果你是频道主,将 @trvoicebot 拉到你的频道里,再往频道里发送 /setkeyword 命令即可开启此功能,这样你和你的任何订阅者都可以使用此功能

如果你只是频道的订阅者,那你也可以联系频道主看看他对这个功能的看法

机器人在频道内使用此功能不需要任何权限,但是初次开启功能时需要响应 /setkeyword 命令,这会需要一个发送信息的权限,之后就可以关闭它,但这会导致全局开关的按钮点不动(没有发信息权限也没有编辑自己消息的权限)

在频道中开启此功能后,可以删掉 bot 发送的菜单,然后使用 t.me/trvoicebot?start=detectkw_addgroup_<频道 ID> 这种格式的链接来让用户添加关键词(必须得拉入频道且发送过 /setkeyword 命令,需要获取频道信息)

例如本频道的链接就是:
t.me/trvoicebot?start=detectkw_addgroup_-1002571088110
trbot Channel
感觉得跳票了
This media is not supported in your browser
VIEW IN TELEGRAM
今天尝试重写 handler 内核,就算自己逻辑配的不好,也得允许开发者自己在特定的位置创建特定的 handler 来运行

想写完再公开仓库主要是项目特殊性,一旦放出来了,方法就不能有太大变动,怎么说都得完善些,不然经常发 break change,那就没人喜欢用了

今天的更新内容有:
修复当消息中存在 HTML 标签符号 <> 时可能没法发出关键词提醒的问题,同时关键词提醒文字不会再将文字全部转换为小写
修复状态机会错误判断对话而触发的问题
打算把机器人当前 inline 模式下默认的语音包 handler 下掉了,用字符串查询性能消耗有些大。
不过功能还在,计划是合到保存消息功能里,然后数据统一存在 meilisearch 数据库里,同时查询也使用 meilisearch 自带的索引
trbot Channel
打算把机器人当前 inline 模式下默认的语音包 handler 下掉了,用字符串查询性能消耗有些大。 不过功能还在,计划是合到保存消息功能里,然后数据统一存在 meilisearch 数据库里,同时查询也使用 meilisearch 自带的索引
已经移除了,现在全都手动发了一份到 @trbotsaved 频道里,所有默认使用 voice 命令的用户也都被改成了 saved 命令,现在没有在 saved message 功能里保存过消息的用户,默认会展示频道里的收藏信息,保存过的也可以选择是否在 inline 模式下显示频道的消息