InventoryItemEquippedPayload inventory.item.equipped@1

Generated at from openvibe-contracts v0.127.0 and openvibe-sdk v0.37.0.

Version
1.0.0
Owner
inventory
Visibility
first-party
Status
active
Compatibility
backward
Decision
ADR-054
Schema
https://openvibe.network/contracts/events/payloads/inventory.item.equipped.v1.json

inventory.item.equipped v1 (OpenVibe.Inventory, ADR-054). A person equipped an instance in a slot; surfaces drop their cached equipped set. Envelope: subject { type: user, id: owner }, visibility public.

Fields

FieldTypeRequiredDescriptionConstraints
instance_idstringyes
  • pattern ^inv_[0-9A-HJKMNP-TV-Z]{26}$
definition_idstringyes
  • pattern ^itd_[0-9A-HJKMNP-TV-Z]{26}$
kindstringyes
  • pattern ^[a-z][a-z0-9_]*(\.[a-z][a-z0-9_]*)+$
slotstringyes
  • pattern ^[a-z][a-z0-9_]{0,31}$
ownerstringyes
  • pattern ^usr_[0-9A-HJKMNP-TV-Z]{26}$

Examples

From the contract's own test fixtures: valid ones validate, rejected ones must fail.

Valid: example
{
  "instance_id": "inv_01JZ00000000000000000001NV",
  "definition_id": "itd_01JZ00000000000000000001TD",
  "kind": "live.name_effect",
  "slot": "name_effect",
  "owner": "usr_01JZ0000000000000000000AAA"
}
Rejected: missing-field
{
  "definition_id": "itd_01JZ00000000000000000001TD",
  "kind": "live.name_effect",
  "slot": "name_effect",
  "owner": "usr_01JZ0000000000000000000AAA"
}

Validate

const contracts = require('openvibe-contracts');
contracts.validate('inventory.item.equipped@1', value);   // { valid, errors: [{ path, message }] }