Livekitex.EgressServiceBehaviour behaviour (livekitex v0.1.34)

Behaviour for Livekitex.EgressService.

Summary

Callbacks

list_egress(egress_service, request)

@callback list_egress(
  egress_service :: Livekitex.EgressService.t(),
  request :: Livekit.ListEgressRequest.t()
) :: {:ok, Livekit.ListEgressResponse.t()} | {:error, any()}

start_participant_egress(egress_service, request)

@callback start_participant_egress(
  egress_service :: Livekitex.EgressService.t(),
  request :: Livekit.ParticipantEgressRequest.t()
) :: {:ok, Livekit.EgressInfo.t()} | {:error, any()}

start_room_composite_egress(egress_service, request)

@callback start_room_composite_egress(
  egress_service :: Livekitex.EgressService.t(),
  request :: Livekit.RoomCompositeEgressRequest.t()
) :: {:ok, Livekit.EgressInfo.t()} | {:error, any()}

start_track_composite_egress(egress_service, request)

@callback start_track_composite_egress(
  egress_service :: Livekitex.EgressService.t(),
  request :: Livekit.TrackCompositeEgressRequest.t()
) :: {:ok, Livekit.EgressInfo.t()} | {:error, any()}

start_track_egress(egress_service, request)

@callback start_track_egress(
  egress_service :: Livekitex.EgressService.t(),
  request :: Livekit.TrackEgressRequest.t()
) :: {:ok, Livekit.EgressInfo.t()} | {:error, any()}

start_web_egress(egress_service, request)

@callback start_web_egress(
  egress_service :: Livekitex.EgressService.t(),
  request :: Livekit.WebEgressRequest.t()
) :: {:ok, Livekit.EgressInfo.t()} | {:error, any()}

stop_egress(egress_service, request)

@callback stop_egress(
  egress_service :: Livekitex.EgressService.t(),
  request :: Livekit.StopEgressRequest.t()
) :: {:ok, Livekit.EgressInfo.t()} | {:error, any()}

update_layout(egress_service, request)

@callback update_layout(
  egress_service :: Livekitex.EgressService.t(),
  request :: Livekit.UpdateLayoutRequest.t()
) :: {:ok, Livekit.EgressInfo.t()} | {:error, any()}

update_stream(egress_service, request)

@callback update_stream(
  egress_service :: Livekitex.EgressService.t(),
  request :: Livekit.UpdateStreamRequest.t()
) :: {:ok, Livekit.EgressInfo.t()} | {:error, any()}