@ZeldaNo1 不管什么实现路径,第一步都要问的是,这个比赛日程数据从哪里来?
@icarus22 数据好说,是赛季初就会公开的球队赛程。我可以手动根据需要整理
@ZeldaNo1 那还好,我没了解过kook,只能说说大体思路,希望能帮到你
最简单的情形是机器人只负责发送消息,状态检查、响应指令这些都不用机器人去做,那应该只需要用python的schedule库去调发消息的API就可以,API文档在 https://developer.kookapp.cn/doc/http/message#%E5%8F%91%E9%80%81%E9%A2%91%E9%81%93%E8%81%8A%E5%A4%A9%E6%B6%88%E6%81%AF
还有一个比较偏门的方法,需要写js相关。大概是根据模板生成有cron trigger的cloudflare workers,好处是省去找地方挂bot的麻烦,坏处是比较复杂,一旦赛程横跨两个及以上月份,需要月月生成或者做另外的管理逻辑
@icarus22 月月生成倒没什么关系。。感觉挂bot对我来说更复杂,岂不是要弄云服务器啥的?
@ZeldaNo1 是的,或者家里有24小时开着的电脑/开发板/nas也可以折腾一下看看能不能挂着
除此之外还可会议看看云函数这类serverless服务,这个就类似前面说的“cron trigger的cloudflare workers”的方案了
@icarus22 一个月的比赛也就十几场,只需要机器人发十几次消息就够。这样也需要月月生成吗?
@ZeldaNo1 那个方案要用到crontab,一般来说crontab是一个最大支持到月的定时任务表达式。
因此,那个定时发送的消息格式会是
* * * * * <赛程xxx>
五个星号代表不同的时间单位,分别是:
分钟:从0到59
小时:从0到23
日:从1到31
月:从1到12
星期几:从0到7(0和7都表示星期日)
所以,最大支持到月,下一个月一开始,就要更新这个月的赛程转换成的crontab。
这个是我的脑洞 感觉没什么人会这么些
@icarus22 非常感谢耐心的指导,综合来看,目前我还是手动发赛程最省心了。(毕竟只是个人不多的佛系陪伴型社区)。。未来可以考虑方案一,走云服务器,感觉也不是完全不行!
ai给的思路看上去像那么回事儿:
要创建一个部署在Kook频道的体育比赛日程机器人,你需要具备一些基本的编程技能,以及对Kook平台的理解。虽然你没有编程基础,但是有一些开源的框架和工具可以帮助你实现这个目标。
首先,你需要找到一个可靠的比赛日程API,这个API可以提供你所需要的比赛信息,例如比赛日期和时间,对阵队伍等。你可以通过网络搜索找到这样的API,并且阅读其文档以理解如何使用它。
其次,你需要一个可以定时发送消息的工具。这可能是一个计划任务,或者是集成在某些编程语言中的一个特性。例如,Python有一个叫做`schedule`的库,它可以让你编写定时任务。
然后,你需要编写一个程序,这个程序可以从API获取比赛信息,然后在指定的时间发送消息。你可能需要使用一些编程语言,例如Python或者JavaScript,来编写这个程序。
最后,你需要将这个程序部署在Kook频道上。这通常涉及到将你的程序打包成一个服务,然后把这个服务部署在Kook服务器上。具体的部署步骤可能会依赖于Kook提供的具体服务。
以上就是一个大致的实现路径,希望对你有所帮助。虽然这个过程看起来有些复杂,但是只要你愿意花时间去学习和尝试,我相信你一定可以做到的。祝你好运!