# STATUS_ACTION блоки (`type=5`, `version=1`) `STATUS_ACTION` хранит статусные действия пользователя по отношению к конкретному материалу. ## Подтипы 1. `subType=10` — `STATUS_DONE_ONCE` - выполнил / прошёл один раз. 2. `subType=20` — `STATUS_INTERESTED` - заинтересовался материалом. 3. `subType=30` — `STATUS_STARTED` - начал. 4. `subType=40` — `STATUS_IN_STUDY` - находится в процессе полноценного изучения. 5. `subType=50` — `STATUS_COMPLETED` - завершил. 6. `subType=60` — `STATUS_ABANDONED` - бросил. 7. `subType=70` — `STATUS_LEARNED` - выучил упражнение / комплекс. 8. `subType=80` — `STATUS_CONFIRMED` - подтвердил чужой status-блок. ## Формат body Все `STATUS_ACTION` используют один и тот же бинарный body-формат: ```text [1] toBlockchainNameLen (uint8) [N] toBlockchainName UTF-8 [4] toBlockGlobalNumber [32] toBlockHash32 [2] textLenBytes (uint16) [M] text UTF-8 ``` Где: - `toBlockchainName` — блокчейн, в котором находится целевой материал; - `toBlockGlobalNumber` — номер целевого блока; - `toBlockHash32` — хэш целевого блока; - `text` — опциональное пояснение пользователя к статусу. ## Правила - Каждый `STATUS_ACTION` всегда является target-based сообщением. - `STATUS_ACTION` не является line-based сообщением канала. - Текст может быть пустым: основной смысл задаётся самим `subType`. - Базовые статусы пользователь ставит сам за себя. - `STATUS_CONFIRMED` ставится другим человеком на конкретный status-блок. ## Что не поддерживается - Отдельного `EDIT` для `STATUS_ACTION` нет. - Если нужно изменить смысл статуса, пишется новое статусное событие.