Documentation
¶
Index ¶
- Constants
- Variables
- func BuildIngressToken(apiKey, secret, roomName, participantIdentity, participantName string) (string, error)
- type RPC
- type RPCClient
- type RPCServer
- type RedisRPC
- func (r *RedisRPC) GetEntityChannel(ctx context.Context) (utils.PubSub, error)
- func (r *RedisRPC) GetUpdateChannel(ctx context.Context) (utils.PubSub, error)
- func (r *RedisRPC) IngressSubscription(ctx context.Context, ingressID string) (utils.PubSub, error)
- func (r *RedisRPC) SendGetIngressInfoRequest(ctx context.Context, req *livekit.GetIngressInfoRequest) (*livekit.GetIngressInfoResponse, error)
- func (r *RedisRPC) SendGetIngressInfoResponse(ctx context.Context, req *livekit.GetIngressInfoRequest, ...) error
- func (r *RedisRPC) SendRequest(ctx context.Context, req *livekit.IngressRequest) (*livekit.IngressInfo, error)
- func (r *RedisRPC) SendResponse(ctx context.Context, req *livekit.IngressRequest, info *livekit.IngressInfo, ...) error
- func (r *RedisRPC) SendUpdate(ctx context.Context, info *livekit.IngressInfo) error
Constants ¶
View Source
const (
RequestExpiration = time.Second * 2
)
Variables ¶
View Source
var (
ErrIngressOutOfDate = errors.New("trying to ovewrite an ingress with an older version")
)
Functions ¶
func BuildIngressToken ¶ added in v1.0.2
Types ¶
type RPCClient ¶
type RPCClient interface {
// GetUpdateChannel returns a subscription for ingress info updates
GetUpdateChannel(ctx context.Context) (utils.PubSub, error)
// GetEntityChannel returns a subscription for entity requests
GetEntityChannel(ctx context.Context) (utils.PubSub, error)
// SendRequest sends a request to all available instances
SendRequest(ctx context.Context, req *livekit.IngressRequest) (*livekit.IngressInfo, error)
// SendResponse returns a GetIngressInfo response
SendGetIngressInfoResponse(ctx context.Context, req *livekit.GetIngressInfoRequest, resp *livekit.GetIngressInfoResponse, err error) 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 *livekit.IngressRequest, info *livekit.IngressInfo, err error) error
// SendUpdate sends an ingress info update
SendUpdate(ctx context.Context, info *livekit.IngressInfo) error
// SendGetIngressInfoRequest sends a request to all available instances
SendGetIngressInfoRequest(ctx context.Context, req *livekit.GetIngressInfoRequest) (*livekit.GetIngressInfoResponse, error)
}
RPCServer is used by Ingress
type RedisRPC ¶
type RedisRPC struct {
// contains filtered or unexported fields
}
func (*RedisRPC) GetEntityChannel ¶
func (*RedisRPC) GetUpdateChannel ¶
func (*RedisRPC) IngressSubscription ¶
func (*RedisRPC) SendGetIngressInfoRequest ¶ added in v1.0.2
func (r *RedisRPC) SendGetIngressInfoRequest(ctx context.Context, req *livekit.GetIngressInfoRequest) (*livekit.GetIngressInfoResponse, error)
func (*RedisRPC) SendGetIngressInfoResponse ¶ added in v1.0.2
func (r *RedisRPC) SendGetIngressInfoResponse(ctx context.Context, req *livekit.GetIngressInfoRequest, resp *livekit.GetIngressInfoResponse, err error) error
func (*RedisRPC) SendRequest ¶
func (r *RedisRPC) SendRequest(ctx context.Context, req *livekit.IngressRequest) (*livekit.IngressInfo, error)
func (*RedisRPC) SendResponse ¶
func (r *RedisRPC) SendResponse(ctx context.Context, req *livekit.IngressRequest, info *livekit.IngressInfo, err error) error
func (*RedisRPC) SendUpdate ¶
Click to show internal directories.
Click to hide internal directories.