Telegram 双向消息转发bot(私聊tgbot 群组话题分类版)

项目地址:GitHub - kkyu9527/Tg_pm_bot


项目的起因

最初是听别人说 Telegram 存在一个“双向”的机制。会导致你的账号无法在群组发消息,只能给双向联系人发送消息。为了避免这种情况,可以用机器人代替我接收消息。


初版逻辑:私聊转发

第一版是一个简单的实现。用户直接给机器人发消息,机器人再把消息转发给我。但随着使用次数增多,这种方式逐渐显得混乱。不同用户的消息混在一起,很难看清谁发了什么,也不利于后续整理。


改进方案:群组 + 话题

后来在别的群看到了一种新的方法:把机器人加入一个群组,再用“话题”功能将每个用户的消息分别归类。这样每个用户就有了一个独立的话题,所有与该用户相关的消息都聚合在一起,结构清晰,也方便我后续回复。

我把这个逻辑加到项目里,不断测试和优化,现在已经比较稳定了。

这里展示一下大概的样子

可以看到,现在不同的用户在不同的话题,并且回复消息直接回复即可,不需要其他操作。

前提是先创建一个独立的群组,然后在群组设置中打开话题模式,最后把bot拉到群组里。


项目使用说明

具体运行方式已经在仓库的 README 中写得比较详细了,这里不再赘述。

不过有几点可以额外说明:

  • 请注意不要在本地已有同名数据库的情况下运行,否则可能冲突。
  • 配置项都写在 .env 文件里,敏感信息不应提交到远程仓库。

总结

这个项目从一个小想法出发,到现在具备了稳定运行的能力,也解决了我自己在使用 Telegram 时的实际需求。如果你也有类似的需求,或许它能给你一些参考。

补充说明

一开始我的设想是使用Ai的Api进行回复内容,但是后来发现效果不好,删除了。

更新

折腾了好几天,慢慢发现bug,慢慢修复bug。最终版也是完成了,以后大概不动了,私聊bot就应该只转发消息,不需要其他花里胡哨的功能。
现在的最终版是主人在话题发送消息后,可以编辑和删除发出来的消息(目前我用了四五款其他私聊bot还没有一个有这个功能)


就这样吧,没啥需要改了的,Ai相关的函数调用也删了,没啥用。

32 个赞

前排顶顶

2 个赞

佬可以!说搞就搞

2 个赞

好东西噢,佬行动力太强辣 :heart_eyes:

3 个赞


这对嘛 :tieba_092:

5 个赞

啊哈哈粘贴错了,现在改过来了

1 个赞

太强了,大佬加油

mark

测试一下论坛bot~

1 个赞

:rofl: 我感觉我之前靠cursor写的tg老黄备份BOT也可以发出来,一直没部署。原理都差不多 将消息通过BOT转发到私密群组/频道,数据库记录主要信息来给搜索做索引。

@chunkBurst 换这个试试

1 个赞

可以呀,毕竟用别人的转发bot不放心。

:rofl:刚找到整理出来,发了。

2 个赞

还有还在吗 这个bot

因为一直没做好我就删档了,那我找时间重构一下,弄好了的话回复你

别人发给群组吗,我的不是这种。

等你哦 大佬

等大佬重构+1。想找一个支持自己填大模型api的双向机器人,一直没找到。好不容易看到大佬这个了,结果大佬删档了,希望早日再次上线!

你好,项目地址在标题下第一行,可以使用了

你好,项目地址在标题下第一行,可以使用了
但是我没有加AI的API调用的功能,因为我不知道用在哪里。如果用户每发一条消息,Ai就回复的话,感觉很吵并且显得很啰嗦。佬友有什么建议的用处吗,如果可以的话我会考虑加上去的,因为之前加过效果并不理想