runner_manager

package
v1.7.11 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 22, 2026 License: MIT Imports: 27 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CamService added in v1.7.0

type CamService interface {
	For(address string, cameraType model.CameraType) (camera.Cam, error)
}

type LiveStateNotifier added in v1.7.9

type LiveStateNotifier func(streamID uint, live bool)

LiveStateNotifier is called whenever a stream transitions into or out of the live state, so that other parts of the application (e.g. the websocket hub) can react to it.

type Manager

type Manager struct {
	protobuf.UnimplementedRunnerManagerServiceServer
	// contains filtered or unexported fields
}

Manager manages communication with runners and handles job distribution

func New

func New(dao dao.DaoWrapper, opts ...Option) *Manager

New returns a new instance of Manager with the given Options

func (*Manager) EndStream added in v1.7.9

func (m *Manager) EndStream(ctx context.Context, streamID uint, discardVoD bool) error

EndStream cancels all runner jobs tracked for the given stream, e.g. when an admin manually stops a stream. It is a no-op if no runner jobs are tracked for the stream (e.g. because it is running on a legacy worker instead).

func (*Manager) Notify

func (m *Manager) Notify(ctx context.Context, notification *protobuf.Notification) (*protobuf.NotificationResponse, error)

func (*Manager) ReapStaleStreams added in v1.7.9

func (m *Manager) ReapStaleStreams()

ReapStaleStreams finds streams that are stuck in live state and cleans them up. This handles the case where the runner crashes and can never deliver StreamEndNotification.

func (*Manager) Register

func (*Manager) RequestSelfStream added in v1.5.7

func (m *Manager) RequestSelfStream(ctx context.Context, stream model.Stream) error

func (*Manager) Run

func (m *Manager) Run() error

func (*Manager) TriggerDueStreams

func (m *Manager) TriggerDueStreams() error

func (*Manager) UpdateLights added in v1.7.5

func (m *Manager) UpdateLights()

type Option

type Option func(m *Manager)

Option is a func that applies configuration to the Manager

func WithCamService added in v1.7.0

func WithCamService(camService CamService) Option

func WithListenAddr

func WithListenAddr(addr string) Option

WithListenAddr sets the address the Manager listens on for gRPC connections from the Runner. If not applied, the default is used (:50056)

func WithLiveStateNotifier added in v1.7.9

func WithLiveStateNotifier(notifier LiveStateNotifier) Option

WithLiveStateNotifier registers a callback invoked when a stream starts or stops being live, e.g. to notify viewers via websocket.

func WithMassStorage added in v1.5.7

func WithMassStorage(path string) Option

func WithSubtitleClient added in v1.5.7

func WithSubtitleClient(client pb.SubtitleGeneratorClient, auth string) Option

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL