package apollostruct // 账号处罚结束实际生效时间配置,用于通知推送服务 /* 在账号处罚创建时,除了立即给用户推送一条封禁通知,还会写一条解禁通知,推送时间为处罚的结束时间 正常来说,账号处罚结束时间 = 账号处罚创建时间 + 触发时长 但由于具体场景存在的时延,在上述计算得到的账号处罚的结束时间,处罚可能还未结束 如主播推荐列表每1个小时推送一次,故它实际生效时间应该是结束时间顺延的下一个小时整点 动态推荐列表每5分钟推送一次,故它实际生效时间应该是结束时间顺延的下一个5分整点*/ /* 我们认为用户实际感知到的处罚结束应该在他收到通知的时候,所以解禁的通知时间需要根据具体场景延后一些 interval_map表示具体场景的定时任务每隔多少时间执行一次,单位为秒 比如对于主播推荐列表,时间间隔就是3600秒,解禁通知的时间戳需要补足至3600秒的倍数 */ /* default_interval表示推送“定时通知”的定时任务的时间间隔 如果这条封禁的场景没有定时推送的需求,则解禁通知的时间戳补足至default_interval的倍数即可 用以满足“用户实际感知到的处罚结束应该在他收到通知的时候” 需要注意,interval_map每个键值对的值必须是default_interval的倍数,否则推送通知会产生异常 */ type AcctPunishmentRealEndtimeCfg struct { IntervalMap map[string]int64 `json:"interval_map"` // 时间间隔map DefaultInterval int64 `json:"default_interval"` // 默认通知时间间隔 }