ChatPersonMemoryResult chat.person-memory-result@1
Generated at from
openvibe-contracts v0.419.0 and
openvibe-sdk v0.161.0.
- Version
- 1.0.0
- Owner
- chat
- Visibility
- public
- Status
- active
- Compatibility
- backward
- Schema
https://openvibe.network/contracts/chat/person-memory-result.v1.json
chat.person-memory-result@1: compacted chat memory returned by GET /api/v1/people/{username}/memory. Private fields appear only for the person and the channel owner.
Fields
| Field | Type | Required | Description | Constraints |
|---|---|---|---|---|
username | string | yes |
| |
level | enum | yes |
| |
channel | string | null | yes | ||
opted_out | boolean | yes | ||
enabled | boolean | yes | ||
entries | array of object | yes |
| |
entries[].level | enum | yes |
| |
entries[].period_start | string | yes |
| |
entries[].channel_user_id | integer | yes | ||
entries[].summary | string | yes |
| |
entries[].topics | array of string | yes |
| |
entries[].highlights | array of object | yes |
| |
entries[].highlights[].detail | string | yes |
| |
entries[].highlights[].stream_id | integer | null | yes | ||
entries[].highlights[].at | string | null | yes | ||
entries[].message_count | integer | yes |
| |
entries[].tone | string |
| ||
entries[].catchphrases | array of string |
| ||
entries[].people | array of string |
|
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: day
{
"username": "alice",
"level": "day",
"channel": "streamer",
"enabled": true,
"opted_out": false,
"entries": [
{
"level": "day",
"period_start": "2026-11-11",
"channel_user_id": 42,
"summary": "Alice discussed a game with chat.",
"topics": [
"game"
],
"highlights": [
{
"detail": "A game win",
"stream_id": 123,
"at": "2026-11-11 04:00:00"
}
],
"message_count": 25
}
]
}Rejected: no-count
{
"username": "alice",
"level": "day",
"channel": "streamer",
"enabled": true,
"opted_out": false,
"entries": [
{
"level": "day",
"period_start": "2026-11-11",
"channel_user_id": 42,
"summary": "Alice discussed a game with chat.",
"topics": [],
"highlights": []
}
]
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('chat.person-memory-result@1', value); // { valid, errors: [{ path, message }] }