用go编写一个聊天机器人后端(QQ,Tg)

Go实现自动回复的Tg bot机器人 1.准备工作 首先我们先从Botfather机器人之父那里创建一个 bot,然后保存好token。 把创建好的bot 拉进去群组,并把bot 设置成管理员。 2.开始Go代码 首先我们在go.mod 里 引用包: github.com/go-telegram-bot-api/telegram-bot-api 这个 telegram-bot-api 是集成好的telegram 的接口API,方便我们调用。 初始化... 阅读详情

github地址:Gobot-vio

使用go搭建的bot,取名为 Vio ,旨在提供一个接口,用来接受不同协议的请求,调用转发外部讯息并返回,目前可以完成基于chatgpt聊天任务,部署在一个服务器可以多个平台共同调用。

如果你有想法和意见请提issue!这对我和bot都很重要!
欢迎qq加群讨论:340961300

支持通信方式:

  • http
  • webhook
  • 反向websocket

实现平台:

  • Telegram bot
  • QQ bot
  • 微信bot

写在前面/preface

有部署聊天机器人的想法,但是我使用的国内服务器,而且服务器性能也堪忧,于是决定不用云服务器部署了,找个国外的Paas平台,把写的后端送上去就好了。

传统的聊天机器人服务都是一体化的,和聊天平台需要集成。我希望把消息处理的逻辑和平台部署的逻辑做两个服务,后者发送信息给前者,前者返回需要发送的信息,后者再在聊天平台呈现信息。

目前已经完成了:

http:

  • 该后端天然支持http请求,使用go原生net包,创建了一个post请求的路由,可以解析post内容转发调用chatgpt,目前我将其使用在微信公众号的后端上。

webhook

  • 为Tg设置了webhook,可以监听tg服务器的消息,实现tgbot。
  • 针对Telegram的消息处理,对私人,群组,超级群组各有不同的应答模式。

反向ws:

  • 配合go-cqhttp使用,用于实现qqbot,基于上报事件,调用gocq提供的api进行回复。注意参考gocq官方文档
  • 可以调用api发送图片,随机图片api参考

chatgpt调用:

只部署一个机器人接口就好了.无论什么聊天平台,通讯功能的实现基本都是互通的。

本后端最终希望实现只对外暴露一个API,实现机器人通讯的应答模式,对不同平台创建不同的新服务,调用接口皆可进行通讯服务.

实现要点

  • 使用一个goroutine实现同时启动http端口的监听和webhook地址的监听
  • tgbot多参考官方示例和已有项目,官方的机器人接口很完善
  • gocq的配置建议阅读我的个人博客
  • 微信公众号不建议集成,因为公众号的后端需要连接微信官方的后端,用一个新后端通过http请求调用这个bot后端比较好。
  • chatgpt的调用参考go的openai库文档即可,也很完善。注意调用api是无法进行联系上下文对话的,要实现上下文对话只有把历史消息都post给api,这显然是不现实的。
    或者你将ai模型部署在本地,将历史记录存放在本地数据库中,而你的ai模型调用chatgpt(显然工作量太大)
Telegram——Bot 机器人/小程序入门指南 BotFather是所有 TG Bot 的“爸爸”,只能通过它提供的指令来创建与管理 Bot。Telegram 小程序其实就是挂载一个 H5 网站,通过 Bot 关联该网站,我们就可以叫它“小程序(TMA)”了。下面我将会详细介绍如何把一个 H5 网站挂载到到 Bot 中,完成小程序的接入。 阅读详情

相关推荐

Telegram与QQ消息互转

