---
read_when:
    - Створення клієнтів Matrix, які відображають розширені відповіді OpenClaw
    - Налагодження вмісту подій com.openclaw.presentation
summary: Метадані Matrix MessagePresentation для клієнтів, що підтримують OpenClaw
title: Метадані презентації Matrix
x-i18n:
    generated_at: "2026-05-10T19:22:37Z"
    model: gpt-5.5
    provider: openai
    source_hash: c89979b6007faaa6af44c7f2511f354b96f163bcd3d5e7f99c405b51c4950537
    source_path: channels/matrix-presentation.md
    workflow: 16
---

OpenClaw може додавати нормалізовані метадані `MessagePresentation` до вихідних подій Matrix `m.room.message` у `com.openclaw.presentation`.

Стандартні клієнти Matrix і далі відображають звичайний текст `body`. Клієнти з підтримкою OpenClaw можуть читати структуровані метадані й відображати нативний UI, як-от кнопки, списки вибору, контекстні рядки та розділювачі.

## Вміст події

Метадані зберігаються у вмісті події Matrix:

```json
{
  "msgtype": "m.text",
  "body": "Select model\n\n- DeepSeek: /model deepseek/deepseek-chat",
  "com.openclaw.presentation": {
    "version": 1,
    "type": "message.presentation",
    "title": "Select model",
    "tone": "info",
    "blocks": [
      {
        "type": "select",
        "placeholder": "Choose model",
        "options": [
          {
            "label": "DeepSeek",
            "value": "/model deepseek/deepseek-chat"
          }
        ]
      }
    ]
  }
}
```

`version` — це версія схеми метаданих презентації Matrix. `type` — стабільний дискримінатор для клієнтів із підтримкою OpenClaw. Клієнти мають ігнорувати невідомі значення `type`, невідомі версії, які вони не можуть безпечно інтерпретувати, і невідомі типи блоків.

## Поведінка резервного відображення

OpenClaw завжди відтворює читабельний резервний звичайний текст у `body`. Структуровані метадані є додатковими й не повинні бути обов’язковими для базової сумісності з Matrix.

Непідтримувані клієнти мають і далі показувати резервний текст. Клієнти з підтримкою OpenClaw можуть віддавати перевагу структурованим метаданим для відображення, зберігаючи резервний текст для копіювання, пошуку, сповіщень і доступності.

## Підтримувані блоки

Вихідний адаптер Matrix оголошує підтримку для:

- `buttons`
- `select`
- `context`
- `divider`

Клієнти мають розглядати ці блоки як презентаційні підказки за принципом найкращого зусилля. Невідомі поля й невідомі типи блоків слід ігнорувати, а не спричиняти збій відображення всього повідомлення.

## Взаємодії

Ці метадані не додають семантики зворотних викликів Matrix. Значення кнопок і варіантів вибору є резервними корисними навантаженнями взаємодії, зазвичай slash-командами або текстовими командами. Клієнт Matrix, який хоче підтримувати взаємодію, може надіслати вибране значення назад у кімнату як звичайне повідомлення.

Наприклад, кнопку зі значенням `/model deepseek/deepseek-chat` можна обробити, надіславши це значення як зашифроване текстове повідомлення Matrix у тій самій кімнаті.

## Зв’язок із метаданими схвалення

`com.openclaw.presentation` призначено для загального розширеного представлення повідомлень.

Запити на схвалення використовують спеціальні метадані `com.openclaw.approval`, оскільки схвалення містять чутливий до безпеки стан, рішення та відомості про exec/plugin. Якщо обидва ключі метаданих присутні в одній події, клієнтам слід віддавати перевагу спеціалізованому рендереру схвалень.

## Медіаповідомлення

Коли відповідь містить кілька медіа-URL, OpenClaw надсилає одну подію Matrix для кожного медіа-URL. Метадані презентації додаються лише до першої медіаподії, щоб клієнти мали одне стабільне структуроване корисне навантаження й уникали дублювання рендерерів.

Тримайте метадані презентації компактними. Великий видимий для користувача текст має залишатися в `body` і використовувати звичайний шлях поділу тексту Matrix на фрагменти.
