openvidu/openvidu-dashboard/dashboard-ce/typings/schema/track_subscriptions.schema....

61 lines
2.0 KiB
JSON

{
"bsonType": "object",
"required": ["_id", "trackSid", "roomSid", "subscriberSid", "status", "schemaVersion", "expiresAt"],
"properties": {
"_id": { "bsonType": "string", "description": "<trackSid>:<subscriberSid>" },
"trackSid": { "bsonType": "string" },
"roomSid": { "bsonType": "string" },
"subscriberSid": { "bsonType": "string" },
"subscriberIdentity": { "bsonType": "string" },
"publisherSid": { "bsonType": "string" },
"publisherIdentity": { "bsonType": "string" },
"source": {
"bsonType": "string",
"enum": ["UNKNOWN", "CAMERA", "MICROPHONE", "SCREEN_SHARE", "SCREEN_SHARE_AUDIO"]
},
"status": { "bsonType": "string", "enum": ["requested", "subscribed", "unsubscribed", "failed"] },
"error": { "bsonType": "string" },
"subscribedAt": { "bsonType": "date" },
"unsubscribedAt": { "bsonType": "date" },
"durationMs": { "bsonType": ["long", "int"] },
"closedBy": { "bsonType": "string", "enum": ["event", "reconciler"] },
"subscribeStats": {
"bsonType": "object",
"required": [
"bytes",
"packets",
"packetsLost",
"packetLossPct",
"nacks",
"plis",
"firs",
"rttMaxMs",
"jitterMaxMs",
"durationMs"
],
"properties": {
"bytes": { "bsonType": ["long", "int"] },
"packets": { "bsonType": ["int", "long"] },
"packetsLost": { "bsonType": ["int", "long"] },
"packetLossPct": { "bsonType": "double" },
"nacks": { "bsonType": ["int", "long"] },
"plis": { "bsonType": ["int", "long"] },
"firs": { "bsonType": ["int", "long"] },
"rttMaxMs": { "bsonType": ["int", "long"] },
"jitterMaxMs": { "bsonType": "double" },
"durationMs": { "bsonType": ["long", "int"] }
},
"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
}