Files
game-driver/internal/middleware/relay.go
2024-11-01 17:40:34 +08:00

20 lines
361 B
Go

package middleware
import (
"game-driver/internal/schema"
"game-driver/leaf"
"game-driver/pkg/relay"
)
// RelayMaster 继电器中间件
func RelayMaster(r *relay.Device) leaf.HandlerFunc {
return func(c *leaf.Context) {
pm := leaf.Value[*schema.PlayModal](c, PayloadJSONKey)
if r != nil && pm.Power {
r.On(1)
defer r.Off(1)
}
c.Next()
}
}