24 lines
681 B
Go
24 lines
681 B
Go
package server
|
|
|
|
import (
|
|
"net/http"
|
|
|
|
"github.com/gorilla/websocket"
|
|
"github.com/rs/zerolog/hlog"
|
|
)
|
|
|
|
// TODO: Decide where to put data stream handlers
|
|
|
|
var websocketUpgrader = websocket.Upgrader{}
|
|
|
|
// Entrypoint for a new stream will be in here at least
|
|
func linstromEventStream(w http.ResponseWriter, r *http.Request) {
|
|
log := hlog.FromRequest(r)
|
|
conn, err := websocketUpgrader.Upgrade(w, r, nil)
|
|
if err != nil {
|
|
log.Warn().Err(err).Msg("Failed to upgrade connection to websocket")
|
|
}
|
|
defer conn.Close()
|
|
// TODO: Handle initial request for what events to receive
|
|
// TODO: Stream all requested events until connection closes (due to bad data from client or disconnect)
|
|
}
|