87 lines
1.4 KiB
Go
87 lines
1.4 KiB
Go
/**
|
|
* @Company: 云南奇讯科技有限公司
|
|
* @Author: yxf
|
|
* @Description:
|
|
* @Date: 2023/7/31 11:12
|
|
*/
|
|
|
|
package consts
|
|
|
|
import "time"
|
|
|
|
type SendMsgMethod int
|
|
|
|
// MsgDelayLevel 参数1-18 对应时间: 1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h
|
|
type MsgDelayLevel int
|
|
|
|
const (
|
|
MsgIdLength = 32
|
|
SendMsgPublish = 1
|
|
SendMsgPublishAsync = 2
|
|
SendMsgDelay = 3
|
|
)
|
|
|
|
const (
|
|
MsgDelay1s MsgDelayLevel = iota + 1
|
|
MsgDelay5s
|
|
MsgDelay10s
|
|
MsgDelay30s
|
|
MsgDelay1m
|
|
MsgDelay2m
|
|
MsgDelay3m
|
|
MsgDelay4m
|
|
MsgDelay5m
|
|
MsgDelay6m
|
|
MsgDelay7m
|
|
MsgDelay8m
|
|
MsgDelay9m
|
|
MsgDelay10m
|
|
MsgDelay20m
|
|
MsgDelay30m
|
|
MsgDelay1h
|
|
MsgDelay2h
|
|
)
|
|
|
|
func (m MsgDelayLevel) Value() time.Duration {
|
|
delay := 1
|
|
switch m {
|
|
case MsgDelay1s:
|
|
delay = 1
|
|
case MsgDelay5s:
|
|
delay = 5
|
|
case MsgDelay10s:
|
|
delay = 10
|
|
case MsgDelay30s:
|
|
delay = 30
|
|
case MsgDelay1m:
|
|
delay = 60
|
|
case MsgDelay2m:
|
|
delay = 60 * 2
|
|
case MsgDelay3m:
|
|
delay = 60 * 3
|
|
case MsgDelay4m:
|
|
delay = 60 * 4
|
|
case MsgDelay5m:
|
|
delay = 60 * 5
|
|
case MsgDelay6m:
|
|
delay = 60 * 6
|
|
case MsgDelay7m:
|
|
delay = 60 * 7
|
|
case MsgDelay8m:
|
|
delay = 60 * 8
|
|
case MsgDelay9m:
|
|
delay = 60 * 9
|
|
case MsgDelay10m:
|
|
delay = 60 * 10
|
|
case MsgDelay20m:
|
|
delay = 60 * 20
|
|
case MsgDelay30m:
|
|
delay = 60 * 30
|
|
case MsgDelay1h:
|
|
delay = 60 * 60 * 1
|
|
case MsgDelay2h:
|
|
delay = 60 * 60 * 2
|
|
}
|
|
return time.Duration(delay) * time.Second
|
|
}
|