3分钟用Go搭建一个喝水提醒通知

简介: 3分钟用Go搭建一个喝水提醒通知

-- 有的时候工作起来经常忘记喝水。我们如何设定一个自己的喝水消息提醒呢?

-- 最近一直在搞自己的go框架。里面封装了定时任务调度。以及钉钉推送提醒。那么我们可以用这个东东来搞点事情了

-- 我们定时任务每半个小时执行一次。为了保证半夜不会收到喝水提醒。所以我们需要对推送的时间做出限制。只有在指定的时间段才推送消息。

下面看下具体的逻辑代码

定时任务主代码

package main

import (
    "fmt"
    "gin/cmd/heshui/job"
    "gin/common/env"
    "gin/common/function"
    "github.com/reugn/go-quartz/quartz"
)

func main() {
    env.Active().Value()
    sampleJobs2()
}

func sampleJobs2() {
    sched := quartz.NewStdScheduler()
    sched.Start()
    cronTrigger, err := quartz.NewCronTrigger("0 0/30 * * * *")
    //cronTrigger := quartz.NewRunOnceTrigger(time.Second * 1)

    //cronTrigger, err := quartz.NewCronTrigger("0 0/1 * * * *")
    if err != nil {
        fmt.Println(err)
        return
    }

    exitChan := make(chan bool, 1)

    cronJob := job.Xueqiu{"Cron job", exitChan}

    //for {

    start_time := function.ExeStart()
    sched.ScheduleJob(&cronJob, cronTrigger)

    for i := 0; i < 1; i++ {
        <-exitChan
    }

    function.PrintUseTime(start_time)

    sched.DeleteJob(cronJob.Key())

    //}

    sched.Stop()
}

具体逻辑代码

// Execute is called by a Scheduler when the Trigger associated with this job fires.
func (pj *Xueqiu) Execute() {
    currentHour := time.Now().Hour()

    allow := []int{
        8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
    }

    title := "主人,该喝水啦~~~"
    if php2go.InArray(currentHour, allow) == true {
        function.SendToDingDingAt(config.Config.DINGding.Heshuipush, title, title, "18163912092")
    }
}

这样就实现了每隔半个小时 就会有一个机器人来告诉你应该喝水了。。。。

在这里插入图片描述

相关文章
|
4天前
|
开发者 Python
使用Python实现自动化邮件通知:当长时程序运行结束时
本文介绍了如何使用Python实现自动化邮件通知功能,当长时间运行的程序完成后自动发送邮件通知。主要内容包括:项目背景、设置SMTP服务、编写邮件发送函数、连接SMTP服务器、发送邮件及异常处理等步骤。通过这些步骤,可以有效提高工作效率,避免长时间等待程序结果。
40 9
|
1月前
|
运维 监控 搜索推荐
阿里大鱼进行发短信业务---使用详细步骤-Java操作
这篇文章详细介绍了如何在Java中使用阿里大鱼服务来发送短信,包括开通短信服务、签名和模板管理,以及具体的Java开发步骤和代码示例。
81 0
阿里大鱼进行发短信业务---使用详细步骤-Java操作
|
3月前
|
运维 监控 程序员
Go 服务自动收集线上问题现场
Go 服务自动收集线上问题现场
|
4月前
|
小程序
【微信小程序】实战案例 -- 向订阅用户发送消息(范例:报名提醒)
【微信小程序】实战案例 -- 向订阅用户发送消息(范例:报名提醒)
268 0
|
6月前
|
监控
通过Lua脚本实现禁止员工上班玩游戏的软件的自动化任务管理
使用Lua脚本,企业可以自动化管理员工行为,防止上班时间玩游戏。Lua是一种轻量级脚本语言,适合编写监控任务。示例脚本展示了如何检测工作时间内员工是否玩游戏,并在发现时执行相应操作,如关闭游戏或发送警告。此外,另一脚本演示了如何将监控数据通过HTTP POST自动提交到网站,以实现有效的行为管理。这种解决方案灵活且可定制,有助于提升工作效率。
219 1
|
6月前
|
JavaScript Java 测试技术
基于Java的剧本杀预约系统的设计与实现(源码+lw+部署文档+讲解等)
基于Java的剧本杀预约系统的设计与实现(源码+lw+部署文档+讲解等)
66 0
|
6月前
|
API Python
做一个合格的男友,用python制作每天定时给女朋友发送邮箱问候
做一个合格的男友,用python制作每天定时给女朋友发送邮箱问候
|
6月前
|
人工智能 搜索推荐 算法
使用Python自动发邮件提醒你周末吃啥
在快节奏的现代生活中,周末往往是人们放松身心、享受美食的宝贵时光。然而,面对琳琅满目的餐饮选择,很多人常常陷入“吃什么”的纠结中。为了解决这一问题,我们可以利用Python编写一个自动化脚本,每周自动发送邮件提醒我们周末的餐饮选择
51 0
Go中两个Nil可能不相等吗,面试官说回家等通知
Go中两个Nil可能不相等吗,面试官说回家等通知
|
6月前
|
JSON 机器人 API
50行代码,编写QQ 聊天机器人,每天一句知心话自动发!
50行代码,编写QQ 聊天机器人,每天一句知心话自动发!
101 0