在Python应用中Telegram 机器人搭建消息提醒

推荐好文:
程序员用Python爬虫做副业半个月就赚了3W
程序员别瞎学,这几门语言要被淘汰了…

对开发者来说,Telgram最吸引人的地方估计是 Telgram bot,你可以在建个机器人来做些事情。不过目前对我来说,最有用的一个功能是通过机器人来做消息提醒。作为开发者,我想实时知道网站的运行情况,系统报错时能即时提醒是一个痛点问题。

当然,在国内有些一些现成的解决方案,比如接入企业微信或者钉钉之类的聊天工具中,就是接入麻烦,你还的先弄个企业。也有一些第三方平台通过公众号来做提醒的。

我之前的做法是通过发短信的方式进行提醒,但是我根本就没有去看短信的习惯。短信用完了这种方案就放弃了。后来,我又想到一个新的办法,就是用邮件方式,sendcloud每天有一定免费限额的邮件发送量。 将邮件提醒集成到系统,给QQ邮箱发送消息,因为QQ邮箱有一个好处是可以关联到微信,这样每当有系统有报错时都可以在第一时间收到微信的消息提醒。

近来发现Telgram的机器人也是一个备选方案,10分钟就可以快速的搭建一个出来。

申请机器人

搞一个机器人也很简单。

直接向【机器人爸爸】申请一个机器人,搜 “BotFather” ,然后给他发送一条消息 /newbot
在这里插入图片描述

这时候他会提示你给机器人设置一个用户名,必须以 _bot 结尾

[

如果遇到重复的名字会提示你换个名字。申请成功后,他会给你下发一个token。
在这里插入图片描述

这个token就是你后面调用api的凭证,所以要保管好,因为任何人只要拿到这个token就可以利用你的机器人操作api,如果token泄漏了可以更新token。

验证token

可以用下面的接口来验证该token是否可用

https://api.telegram.org/bot{token}/getMe

注意,token前面有个固定的 bot 单词,如果你不写会提示404错误的。

正常会返回成功消息

{
   
  "ok": true,
  "result": {
   
    "id": 12345678,
    "is_bot": true,
    "first_name": "xxxx",
    "username": "xxxxxx",
    "can_join_groups": tru
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Spring Boot注册Telegram机器人,你需要遵循以下步骤: 1. 首先,你需要创建一个Telegram Bot账号,可以通过联系BotFather创建。 2. 在Spring Boot应用程序,你需要添加Telegram Bot库。可以使用TelegramBots库来实现这一点。 3. 在你的应用程序添加Telegram Bot的配置,包括Bot的token和Webhook URL。可以使用@BotConfiguration注释来实现这一点。 4. 创建一个WebhookController类并添加一个@PostMapping方法。该方法应该处理来自Telegram的所有请求。 5. 在你的应用程序,启动Webhook并将其链接到Telegram Bot API。可以使用TelegramBots库的WebhookUtils类来实现这一点。 6. 最后,你需要启动你的Spring Boot应用程序。 下面是一个简单的示例代码,演示如何在Spring Boot注册Telegram机器人: ``` @BotConfiguration public class TelegramBotConfig { @Value("${telegram.bot.token}") private String botToken; @Value("${telegram.bot.webhook-url}") private String webhookUrl; @Bean public TelegramBot telegramBot() { TelegramBotsApi telegramBotsApi = new TelegramBotsApi(); try { TelegramBot telegramBot = new MyTelegramBot(botToken); telegramBotsApi.registerBot(telegramBot); telegramBot.setWebhook(webhookUrl); return telegramBot; } catch (TelegramApiException e) { e.printStackTrace(); return null; } } } @RestController public class WebhookController { @PostMapping("${telegram.bot.webhook-url}") public ResponseEntity<Object> handleUpdate(@RequestBody Update update) { // 处理来自Telegram的请求 return ResponseEntity.ok().build(); } } @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } ``` 在这个例子,我们创建了一个名为MyTelegramBot的TelegramBot类,并将它注册到Telegram Bot API。我们还创建了一个名为WebhookController的类,用于处理来自Telegram的请求。最后,我们在Spring Boot应用程序启动Webhook,并将它链接到Telegram Bot API
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值