最近做网站的推广,无意中在一个网站中看到一个支持TG群、QQ群消息互转的帖子(http://www.hoobg.com/2802/),正好我的网站又在这两个媒体平台有推广业务,所以我就想试试这个插件,真的是完全按照那个教程来的,到最后总是遇到一个问题:QQ群可以向TG群转发,但是TG群不能向QQ群转发。 那我是怎么解决的呢?昨天试了一天,都没有成功,在最后要睡觉的时...

M1908732958的博客 7749

解决在以存在多个TG Bot的群组中添加自己的TG BOT,输入命令,TG Bot接收不到用户输入

当群组机器人以有2个,我在添加我自己的TG BOT时,发现无论输入什么值都无法唤醒我的TG BOT,创建的其他TG BOT也是一样的情况,一旦群组TG BOT过多,自己的TG Bot就无法接收到消息了,该如何解决

m0_56853686的博客 6344

python利用tg机器人推送发消息从安装到使用(二)

(1)ImportError: cannot import name 'ParseMode' from 'telegram'或者AttributeError: module 'telegram' has no attribute 'ParseMode'不过,随着telegram库的升级等各种原因,目前网上很多代码都不能直接使用(会报各种错误),经过一下午的查阅和研究,解决了绝大部分问题,程序可以正常运行。1、首先要安装telegram库。

kxltsuperr的专栏 1557

使用go-cqhttp搭建本地qq机器人 并实现发送信息案例(使用python)语言实现

本案例是使用go-cqhttp框架搭建的本地qq聊天机器人,演示其中的一个案例,其余的案例其实都类似,只是调用不同的接口。3.下载go-cqhttp然后找到我们想下载的版本记住一定得是:amd64.exe 不是arm64,不要选错操作系统了鉴于可能会出现网络不佳的情况,导致访问github非常的慢,

m0_64642443的博客 7347

使用Go语言实现简单的消息推送功能

在sendMessage函数中,我们获取用户在文本框中输入的消息内容和发送者,然后将其构造成一个JSON对象并发送给服务器。在main函数中,我们设置了HTTP服务器的根路径为一个静态文件目录,以便我们可以在浏览器中加载客户端代码。现在,我们已经完成了服务器端和客户端的代码。我们将使用Go语言的net/http包来创建一个基本的HTTP服务器,并使用WebSocket协议来实现实时消息推送。最后,我们还定义了一个handleMessages函数,用于从广播通道中获取消息,并将消息发送给所有客户端。

BttcOptimized的博客 506

Qzone2TG:爬取QQ空间说说并转发到telegram

Qzone2TG 爬取QQ空间说说并转发到telegram 2021-1-3 Update: 单元测试还不是很好用 有的时候验证还是过不去 抓下来的拼图有时候是反的 算法说实话也太直觉了 现在各个模块还是有大量的测试代码 我也承认 我这个现在不好用) 登录到抓说说的部分基本已经跑通了 tg的部分估计应该没怎么变 增加了selenium的配置部分, 增加了Option 重构了html解析模块, 将与feed解析合并 验证码登录是不是应该提上日程了 功能 自动登录空间, cv过验证 爬取说说文本 爬取说说图片 爬取说说转发 QQ原生表情转文字 点赞(目前只支持appid=311, typeid=0 or 5的说说, 即原创和转发) 过滤部分广告(待测) 简单的tg机器人 (目前)不支持: 转原生表情(懒得搞.jpg) 爬取视频 给应用分享消息点赞 显示点赞人数和昵称 显示评论 评论 实时刷新

在Telegram上使用EFB同时推送QQ与微信消息

