LiveAgentStreamCurtainRequest live.agent-stream-curtain-request@1
Generated at from
openvibe-contracts v0.419.0 and
openvibe-sdk v0.161.0.
- Version
- 1.0.0
- Owner
- live
- Visibility
- first-party
- Status
- active
- Compatibility
- backward
- Schema
https://openvibe.network/contracts/live/agent-stream-curtain-request.v1.json
live.agent-stream-curtain-request@1 (the Agent Streams plan, S1): the body of POST /api/streams/agent/:id/curtain on OpenVibe.Live (capability live.agent_stream.publish): the desk reports that its privacy screen went up or came down. While the curtain is up Live pauses every viewer's consumer (mediasoup consumer.pause()), so a desk that failed to blank still shows nothing. Viewers see 'Private screen' and never why. The curtain comes down only from the desk, after its detectors report clear for two seconds, or from the owner's own button; a detector that fails or is unsure puts it up and never down.
Fields
| Field | Type | Required | Description | Constraints |
|---|---|---|---|---|
up | boolean | yes | ||
reason | enum | yes | Why the curtain is up (the last reason when it comes down). |
|
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: down
{
"up": false,
"reason": "manual"
}Valid: up
{
"up": true,
"reason": "password_field"
}Rejected: unknown-reason
{
"up": true,
"reason": "gossip"
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('live.agent-stream-curtain-request@1', value); // { valid, errors: [{ path, message }] }