使用telegram机器人发送通知

这篇具有很好参考价值的文章主要介绍了使用telegram机器人发送通知。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景

在训练深度学习模型时,除了粗略估计外,很难预测训练何时结束。此外,我们可能还想随时随地查看训练情况,如果每次都需要登录回服务器的话并不方便。因此,为我们的训练设置自动通知会大有裨益。

相关的插件和库其实很多,例如而knockknock、dinglingling,但是存在着以下缺点:

  • 依赖第三方服务,dinglingling依赖于ServerChan在微信端发送通知,是需要付费订阅会员的。
  • 需要添加装饰器,代码可读性下降。
  • 自定义能力差,仅仅起到通知作用。

基于此,个人认为比较好的方式是直接能使用免费的服务给自己发送消息,我比较推荐使用telegram(电报),因为飞书、钉钉、企业微信等都或多或少在逐步限缩个人版的机器人使用,以后可能会成为付费专属功能。

可以正常使用telegram的情况下,可以按照下面的步骤操作。

1 创建机器人

电报的机器人是我们可以自己创建的一个聊天对象,表现形式和添加的好友一样,只是名字需要以 bot 结尾,不区分大小写。

要使用机器人发消息给自己或群组,先得有一个机器人,创建一个属于自己的机器人很简单,添加BotFather这个账号,依次发送以下内容即可:

/start

/newbot

YourNameBot (给机器人取名字,以 bot 结尾,不区分大小写,直接发送过去即可,如果重名了会提示重新输入)

创建成功后BotFather会返回一个token,这是用来调用API接口的,后面会用到。

2 与机器人的会话

上面我们创建了“YourNameBot”这个机器人,要与之对话,在任意聊天窗口发送 “@YourNameBot” 然后点击这条消息即可打开与YourNameBot的聊天。

如果你需要机器人发送消息给群组,还需要把机器人拉入到群组中。

特别注意:我们需要先与机器人之间创建会话,主动给它发一次消息,机器人才能给我们发消息,否则机器人无法主动发送消息。

通过发送第一条消息,我们可以访问

https://api.telegram.org/bot<YourBOTToken>/getUpdates

这个链接,把token替换成刚刚我们获得的机器人的token,就可以查看机器人的会话信息,因为我们向机器人主动发了消息,所以我们可以获取以message为key下面的[‘chat’][‘id’],这就是我们需要的chat_id(消息室的标识)。

3 调用API让机器人发送消息

现在,我们有了token、chat_id,接下来我们只需要组建我们的message就可以发送了,这个接口是:

https://api.telegram.org/bot<YourBOTToken>/sendMessage

我们可以使用python的requests库来发送post请求。写了个简易的代码,大家可以根据自己的需求进行修改。

import requests
import json

def telegram_notification(epoch, avg_test_scalars):
    """
    Send notification to telegram

    params
    epoch: int
    avg_test_scalars: dict

    return: None
    """
    # chat id of user
    CHAT_ID: int = 1234567
    # telegram bot token
    TOKEN="1234567"

    url = 'https://api.telegram.org/bot{}/sendMessage'.format(TOKEN)
    headers = {
        'Content-Type': 'application/json'
    }
    # main text
    text = "Epoch: {} has completed!\n".format(epoch)
    text += json.dumps(avg_test_scalars)
    # pack data
    data = {
        'chat_id': '{}'.format(CHAT_ID),
        'text': text
    }
    # send request
    response = requests.post(url=url, headers=headers, json=data)
    
    return


if __name__ == "__main__":
    telegram_notification(1, {'a': '1', 'b': '2'})

效果如图:
怎么向电报机器人发送内容,运维,运维开发,运维文章来源地址https://www.toymoban.com/news/detail-836447.html

