Current broadcaster details admin api (#206)
* Add support for ending the inbound stream. Closes #191 * Add a simple success response to API requests * Store inbound broadcast details for admin purposes * Add /api/admin/broadcaster endpoint * Reset broadcaster on disconnect * Move controller to admin directory
This commit is contained in:
38
controllers/admin/inboundBroadcasterDetails.go
Normal file
38
controllers/admin/inboundBroadcasterDetails.go
Normal file
@@ -0,0 +1,38 @@
|
||||
package admin
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"net/http"
|
||||
|
||||
"github.com/gabek/owncast/controllers"
|
||||
"github.com/gabek/owncast/core"
|
||||
"github.com/gabek/owncast/models"
|
||||
"github.com/gabek/owncast/router/middleware"
|
||||
)
|
||||
|
||||
// GetInboundBroadasterDetails gets the details of the inbound broadcaster
|
||||
func GetInboundBroadasterDetails(w http.ResponseWriter, r *http.Request) {
|
||||
middleware.EnableCors(&w)
|
||||
|
||||
broadcaster := core.GetBroadcaster()
|
||||
if broadcaster == nil {
|
||||
controllers.WriteSimpleResponse(w, false, "no broadcaster connected")
|
||||
return
|
||||
}
|
||||
|
||||
response := inboundBroadasterDetailsResponse{
|
||||
models.BaseAPIResponse{
|
||||
true,
|
||||
"",
|
||||
},
|
||||
broadcaster,
|
||||
}
|
||||
|
||||
w.Header().Set("Content-Type", "application/json")
|
||||
json.NewEncoder(w).Encode(response)
|
||||
}
|
||||
|
||||
type inboundBroadasterDetailsResponse struct {
|
||||
models.BaseAPIResponse
|
||||
Broadcaster *models.Broadcaster `json:"broadcaster"`
|
||||
}
|
||||
Reference in New Issue
Block a user