|
|
|
@ -949,7 +949,8 @@ func (q *Queue) HandleRadioRequest(writer http.ResponseWriter, request *http.Req
|
|
|
|
|
|
|
|
|
|
wgClient.Add(1)
|
|
|
|
|
|
|
|
|
|
hashSum := sha256.Sum256([]byte(fmt.Sprintf("%s-%s-%s-%s", request.RequestURI, request.RemoteAddr, request.Proto, request.Header.Get("user-agent"))))
|
|
|
|
|
startStamp := time.Now().Unix()
|
|
|
|
|
hashSum := sha256.Sum256([]byte(fmt.Sprintf("%s-%s-%s-%s-%d", request.RequestURI, request.RemoteAddr, request.Proto, request.Header.Get("user-agent"), startStamp)))
|
|
|
|
|
listenerIdentifier := hex.EncodeToString(hashSum[16:])
|
|
|
|
|
|
|
|
|
|
writer.Header().Set("x-listener-identifier", listenerIdentifier)
|
|
|
|
@ -960,6 +961,7 @@ func (q *Queue) HandleRadioRequest(writer http.ResponseWriter, request *http.Req
|
|
|
|
|
Mount: mount.Mount,
|
|
|
|
|
Path: uriPath,
|
|
|
|
|
Headers: headers,
|
|
|
|
|
Start: startStamp,
|
|
|
|
|
},
|
|
|
|
|
Start: func(packets []packetizer.Packet) error {
|
|
|
|
|
log.Printf("adding %s client to stream %s (%s, %s, agent \"%s\", buffer %.2f seconds)\n", listenerIdentifier, mount.Mount, request.RemoteAddr, request.Proto, request.Header.Get("user-agent"), float64(sampleBufferLimit)/float64(mount.SampleRate))
|
|
|
|
|