startRecording method
- String? webhookUrl,
- String? awsDirPath,
- Map<
String, dynamic> ? config, - PostTranscriptionConfig? postTranscriptionConfig,
Starts recording the current room session.
-
When recording starts successfully, all participants, including the local participant, will receive a Events.recordingStarted event.
-
Once the recording is completed and stored on the server, the provided
webhookUrlwill be triggered with recording details. Learn more about webhooks here: https://en.wikipedia.org/wiki/Webhook
Parameters
-
webhookUrl(optional): A URL that will be called when the recording is completed and stored on the server. -
awsDirPath(optional): The directory path in the configured AWS storage where the recording files will be saved. -
config(optional): A map containing recording configuration options:layout
type:"GRID"|"SPOTLIGHT"|"SIDEBAR"priority:"SPEAKER"|"PIN"gridSize: Number (maximum 4)
theme
"DARK"|"LIGHT"|"DEFAULT"
mode
"video-and-audio"|"audio"
quality
"low"|"med"|"high"
orientation
"landscape"|"portrait"
-
postTranscriptionConfig(optional): Configuration for post-recording transcription and summary generation:enabled: Enables post-transcription processingmodelId: The transcription model identifiersummaryConfig:enabled: Enables summary generationprompt: Custom prompt for generating the summary
Events associated with startRecording()
Example
const webhookUrl = 'https://webhook.your-api-server.com';
final config = {
'layout': {
'type': 'GRID',
'priority': 'SPEAKER',
'gridSize': 4,
},
'theme': 'LIGHT',
'mode': 'video-and-audio',
};
final postTranscriptionConfig = PostTranscriptionConfig(
enabled: true,
modelId: 'raman_v1',
summaryConfig: SummaryConfig(
enabled: true,
prompt:
'Write summary in sections like Title, Agenda, Speakers, '
'Action Items, Outlines, Notes and Summary',
),
);
await room.startRecording(
webhookUrl: webhookUrl,
config: config,
postTranscriptionConfig: postTranscriptionConfig,
);
Implementation
Future<void> startRecording(
{String? webhookUrl,
String? awsDirPath,
Map<String, dynamic>? config,
PostTranscriptionConfig? postTranscriptionConfig}) =>
_startRecording(
webhookUrl: webhookUrl,
awsDirPath: awsDirPath,
config: config,
postTranscriptionConfig: postTranscriptionConfig,
);