V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xinyana
V2EX  ›  Telegram

TG 酱 server 酱的 telegram 简版

  •  
  •   xinyana · 2021-02-05 00:59:18 +08:00 · 6072 次点击
    这是一个创建于 1363 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://dianbao.vercel.app/

    TG 酱 一个 telegram 提醒机器人,做的极其简约,极其稳定

    server 酱的 telegram 简版

    搭建在 vercel,服务稳定,无依赖,可长期使用

    使用方法:

    其他特点

    • 稳定,vercel 不倒,服务常在
    • 稳定,几十行代码,简约
    • 安全,无数据库,无历史记录
    42 条回复    2022-03-17 01:03:23 +08:00
    AKAUP
        1
    AKAUP  
       2021-02-05 01:41:50 +08:00 via Android
    不错不错,还挺稳定的,有想法开源吗
    ericFork
        2
    ericFork  
       2021-02-05 05:41:08 +08:00
    /mytoken 无返回
    TabGre
        3
    TabGre  
       2021-02-05 06:42:50 +08:00 via iPhone
    /mytoken 无返回
    h503mc
        4
    h503mc  
       2021-02-05 06:48:04 +08:00 via Android
    /mytoken 无返回
    ferock
        5
    ferock  
       2021-02-05 07:32:59 +08:00
    @AKAUP #1
    曾经参考过一个非常简陋的代码:
    https://github.com/Fndroid/tg_push_bot


    可以自己根据这个代码写一个,的确很简单。
    lmoon
        6
    lmoon  
       2021-02-05 08:42:35 +08:00 via Android   ❤️ 7
    tg bot 本来就可以 get post curl 发消息,都能给这发了我为啥不用自己的 bot
    alexkkaa
        7
    alexkkaa  
       2021-02-05 09:29:11 +08:00 via Android   ❤️ 1
    tg 自己一个 post 就行了,要你这个何用
    MxxIsBest
        8
    MxxIsBest  
       2021-02-05 09:37:37 +08:00
    {"code":400,"msg":"Bad Request: chat not found"}
    xinyana
        9
    xinyana  
    OP
       2021-02-05 09:38:40 +08:00
    @lmoon
    @alexkkaa
    你这俩人真有意思,用你自己的去啊
    ferock
        10
    ferock  
       2021-02-05 09:39:57 +08:00
    自己搭和用别人的区别就是
    差一个境外服务器。。。
    xinyana
        11
    xinyana  
    OP
       2021-02-05 09:43:14 +08:00
    @ericFork
    @TabGre
    @h503mc
    webhook 在做实验
    GeekQu
        12
    GeekQu  
       2021-02-05 10:06:41 +08:00 via iPhone
    我 jio 得也可以用 IFTTT 的 webhook 配合 Telegram
    lmoon
        13
    lmoon  
       2021-02-05 10:09:32 +08:00   ❤️ 1
    lmoon
        14
    lmoon  
       2021-02-05 10:09:59 +08:00
    这哪里需要服务器了。。
    xinyana
        15
    xinyana  
    OP
       2021-02-05 10:14:18 +08:00
    @lmoon 哥们,你这种高手,还是出门右转,用自己的吧
    lmoon
        16
    lmoon  
       2021-02-05 10:18:05 +08:00   ❤️ 1
    @xinyana 您不准别人评论确实挺令人迷惑的,怎么,我发出来影响您记录数据赚大钱了?那我给你说声抱歉哦。
    ferock
        17
    ferock  
       2021-02-05 10:21:31 +08:00
    @lmoon #13

    api 接口直接 curl 当然没问题。。。
    关键是,不是谁都能访问 https://api.telegram.org/
    lmoon
        18
    lmoon  
       2021-02-05 10:24:32 +08:00
    @ferock 同样 vercel 反代只需要两行代码哦,我就是这么干的,cf workers 也可以用来反代,比不知道来源的不好用多了,自主可控哦
    xinyana
        19
    xinyana  
    OP
       2021-02-05 10:32:45 +08:00
    @lmoon
    你反代你骄傲是吗?
    vercel 是珍贵免费资源,明令禁止反代
    总有些蛀虫,可悲
    有多少免费资源,因为这些蛀虫,将国人排斥在外
    ferock
        20
    ferock  
       2021-02-05 10:46:08 +08:00
    @lmoon #18

    这样方案就复杂了,包括获取如何 chat_id,并且记录 chat_id,或者如果还有其他简单的交互。
    所以需要一个程序去做中间逻辑。

    就好像,你直接 curl 任何第三方 api (微信,支付宝,请求源白名单里)都可以完成 api 的功能,但写程序的为什么还要中间包一层?如果每次都只是一句 curl 那能解决问题,那就真的太好了。
    lmoon
        21
    lmoon  
       2021-02-05 10:46:35 +08:00
    @xinyana 我仔细查阅了 terms of services 并没有发现您说的内容呢,rewrite 在官方例子里啊,请给出你的来源哦
    ferock
        22
    ferock  
       2021-02-05 10:48:41 +08:00
    @lmoon #18

    如果在意的只是自主可控,就像我在 #5 贴的 git,自己写搭建就行了。
    和你说的两行 curl 反代没本质区别,只是殊途同归罢了
    lmoon
        23
    lmoon  
       2021-02-05 10:52:53 +08:00
    @ferock 不需要啊,请求里不是带着 chat_id 吗,当然了只适合自己申请 bot 自己用,但是 tg 申请 bot 并无限制啊,微信出来 server 酱只是因为微信没有 bot 、没有 api 催生的畸形产物罢了, 再说推送机器人根本用不着服务器,接收才需要吧。这种东西也就方便了一丢丢吧,我个人觉得没有使用必要,至于用不用全看个人喜好。
    xinyana
        24
    xinyana  
    OP
       2021-02-05 10:56:35 +08:00
    @lmoon
    滥用还这么骄傲的,你不是第一个,也不会是最后一个
    希望这个链接能让你改邪归正
    https://vercel.com/docs/platform/fair-use-policy
    ferock
        25
    ferock  
       2021-02-05 11:04:02 +08:00
    @lmoon #23

    为了你说的我特地又去走了一次 tg bot 的流程
    1. @BotFather 输入 /newbot,申请新的机器人
    2. 输入机器人名
    3. 输入机器人 username
    4. 返回给你一个 http api token,以及一个 https://t.me/<bot_username> 的 url
    5. 点击 bot url 进入 bot 对话框,/start

    “请求里不是带着 chat_id 吗”,这句话,加上#13
    https://api.telegram.org/botXXX:XXX/sendMessage?chat_id=-xxx&text=xxx
    加上 #18
    “反代只需要两行代码”


    以上这些,显然是无法实现获取 chat_id 并最后通过 curl 推送 message 的。
    lmoon
        26
    lmoon  
       2021-02-05 11:15:07 +08:00
    @ferock chat_id 就是你自己的用户 id 啊,除了 https://api.telegram.org/botXXX:XXX/getUpdates 能看以外随便找个 get info bot 也能看。你也可以获取群组 id 发到群里。我刚理解错你的获取 id 了
    ferock
        27
    ferock  
       2021-02-05 12:05:28 +08:00
    @lmoon #26

    chat_id 不是用户 ID,我自己理解为回话 ID
    官方的 doc 解释:
    Unique identifier for the target chat or username of the target channel (in the format @channelusername)
    我删除 bot 对话,重新 /star 以后,每次获取到新的 chat_id 是不一样的
    lmoon
        28
    lmoon  
       2021-02-05 12:12:15 +08:00
    @ferock 就是用户或者群组频道 id,每个都有一个唯一 id,你找个 get info bot,看自己的 id 就知道了,你说的是用户名吧
    adnoh
        29
    adnoh  
       2021-02-05 12:19:24 +08:00 via Android
    @ferock #25
    这个流程是可以的,chat_id 就是用户 id,这个字段也可填用户名,我申请的三个机器人都是同一个数字推送给自己消息的
    adnoh
        30
    adnoh  
       2021-02-05 12:23:22 +08:00 via Android
    欢迎使用无卵用的机器人 https://t.me/yesno4bot
    ferock
        31
    ferock  
       2021-02-05 12:26:03 +08:00 via iPhone
    @lmoon #28
    那麻烦告知一下,哪个方式可以“get info bot”?我看看如何脱离服务器去使用
    adnoh
        32
    adnoh  
       2021-02-05 12:37:54 +08:00 via Android
    @ferock 我那机器人可以获得,我当时用这个 https://t.me/getidsbot 获取的,途径很多
    lmoon
        33
    lmoon  
       2021-02-05 12:51:21 +08:00
    @ferock 你给你的 bot 发消息然后去 getupdates 看 chat > id 就是你的用户或者群组 id 啊,机器人 getinfo 也是这么看的
    ferock
        34
    ferock  
       2021-02-05 13:03:40 +08:00
    @adnoh #32

    通过这个机器人,是可以获取到 userId
    userId 可以用作 chat_id,我刚刚测试可行。


    至于 getupdates,本机无法实现,需要一个 tg 可以回调的 url 。
    HTSdTt3WygdgQQGe
        35
    HTSdTt3WygdgQQGe  
       2021-02-06 09:35:39 +08:00
    @ferock 用 userID 可以,用 username 也可以
    ferock
        36
    ferock  
       2021-02-06 10:01:37 +08:00 via iPhone
    @q409640976 #35

    那看来的确,只是发消息,并不需要服务器
    HTSdTt3WygdgQQGe
        37
    HTSdTt3WygdgQQGe  
       2021-02-06 14:27:56 +08:00 via Android
    @ferock 直接发消息,国外环境可以的,同时直接用 bot token 发消息,安全隐患比较大
    ferock
        38
    ferock  
       2021-02-06 22:10:55 +08:00 via iPhone
    @q409640976 #37

    通过服务器调用,格式这是这样的
    meselson
        39
    meselson  
       2021-02-26 10:42:22 +08:00
    开源吗?
    leiletter
        40
    leiletter  
       2021-03-13 13:28:08 +08:00
    谢谢大佬
    vincentxue
        41
    vincentxue  
       2021-09-18 12:31:29 +08:00
    用了很久了,请问楼主能不能支持一下 POST,有时候用 GET 传各种格式的文字真的比较麻烦,比如在 Shell 中。
    xinyana
        42
    xinyana  
    OP
       2022-03-17 01:03:23 +08:00 via Android
    稳定运行 400 多天了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5754 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 134ms · UTC 01:35 · PVG 09:35 · LAX 18:35 · JFK 21:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.