recording-media-started | cloud | once, media start; always index 0 of events; no participant_id | meeting_session_id, recording_id, instance_id, recording_type |
recording-media-started | raw-tracks | once per track file, when Daily starts writing it | trackSessionNum, uri (s3://<region>/<bucket>/<key>), contentType, mediaStartTime (Unix seconds), user_name, user_id |
recording-media-finished | raw-tracks | track file reached final upload state | trackSessionNum, uploadStatus (complete | failed | no-media) |
track-added | all | track joined the recording (includes tracks present at start) | trackSessionNum, trackId, kind (audio | video), trackType (string; common values cam-audio, cam-video, screen-audio, screen-video; others such as rmpAudio / rmpVideo for remote media players can appear), displayName, paused |
track-removed | all | track left the recording | trackSessionNum, trackId, kind, trackType |
track-paused / track-resumed | all | participant muted / unmuted the track | trackSessionNum |
active-speaker | all | active speaker changed to a different participant; an entry at recording start is not guaranteed | none; speaker is participant_id |
transcript | all, only while live transcription runs | transcript message arrived, including non-final results | the transcript message: session_id, user_id, user_name, trackType, text, timestamp (ISO 8601), speech_timestamp, duration_seconds, transcription_delay, instanceId, is_final; optional rawResponse, speaker, speech_final |
chat-msg | all | app message (broadcast or targeted) with event of chat-msg or message-reaction (Prebuilt chat sends these) | the message as sent; check data.event to tell reactions from messages |