Files
mediadevices/examples/internal/signal/http.go
Lukas Herman b8b30bd7eb Initial commit
Resolves #1
2019-12-04 21:58:39 -08:00

32 lines
564 B
Go

package signal
import (
"flag"
"fmt"
"io/ioutil"
"net/http"
"strconv"
)
// HTTPSDPServer starts a HTTP Server that consumes SDPs
func HTTPSDPServer() chan string {
port := flag.Int("port", 8080, "http server port")
flag.Parse()
sdpChan := make(chan string)
http.HandleFunc("/sdp", func(w http.ResponseWriter, r *http.Request) {
body, _ := ioutil.ReadAll(r.Body)
fmt.Fprintf(w, "done")
sdpChan <- string(body)
})
go func() {
err := http.ListenAndServe(":"+strconv.Itoa(*port), nil)
if err != nil {
panic(err)
}
}()
return sdpChan
}