Skip to content

Latest commit

 

History

History
44 lines (28 loc) · 3.86 KB

events-specification-ru.md

File metadata and controls

44 lines (28 loc) · 3.86 KB

Протокол События Голоса на блокчейне VIZ

Спецификация протокола

  • Тип протокола: Custom (Гибкий)
  • Название протокола: Voice Events (События Голоса)
  • Наименование протокола: VE
  • Тип доступа: Обычный
  • Описание протокола: Открытый протокол для обратно-связанных JSON объектов в блокчейне VIZ, созданный для расширения существующего протокола Голос.

URL Схема

Используется расширенная схема url с форматом:

viz://@account/block-number/*protocol-shortname/?parameter=value

Где в качестве параметра используется строка event, а в качестве значения номера блоков с событями через запятую.

Структура событий

Гибкий протокол позволяет оперировать любыми данными в формате JSON. Слабая типизация по своей структуре обозначает зависимость от версии протокола для внедрения новых возможностей. Если новая возможность ломает обратную совместимость, то версия должна быть увеличена. Если атрибут используется по умолчанию, то нет необходимости его нахождения в объекте. Короткие имена атрибутов требуются для минимизации размера транзакций.

Пример: Версия по умолчанию: 1. Атрибут опционален, если отмечен звездочкой *.

Атрибут коротко Атрибут полный Описание
v* version Увеличивается, если обратная совместимость сломана.
p previous Номер блока для предыдущего события аккаунта в текущем пространстве протокола.
e event type Содержит тип события. Доступные типы: h (hide), e (edit).
a* account Содержит аккаунт целевого объекта для события. Если не указан, то эквивалентен аккаунту инициатору транзакции.
b block Содержит номер блока целевого объекта для события.
d* data Содержит данные события. Опционален, требуется для некоторых типов событий, например: e (edit).

Тип события h (hide)

Событие для скрытия объекта из ленты активности. Не требует дополнительных данных.

Тип события e (edit)

Событие для изменение данных объекта. В передаваемом атрибуте d (data) должен быть совместимый с протоколом Голос объект.

Тип события a (add/append)

Событие для добавления данных в конец указанных параметров объекта. Пример для структуры d (data): {t:" Расширенный объект."}. Для текстового типа объекта это добавит строку в конец текста. Для типа объекта публикации это добавит строку в конец заголовка.