tg模式和定时模式不再冲突
This commit is contained in:
parent
62d0e1c1f1
commit
326585bcdb
83
main.go
83
main.go
|
@ -35,7 +35,9 @@ func init() {
|
||||||
log.SetOutput(io.MultiWriter(w, os.Stdout))
|
log.SetOutput(io.MultiWriter(w, os.Stdout))
|
||||||
log.SetFormatter(logFormatter)
|
log.SetFormatter(logFormatter)
|
||||||
level, err := log.ParseLevel(config.LogLevel)
|
level, err := log.ParseLevel(config.LogLevel)
|
||||||
|
if err != nil {
|
||||||
|
log.SetLevel(log.DebugLevel)
|
||||||
|
}
|
||||||
log.SetLevel(level)
|
log.SetLevel(level)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -56,7 +58,7 @@ var (
|
||||||
func init() {
|
func init() {
|
||||||
_, err := os.Stat(`./config/`)
|
_, err := os.Stat(`./config/`)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
os.Mkdir("./config/", 0666)
|
os.Mkdir("./config/", 0666) //nolint:errcheck
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -76,43 +78,64 @@ func main() {
|
||||||
log.Infoln(fmt.Sprintf("将等待%d秒后启动程序", config.StartWait))
|
log.Infoln(fmt.Sprintf("将等待%d秒后启动程序", config.StartWait))
|
||||||
time.Sleep(time.Second * time.Duration(config.StartWait))
|
time.Sleep(time.Second * time.Duration(config.StartWait))
|
||||||
}
|
}
|
||||||
switch {
|
|
||||||
case config.Cron != "":
|
if config.Cron != "" {
|
||||||
log.Infoln("已采用定时执行模式")
|
go func() {
|
||||||
c := cron.New()
|
|
||||||
_, err := c.AddFunc(config.Cron, func() {
|
|
||||||
defer func() {
|
defer func() {
|
||||||
i := recover()
|
err := recover()
|
||||||
if i != nil {
|
if err != nil {
|
||||||
log.Errorln(i)
|
log.Errorln("定时任务执行出现问题")
|
||||||
log.Errorln("执行定时任务出现异常")
|
log.Errorln(err)
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
do()
|
log.Infoln("已采用定时执行模式")
|
||||||
})
|
c := cron.New()
|
||||||
if err != nil {
|
_, err := c.AddFunc(config.Cron, func() {
|
||||||
log.Errorln(err.Error())
|
defer func() {
|
||||||
return
|
i := recover()
|
||||||
}
|
if i != nil {
|
||||||
c.Start()
|
log.Errorln(i)
|
||||||
select {}
|
log.Errorln("执行定时任务出现异常")
|
||||||
case config.TG.Enable:
|
}
|
||||||
log.Infoln("已采用tg交互模式")
|
}()
|
||||||
telegram := lib.Telegram{
|
do()
|
||||||
Token: config.TG.Token,
|
})
|
||||||
ChatId: config.TG.ChatID,
|
if err != nil {
|
||||||
Proxy: config.TG.Proxy,
|
log.Errorln(err.Error())
|
||||||
}
|
return
|
||||||
telegram.Init()
|
}
|
||||||
select {}
|
c.Start()
|
||||||
default:
|
select {}
|
||||||
|
}()
|
||||||
|
}
|
||||||
|
|
||||||
|
if config.TG.Enable {
|
||||||
|
go func() {
|
||||||
|
defer func() {
|
||||||
|
err := recover()
|
||||||
|
if err != nil {
|
||||||
|
log.Errorln("TG模式执行出现问题")
|
||||||
|
log.Errorln(err)
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
log.Infoln("已采用tg交互模式")
|
||||||
|
telegram := lib.Telegram{
|
||||||
|
Token: config.TG.Token,
|
||||||
|
ChatId: config.TG.ChatID,
|
||||||
|
Proxy: config.TG.Proxy,
|
||||||
|
}
|
||||||
|
telegram.Init()
|
||||||
|
select {}
|
||||||
|
}()
|
||||||
|
}
|
||||||
|
|
||||||
|
if !config.TG.Enable && config.Cron == "" {
|
||||||
log.Infoln("已采用普通学习模式")
|
log.Infoln("已采用普通学习模式")
|
||||||
do()
|
do()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func do() {
|
func do() {
|
||||||
|
|
||||||
defer func() {
|
defer func() {
|
||||||
err := recover()
|
err := recover()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
Loading…
Reference in New Issue