mirror of https://github.com/OpenVidu/openvidu.git
2.1 KiB
2.1 KiB
MODIFIED Requirements
Requirement: Room list item
Edition: CE. Each rooms list item SHALL be the room document's public projection: identity, lifecycle, node,
participant, egress and ingress counters, bandwidth, feature flags, the end cause behind the "estimated" cue, the last
stats flush, the media statistics mark and the stale flag of api-conventions, never internal id arrays,
schemaVersion or expiresAt.
Participant counters count STANDARD sessions only; participants.unique counts distinct STANDARD identities.
Scenario: Fields of an item
- WHEN an item is read
- THEN it has
sid,name,status(active|closed),createdAt,endedAt?,durationMs?,closedBy?(event|reconciler),nodeId?,participants { sessions, unique, active, peakActive },egress { total, active },ingress { sessions, active },bytes { up, down },features { egress, ingress, agent, sip },lastStatsAt?,stale?,mediaStats?and noparticipantSids,identitiesor similar array
Scenario: Active room
- GIVEN a room still open with three active STANDARD participants and one active EGRESS participant
- WHEN it is returned
- THEN
statusisactive,endedAt,durationMsandclosedByare absent andparticipants.activeis 3
Scenario: Unique identities
- GIVEN a closed room where STANDARD identity
alicehad three sessions,bobone, and an AGENT session joined - WHEN it is returned
- THEN
participants.sessionsis 4 andparticipants.uniqueis 2
Scenario: Stale active room
- GIVEN the default writer batch interval of 10 s and an active room whose
lastStatsAtis 3 minutes old at the server's clock - WHEN it is returned
- THEN it has
stale: true, and an active room whoselastStatsAtis 20 s old has nostaleproperty
Scenario: Room of a node without media statistics
- GIVEN a room document with
mediaStats: falseandbytes { up: 0, down: 0 } - WHEN it is returned
- THEN it has
mediaStats: falseandbytes { up: 0, down: 0 }, and an item of a room without the field has nomediaStatsproperty