Priority/backend/priority.go
2023-12-05 16:11:16 +01:00

64 lines
1.3 KiB
Go

package main
import (
"log"
"net/http"
"time"
"github.com/gin-gonic/gin"
)
/////////// Priority
func (w *Webapp) StartTimer(c *gin.Context) {
var msg Message
var err error
var timer time.Duration
err = c.ShouldBind(&msg)
if err != nil {
log.Printf("req error: %+v", err)
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
return
}
timer, err = time.ParseDuration(msg.Duration)
if err != nil {
log.Printf("req error: %+v", err)
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
return
}
w.Stream.Duration = timer
w.Stream.Start = true
log.Printf("start timer %s - received %s", w.Stream.Duration, msg.Duration)
c.JSON(http.StatusOK, w.Stream.Duration)
}
func (w *Webapp) GetPriority(c *gin.Context) {
log.Printf("send priority %s", w.Stream.StatusPriority)
c.JSON(http.StatusOK, w.Stream.StatusPriority)
}
func (w *Webapp) SetPriority(c *gin.Context) {
var msg Message
var err error
log.Printf("set priority %s", c.Request.Body)
err = c.ShouldBind(&msg)
if err != nil {
log.Printf("req error: %+v", err)
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
return
}
c.JSON(http.StatusOK, "OK")
log.Printf("msg %+v", msg)
w.Stream.StatusPriority = msg.Priority
w.Stream.SendPriority(msg.Priority)
}