到了这里,关于使用telegram机器人发送通知的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Linux】+【Jenkins】+【飞书机器人】发送通知(带签名)

    自定义机器人使用指南飞书官网https://open.feishu.cn/document/client-docs/bot-v3/add-custom-bot 我这个设置了签名的,具体怎么设置签名可以查看飞书官方文档 可以看到上传去是没有执行权限的,一定要记得叫上执行权限 chmod +x sendMsg.py 最后一个参数标识 0 开始构建 1 构建完成 /opt/java/scri

    2024年02月14日
    浏览(34)
  • Jenkins+Allure测试报告+飞书机器人发送通知

    本篇讲述在jenkins构建成功后,如何生成测试报告,以及推送飞书(因为我公司用的是飞书,所以是发送到飞书机器人)。 本次实践搞了一天,踩了一些坑,其中有2个坑可参考如下: 1、关于jenkins生成allure报告是空的:https://blog.csdn.net/qq_37159446/article/details/122233467 2、如遇到构

    2024年02月04日
    浏览(27)
  • 不可错过的Telegram神器:十个实用Telegram机器人介绍

    Telegram机器人是基于Telegram平台上的自动化程序,通过Telegram Bot API来与用户交互,执行各种任务,大大拓宽了Telegram这个软件的功能。不只是可以进行简单的自动化任务如提醒服务、天气预报、个人助理,也可以完成复杂的商业行为,如客户服务、在线购物、内容管理系统等

    2024年03月25日
    浏览(45)
  • Telegram 聊天机器人中获取照片

    创建图片爬虫时,只从那些允许爬取的网站或平台获取图片。控制爬虫的请求频率,避免给目标网站服务器造成过大压力。使用延时和重试机制,以应对服务器响应限制或故障。合理安排数据存储,确保图片文件的组织和索引方式便于管理和检索。设计爬虫时考虑到网站结构

    2024年01月24日
    浏览(30)
  • Outlook无需API开发连接钉钉群机器人,实现新增会议日程自动发送群消息通知

    Outlook用户使用场景: 在企业中,会议和活动的顺利举行对于业务运转和团队协作至关重要。然而,计划的变动总是无法避免,这可能会导致其他人的计划受到影响,打乱原有的安排。为了解决这个问题,许多企业开始使用各种工具和技术来确保信息的及时传递和更新。其中

    2024年02月09日
    浏览(31)
  • telegram 机器人通过api向频道中发送信息(入门)

    给发消息@BotFather,“/start”。 BotFather会回复你一些指令列表。 发送指令“/newbot”,BotFather会提示你提供机器人名称。你发送一个机器人名称,BotFather会提示你提供一个机器人username,你发送你确定的机器人username,BotFather会回复你一堆消息,其中包含机器人token。 新建频道

    2024年02月14日
    浏览(30)
  • Telegram电报机器人客服关键词消息回复系统源码全开源

    摘要: Telegram电报机器人消息回复系统是一款基于thinkphp开发的TG电报机器人系统,支持回复等功能。telegram电报消息自动回复的源码,不是电报群发系统,系统支持多个添加机器人、支持回复、支持设置按钮回复、支持个人、群、频道等的消息处理,另外

    2024年02月13日
    浏览(37)
  • 使用飞书机器人发送消息与文件

    本文默认你已拥有一个机器人,如果没有请点击以下链接创建机器人 检查机器人权限 如果需要跨部门发送消息,检查是否开通跨部门权限 在发布版本时选择作用范围为所有员工 机器人发送消息需要获取以下权限: 通过手机号或邮箱获取用户 ID 查看、评论和下载云空间中所

    2024年04月10日
    浏览(41)
  • JavaDemo——使用机器人发送微信消息

    原理很简单,使用机器人模拟按键,使用剪贴板把内容copy进去发送; 需要先在pc登录微信客户端,然后用机器人按键,使用ctrl+alt+w快捷键打开微信,使用ctrl+f打开搜索,黏贴好友名称进行搜索,然后黏贴要发送的消息发送即可; 此外还需要注意耗时操作,需要等待操作完成

    2024年02月13日
    浏览(35)
  • 使用飞书自定义机器人发送消息

    使用飞书机器人可以很方便的获取自动化任务的反馈: 在群里创建一个机器人: 记住下面的 webhook地址,这个是标识机器人的唯一ID,比如它的webhook地址是: \\\"https://open.feishu.cn/open-apis/bot/v2/hook/xxxxxxx-ab01-4427-xxxxx-xxxxx\\\" 然后创建程序: 发送之后的效果如下:

    2024年02月03日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包