|

楼主 |
发表于 2020-4-6 20:51:39
|
显示全部楼层
- import datetime
- from apscheduler.triggers.date import DateTrigger
- from apscheduler.triggers.cron import CronTrigger
- from nonebot import on_command, scheduler, CommandSession, message, on_startup
- from apscheduler.jobstores.sqlalchemy import SQLAlchemyJobStore
- from config import database_call
- # sql:///D:\\date.db
- @on_startup
- async def scheduler_clock():
- call_me = SQLAlchemyJobStore(url=database_call)
- scheduler.add_jobstore(call_me, "call")
- @on_command('clock', aliases=('闹钟', '定个闹钟'), only_to_me=False)
- async def main_clock(session: CommandSession):
- time = session.get('time', prompt=r'请问您要定一个几点的闹钟?')
- # 制作一个“5分钟后”触发器
- delta = datetime.timedelta(minutes=float(time))
- trigger = DateTrigger(
- run_date=datetime.datetime.now() + delta
- )
- # 添加任务
- scheduler.add_job(
- func=session.send, # 要添加任务的函数,不要带参数
- trigger=trigger, # 触发器
- args=('您定的闹钟时间到了',), # 函数的参数列表,注意:只有一个值时,不能省略末尾的逗号
- misfire_grace_time=60,
- jobstore='call',
- )
- await session.send('已经为您订好了一个' + time + '分钟的闹钟')
复制代码
大佬看看,这是源码,我搞不太定了,淦 |
|