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

大学生开发 telegram-bot 求点子

  •  
  •   HiterPang · 255 天前 via Android · 1269 次点击
    这是一个创建于 255 天前的主题,其中的信息可能已经有所发展或是发生改变。
    楼主是国内某大学的计算机专业学生,最近闲来无事,想要开发一个日程提醒和课程提醒的 telegram 机器人。

    我的初步构想是这样的:

    日程提醒:我可以在聊天界面新建一个日程,包括名称,日期,能够设置定时提醒,能够在我需要时列出日程列表等等

    课程提醒:我可以把课程导出为 ics 文件,机器人可以访问解析,每天提醒我今天有什么课,我也可以访问这周的课等等。

    有自己的服务器,准备放在阿里云 hk 机子上,似乎弄个数据库让脚本能访问读写就可以?本人是个菜鸡,刚有这个想法,目前还在网络上搜集各种资料,所以发在这也希望大家能给点绝妙的点子或者思路之类的。
    8 条回复    2024-04-18 11:32:38 +08:00
    CEBBCAT
        1
    CEBBCAT  
       255 天前   ❤️ 1
    建议解耦为 [日程临近 -> Telegram 通知] 的模式。
    可以订阅云 ics 链接,例如谷歌日历可以分享出的那种链接。

    这样通用型好一点(不然真的被系统自带相册吊打,哈哈)
    ---
    贴一个我之前写的 Python 生成日历的脚本,你看看有没有参考价值。
    https://github.com/Zhang-Siyang/fangZhengClassTable2iCal/blob/master/main.py

    ---
    另外,也许你可以考虑去结合那种热敏打印机,比如说我按一个按钮就打印今天的行程,然后一揪成一张清单,我想也会蛮有意思。

    主要是你这个 idea 可太“以学习为目的”了。
    ---
    另外赠送一条自己的经验,仅供参考:有的时候,尽管目标是没有意义的,但是过程是有意义的,以及,不要挑挑拣拣总是切换目标,尽管我自己好像没做到,so ,祝你好运❤️
    zfyStars
        2
    zfyStars  
       254 天前
    练练手可以 但是如果你想有人使用 估计很难
    不是说点子不行 你面向的用户太小了
    Tink
        3
    Tink  
       254 天前
    逻辑上不复杂,而且 tg 的 bot api 也挺给力
    codehz
        4
    codehz  
       254 天前
    最近我发现把 bot 丢 cloudflare worker 上跑是一个好主意😜(前提是你会写 js/ts )
    尤其是考虑到免费+免维护这一点(不过我自己是用了 worker paid 套餐了)
    不过架构方面和单体程序有点差异,单纯作为一个建议吧
    日程提醒可以用 scheduled 来做,每分钟检查一次即可
    tg 请求响应的话用 grammy 的 webhook
    数据库,用 D1
    另外一个思路:TG 目前开放了小程序的接口(实际就单纯网页套壳,但提供了无缝用户认证的能力),可以用 cloudflare page 搭建一个网页管理界面,后端对接到 worker 上(推荐用内置的 worker ),这样在 tg 对话式 ui 不够好用的时候可以用 web 来补充
    HiterPang
        5
    HiterPang  
    OP
       254 天前 via Android
    @CEBBCAT ok ,感谢大佬的用心回复,其实我的打算就是感受这样一个过程,大学生的“穷折腾”,哈哈
    HiterPang
        6
    HiterPang  
    OP
       254 天前 via Android
    @zfyStars 就是准备自己用,顺便锻炼一下能力
    HiterPang
        7
    HiterPang  
    OP
       254 天前 via Android
    @Tink 对,我看各方面的库也很全
    HiterPang
        8
    HiterPang  
    OP
       254 天前 via Android
    @codehz 我去研究研究
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1167 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 18:21 · PVG 02:21 · LAX 10:21 · JFK 13:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.