Module livekit.api.egress_service
Global variables
var SVC
-
@private
Classes
class EgressInfo (*args, **kwargs)
-
A ProtocolMessage
Ancestors
- google._upb._message.Message
- google.protobuf.message.Message
Class variables
var DESCRIPTOR
class EgressService (session: aiohttp.client.ClientSession, url: str, api_key: str, api_secret: str)
-
Expand source code
class EgressService(Service): """Client for LiveKit Egress Service API Recommended way to use this service is via `livekit.api.LiveKitAPI`: ```python from livekit import api lkapi = api.LiveKitAPI() egress = lkapi.egress ``` Also see https://docs.livekit.io/home/egress/overview/ """ def __init__( self, session: aiohttp.ClientSession, url: str, api_key: str, api_secret: str ): super().__init__(session, url, api_key, api_secret) async def start_room_composite_egress( self, start: RoomCompositeEgressRequest ) -> EgressInfo: return await self._client.request( SVC, "StartRoomCompositeEgress", start, self._auth_header(VideoGrants(room_record=True)), EgressInfo, ) async def start_web_egress(self, start: WebEgressRequest) -> EgressInfo: return await self._client.request( SVC, "StartWebEgress", start, self._auth_header(VideoGrants(room_record=True)), EgressInfo, ) async def start_participant_egress( self, start: ParticipantEgressRequest ) -> EgressInfo: return await self._client.request( SVC, "StartParticipantEgress", start, self._auth_header(VideoGrants(room_record=True)), EgressInfo, ) async def start_track_composite_egress( self, start: TrackCompositeEgressRequest ) -> EgressInfo: return await self._client.request( SVC, "StartTrackCompositeEgress", start, self._auth_header(VideoGrants(room_record=True)), EgressInfo, ) async def start_track_egress(self, start: TrackEgressRequest) -> EgressInfo: return await self._client.request( SVC, "StartTrackEgress", start, self._auth_header(VideoGrants(room_record=True)), EgressInfo, ) async def update_layout(self, update: UpdateLayoutRequest) -> EgressInfo: return await self._client.request( SVC, "UpdateLayout", update, self._auth_header(VideoGrants(room_record=True)), EgressInfo, ) async def update_stream(self, update: UpdateStreamRequest) -> EgressInfo: return await self._client.request( SVC, "UpdateStream", update, self._auth_header(VideoGrants(room_record=True)), EgressInfo, ) async def list_egress(self, list: ListEgressRequest) -> ListEgressResponse: return await self._client.request( SVC, "ListEgress", list, self._auth_header(VideoGrants(room_record=True)), ListEgressResponse, ) async def stop_egress(self, stop: StopEgressRequest) -> EgressInfo: return await self._client.request( SVC, "StopEgress", stop, self._auth_header(VideoGrants(room_record=True)), EgressInfo, )
Client for LiveKit Egress Service API
Recommended way to use this service is via
LiveKitAPI
:from livekit import api lkapi = api.LiveKitAPI() egress = lkapi.egress
Ancestors
- livekit.api._service.Service
- abc.ABC
Methods
async def list_egress(self, list: egress.ListEgressRequest) ‑> egress.ListEgressResponse
-
Expand source code
async def list_egress(self, list: ListEgressRequest) -> ListEgressResponse: return await self._client.request( SVC, "ListEgress", list, self._auth_header(VideoGrants(room_record=True)), ListEgressResponse, )
async def start_participant_egress(self, start: egress.ParticipantEgressRequest) ‑> egress.EgressInfo
-
Expand source code
async def start_participant_egress( self, start: ParticipantEgressRequest ) -> EgressInfo: return await self._client.request( SVC, "StartParticipantEgress", start, self._auth_header(VideoGrants(room_record=True)), EgressInfo, )
async def start_room_composite_egress(self, start: egress.RoomCompositeEgressRequest) ‑> egress.EgressInfo
-
Expand source code
async def start_room_composite_egress( self, start: RoomCompositeEgressRequest ) -> EgressInfo: return await self._client.request( SVC, "StartRoomCompositeEgress", start, self._auth_header(VideoGrants(room_record=True)), EgressInfo, )
async def start_track_composite_egress(self, start: egress.TrackCompositeEgressRequest) ‑> egress.EgressInfo
-
Expand source code
async def start_track_composite_egress( self, start: TrackCompositeEgressRequest ) -> EgressInfo: return await self._client.request( SVC, "StartTrackCompositeEgress", start, self._auth_header(VideoGrants(room_record=True)), EgressInfo, )
async def start_track_egress(self, start: egress.TrackEgressRequest) ‑> egress.EgressInfo
-
Expand source code
async def start_track_egress(self, start: TrackEgressRequest) -> EgressInfo: return await self._client.request( SVC, "StartTrackEgress", start, self._auth_header(VideoGrants(room_record=True)), EgressInfo, )
async def start_web_egress(self, start: egress.WebEgressRequest) ‑> egress.EgressInfo
-
Expand source code
async def start_web_egress(self, start: WebEgressRequest) -> EgressInfo: return await self._client.request( SVC, "StartWebEgress", start, self._auth_header(VideoGrants(room_record=True)), EgressInfo, )
async def stop_egress(self, stop: egress.StopEgressRequest) ‑> egress.EgressInfo
-
Expand source code
async def stop_egress(self, stop: StopEgressRequest) -> EgressInfo: return await self._client.request( SVC, "StopEgress", stop, self._auth_header(VideoGrants(room_record=True)), EgressInfo, )
async def update_layout(self, update: egress.UpdateLayoutRequest) ‑> egress.EgressInfo
-
Expand source code
async def update_layout(self, update: UpdateLayoutRequest) -> EgressInfo: return await self._client.request( SVC, "UpdateLayout", update, self._auth_header(VideoGrants(room_record=True)), EgressInfo, )
async def update_stream(self, update: egress.UpdateStreamRequest) ‑> egress.EgressInfo
-
Expand source code
async def update_stream(self, update: UpdateStreamRequest) -> EgressInfo: return await self._client.request( SVC, "UpdateStream", update, self._auth_header(VideoGrants(room_record=True)), EgressInfo, )
class ListEgressRequest (*args, **kwargs)
-
A ProtocolMessage
Ancestors
- google._upb._message.Message
- google.protobuf.message.Message
Class variables
var DESCRIPTOR
class ListEgressResponse (*args, **kwargs)
-
A ProtocolMessage
Ancestors
- google._upb._message.Message
- google.protobuf.message.Message
Class variables
var DESCRIPTOR
class ParticipantEgressRequest (*args, **kwargs)
-
A ProtocolMessage
Ancestors
- google._upb._message.Message
- google.protobuf.message.Message
Class variables
var DESCRIPTOR
class RoomCompositeEgressRequest (*args, **kwargs)
-
A ProtocolMessage
Ancestors
- google._upb._message.Message
- google.protobuf.message.Message
Class variables
var DESCRIPTOR
class StopEgressRequest (*args, **kwargs)
-
A ProtocolMessage
Ancestors
- google._upb._message.Message
- google.protobuf.message.Message
Class variables
var DESCRIPTOR
class TrackCompositeEgressRequest (*args, **kwargs)
-
A ProtocolMessage
Ancestors
- google._upb._message.Message
- google.protobuf.message.Message
Class variables
var DESCRIPTOR
class TrackEgressRequest (*args, **kwargs)
-
A ProtocolMessage
Ancestors
- google._upb._message.Message
- google.protobuf.message.Message
Class variables
var DESCRIPTOR
class UpdateLayoutRequest (*args, **kwargs)
-
A ProtocolMessage
Ancestors
- google._upb._message.Message
- google.protobuf.message.Message
Class variables
var DESCRIPTOR
class UpdateStreamRequest (*args, **kwargs)
-
A ProtocolMessage
Ancestors
- google._upb._message.Message
- google.protobuf.message.Message
Class variables
var DESCRIPTOR
class WebEgressRequest (*args, **kwargs)
-
A ProtocolMessage
Ancestors
- google._upb._message.Message
- google.protobuf.message.Message
Class variables
var DESCRIPTOR