openvidu/openvidu-dashboard/dashboard-ce/typings/schema/ingress_sessions.schema.json

50 lines
1.7 KiB
JSON

{
"bsonType": "object",
"required": ["_id", "ingressId", "inputType", "status", "startedAt", "schemaVersion", "expiresAt"],
"properties": {
"_id": { "bsonType": "string", "description": "ingress.state.resource_id" },
"ingressId": { "bsonType": "string" },
"ingressName": { "bsonType": "string" },
"inputType": { "bsonType": "string", "enum": ["rtmp", "whip", "url"] },
"roomSid": { "bsonType": "string" },
"roomName": { "bsonType": "string" },
"participantIdentity": { "bsonType": "string" },
"status": { "bsonType": "string", "enum": ["buffering", "publishing", "inactive", "error", "complete"] },
"error": { "bsonType": "string" },
"closedBy": { "bsonType": "string", "enum": ["event", "reconciler"] },
"startedAt": { "bsonType": "date" },
"endedAt": { "bsonType": "date" },
"durationMs": { "bsonType": ["long", "int"] },
"video": {
"bsonType": "object",
"properties": {
"mimeType": { "bsonType": "string" },
"averageBitrate": { "bsonType": ["int", "long"] },
"width": { "bsonType": ["int", "long"] },
"height": { "bsonType": ["int", "long"] },
"framerate": { "bsonType": "double" }
},
"additionalProperties": false
},
"audio": {
"bsonType": "object",
"properties": {
"mimeType": { "bsonType": "string" },
"averageBitrate": { "bsonType": ["int", "long"] },
"channels": { "bsonType": ["int", "long"] },
"sampleRate": { "bsonType": ["int", "long"] }
},
"additionalProperties": false
},
"schemaVersion": {
"bsonType": ["int", "long"],
"description": "SCHEMA_VERSION of the writer that last wrote the document"
},
"expiresAt": {
"bsonType": ["date", "null"],
"description": "closedAt + retention once closed; null while open"
}
},
"additionalProperties": false
}