ingress

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Aug 6, 2022 License: MIT Imports: 8 Imported by: 4

Documentation

Index

Constants

View Source
const (
	RequestExpiration = time.Second * 2
)

Variables

This section is empty.

Functions

This section is empty.

Types

type RPC

type RPC interface {
	RPCClient
	RPCServer
}

func NewRedisRPC

func NewRedisRPC(nodeID livekit.NodeID, rc *redis.Client) RPC

type RPCClient

type RPCClient interface {
	// GetUpdateChannel returns a subscription for ingress info updates
	GetUpdateChannel(ctx context.Context) (utils.PubSub, error)
	// SendRequest sends a request to all available instances
	SendRequest(ctx context.Context, req proto.Message) (*livekit.IngressInfo, error)
}

RPCClient is used by LiveKit Server

type RPCServer

type RPCServer interface {
	// IngressSubscription subscribes to requests for a specific ingress ID
	IngressSubscription(ctx context.Context, ingressID string) (utils.PubSub, error)
	// SendResponse returns an RPC response
	SendResponse(ctx context.Context, request proto.Message, info *livekit.IngressInfo, err error) error
	// SendUpdate sends an ingress info update
	SendUpdate(ctx context.Context, info *livekit.IngressInfo) error
	// GetEntityChannel returns a subscription for entity requests
	GetEntityChannel(ctx context.Context) (utils.PubSub, error)
}

RPCServer is used by Ingress

type RedisRPC

type RedisRPC struct {
	// contains filtered or unexported fields
}

func (*RedisRPC) GetEntityChannel

func (r *RedisRPC) GetEntityChannel(ctx context.Context) (utils.PubSub, error)

func (*RedisRPC) GetUpdateChannel

func (r *RedisRPC) GetUpdateChannel(ctx context.Context) (utils.PubSub, error)

func (*RedisRPC) IngressSubscription

func (r *RedisRPC) IngressSubscription(ctx context.Context, ingressID string) (utils.PubSub, error)

func (*RedisRPC) SendRequest

func (r *RedisRPC) SendRequest(ctx context.Context, request proto.Message) (*livekit.IngressInfo, error)

func (*RedisRPC) SendResponse

func (r *RedisRPC) SendResponse(ctx context.Context, request proto.Message, info *livekit.IngressInfo, err error) error

func (*RedisRPC) SendUpdate

func (r *RedisRPC) SendUpdate(ctx context.Context, info *livekit.IngressInfo) error

Jump to

Keyboard shortcuts

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