众所周知,待机耗电两巨头皆出自TX,但其对于工作人群和大学生而言又是不可或缺的通讯手段.Telegram作为一款合格的IM支持Android众多特性(TX出来挨打),通知栏回复、消息再提醒、自定义震动以及最关键的FCM推送(FCM的特性和优势可以在Google上查询).使用插件利用Telegram来完成QQ微信的消息代收是目前Android系统较优秀的解决方案 ![images.png](https://i.loli.net/2019/04/13/5cb14d8907d17.png)

weixin_45028029的博客 7402

Go-TelegramMiddlemanBot–让推送通知与POST一样简单

Telegram Middleman Bot – 让推送通知与POST一样简单

TelegramBot无法接收群消息

😔记录一下TelegramBot开发遇到的奇葩问题。

Pompey_wp的博客 8898

QQ2TG-For-Mirai:帮助QQ与电报互联的小程序(Mirai版本)

QQ2TG For Mirai 一个帮助QQ​​与Telegram互联的小程序(Mirai版本) 由Hans362基于大佬的修改而成 演示 简述 程序主体使用PHP ,依赖于swoole ,配合Mirai-console的插件使用 目前还不是十分完善,可能存在各种奇怪的问题,还请各位dalao指点一二 特征 使用Swoole的异步HTTP客户端请求Telegram Bot API服务器 将QQ图片缓存为Telegram文件ID,提高效率 扩展性较高,可轻松支持一个新的CQ码或电报消息格式 支持双向发起私聊消息 支持QQ自带的表情符号 支持Telegram端撤回QQ消息 支持私聊QQ黑名单 支持

QQ2TG:帮助QQ与Telegram互联的小程序

QQ2TG 一个帮助QQ​​与Telegram互联的小程序 演示 简述 程序主体使用PHP ,依赖于swoole ,配合酷Q的插件使用 目前还不是十分完善,可能存在各种奇怪的问题,还请各位dalao指点一二 特征 使用Swoole的异步HTTP客户端请求Telegram Bot API服务器 将QQ图片缓存为Telegram文件ID,提高效率 扩展性较高,可轻松支持一个新的CQ码或电报消息格式 支持双向发起私聊消息 支持QQ自带的表情符号 支持Telegram端撤回QQ消息 支持私聊QQ黑名单 支持Sticker无损转发(可以当Sticker转移机器人啦233 附带网站端消息查看 支持位置信息

OpenClaw 专题 - 中文部署教程 / 客户端下载 / 必装 Skills / 实战案例

2026 最火开源 AI 智能体(龙虾)全面解析,本专题给大家提供 OpenClaw (龙虾)中文部署教程 / 客户端下载 / 必装 Skills / 实战案例等等…在 AI 聊天工具遍地开花的今天,用户对 AI 的需求早已超越“对话陪伴”,转向“实际执行”——从批量处理文件、自动化办公到操控设备,大家迫切需要一个能“动手干活”的数字助手。

如沐春风 540

Go-CleverQQ机器人框架Golang版SDK

CleverQQ机器人框架Golang版SDK

2024 全功能tgbot Telegram机器人多功能源码 带后台

trx兑换 闪兑 关键字监控 群管 usdt监控 余额查询 推广分享 等几乎常见的tg机器人功能都有。2024 全功能tgbot Telegram机器人多功能源码 带后台。打包好的可以直接上手。

3290

ArcGIS中利用DEM数据生成地形图既视感的等高线;利用掩膜进行等高线注记;DEM的可视化表达总结

文章目录前言一、效果图展示二、地形(DEM)可视化表达1.一维可视化2.二维可视化2.三维可视化二、ArcGIS中利用DEM数据制作等高线2.三维可视化2.三维可视化2.三维可视化2.三维可视化二、ArcGIS中利用DEM数据制作等高线2.三维可视化2.三维可视化2.三维可视化总结 前言 最近老师布置作业:DEM的可视化表达。想做一个等高线地形图那样、看起来高级一点的等高线,可是我看网上大多数教程都只展示了【等值线】工具,做出来效果都一般。我自认为自己做出来的效果还可以,把步骤分享给大家。 一、

pink_pig__的博客 5万+

基于h5端的视频录制和回溯功能的实现

整理了一套《前端大厂面试宝典》,包含了HTML、CSS、JavaScript、HTTP、TCP协议、浏览器、VUE、React、数据结构和算法,一共201道面试题,并对每个问题作出了回答和解析。

发果叁 3191

TG搭建机器人 手把手教学

这篇教程简明地介绍了搭建Telegram机器人的完整流程。首先指导用户通过BotFather创建机器人并获取Token,强调Token安全。然后详细讲解了四种对接方式:本地长轮询、Webhook、终端服务器和电脑运行,重点说明了每种方式的优缺点。教程提供了两种实现代码:最简单的本地轮询版本和适用于PythonAnywhere的Webhook版本,并解释了核心逻辑是处理update.message.text并返回响应。最后提醒开发者只需关注消息入口,即可自由扩展功能。全文以实践为导向,适合初学者快速上手搭建

2602_96214490的博客 888

基于Windows环境的OGG远程抽取异常(经典模式)OGG-02830 Formatting error

MOS提供的解决方法,根据MOS的提示是由于使用的OGG版本太新了,经典模式下已经弃用了这种远程抽取方式。问题:Windows环境下启用远程抽取ADG备库的数据,在启动抽取进程的时候出现如下错误提示。

Mrzhou的博客 380

用微信接收电报机器人的信息 电报消息转发到微信

电报消息转发微信

qq_41742839的博客 1570

遥感大模型的深度学习从CNN到Vision Transformer以及混合架构的演进之路

深度学习,特别是以卷积神经网络(CNN)和Transformer为代表的“大模型”技术,正以其强大的表征学习能力,深刻地重塑着遥感智能解译的整个技术栈与认知范式。本文将系统性地梳理遥感大模型从局部卷积的奠基,到全局注意力的革命,再到二者融合的混合架构演进这一波澜壮阔的历程。我们将深入剖析每个阶段的核心技术原理,结合遥感数据特性与实际应用案例,详细阐述其在分类、检测、分割等核心任务中的具体应用。

panshengwu的博客 1138

【解决方案】使用transformer指定显卡后,模型依然加载到默认第1张显卡上

按理说指定了环境变量为后面几张显卡,模型会自动加载到我们指定的显卡上。可是查看gpu使用情况,发现还是加载在了第一张显卡上,这是为啥呢?

m0_56745306的博客 2441

傻妞机器人对接TG【无需QQ】

搭建步骤 1️⃣获取机器人 API token 2️⃣获取tg管理员ID 3️⃣安装wget unzip gcc gcc-c++ git✨ 4️⃣安装screen🥤 5️⃣傻妞安装🌼 6️⃣对接tg 7️⃣screen监控 8️⃣对接青龙面板

@MIKE小助手 1万+

DDR March系列算法整理

一

不吃鱼的猫的博客 1万+
上一篇: 使用配置文件启动go项目
下一篇: 使用grpc在go后端和python服务间通信
空气力学先驱
博客等级 码龄6年 154粉丝 30原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值