host.go 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. package host
  2. import (
  3. "errors"
  4. "fmt"
  5. "github.com/gin-gonic/gin"
  6. "github.com/gravitl/netmaker/logger"
  7. "github.com/gravitl/netmaker/turnserver/internal/auth"
  8. errpkg "github.com/gravitl/netmaker/turnserver/internal/errors"
  9. "github.com/gravitl/netmaker/turnserver/internal/models"
  10. "github.com/gravitl/netmaker/turnserver/internal/utils"
  11. )
  12. func Register(c *gin.Context) {
  13. req := models.HostRegister{}
  14. if err := c.ShouldBindJSON(&req); err != nil {
  15. utils.ReturnErrorResponse(c, errpkg.FormatError(err, errpkg.Internal))
  16. return
  17. }
  18. auth.RegisterNewHostWithTurn(req.HostID, req.HostPassHash)
  19. utils.ReturnSuccessResponse(c,
  20. fmt.Sprintf("registred host (%s) successfully", req.HostID), nil)
  21. }
  22. func Remove(c *gin.Context) {
  23. hostID, _ := c.GetQuery("host_id")
  24. if hostID == "" {
  25. logger.Log(0, "host id is required")
  26. utils.ReturnErrorResponse(c,
  27. errpkg.FormatError(errors.New("host id is required"), errpkg.BadRequest))
  28. return
  29. }
  30. utils.ReturnSuccessResponse(c,
  31. fmt.Sprintf("unregistred host (%s) successfully", hostID), nil)
  32. }