{
  "format": "rubrick-lesson",
  "formatVersion": 1,
  "exportedAt": "2026-11-06T20:21:16.073Z",
  "source": {
    "lessonId": "00000000-0000-4000-8001-5b0e19220ad6",
    "courseId": "00000000-0000-4000-8000-b95677216e43",
    "courseTitle": "Робот слышит и говорит",
    "ordering": 1,
    "updatedAt": "2026-09-27T10:47:17.862162+00:00"
  },
  "lessonTask": null,
  "lessonTaskSchemaVersion": null,
  "lesson": {
    "schemaVersion": 3,
    "id": "voice-01-answer",
    "courseId": "voice",
    "order": 1,
    "title": "Робот отвечает",
    "summary": "Робот произносит фразу вслух и повторяет за тобой",
    "duration": 25,
    "mode": "blocks",
    "attachments": [],
    "sections": [
      {
        "kind": "intro",
        "body": "Робот произносит фразу вслух и повторяет за тобой\n\n### Чему научишься\n- Произнести текст голосом робота\n- Получить в программу то, что услышал робот\n- Повторить услышанное вслух\n\n### Новое\n- Речь синтезируется на самом телефоне — интернет не нужен\n- Распознанная фраза — это текст, с которым можно работать дальше\n- Программа может ждать, пока человек что-то скажет",
        "attachments": [],
        "steps": []
      },
      {
        "kind": "task",
        "body": "Сделай так, чтобы робот поздоровался вслух, дождался твоей фразы и повторил её.\n\n### Результат\n- Робот заговорил первым\n- Робот повторил вслух то, что ты сказал",
        "attachments": [],
        "steps": [
          {
            "id": "s1",
            "title": "Поздоровайся",
            "body": "Блок «сказать» — робот произносит фразу вслух.",
            "attachments": []
          },
          {
            "id": "s2",
            "title": "Послушай",
            "body": "Дождись, пока блок «услышанное» вернёт не пусто.",
            "attachments": []
          },
          {
            "id": "s3",
            "title": "Повтори",
            "body": "Отдай услышанное обратно в блок «сказать».",
            "attachments": []
          },
          {
            "id": "s4",
            "title": "Проверь",
            "body": "Скажи роботу что-нибудь и убедись, что он повторил.",
            "attachments": []
          }
        ],
        "hints": [
          "Робот молчит в ответ? Он слышит только законченные фразы — говори чуть громче и делай паузу после."
        ]
      },
      {
        "kind": "assembly",
        "body": "### Понадобится\n- Настоящий робот с телефоном\n- Тихая комната\n\nСборка любая. Важно одно: не закрывай деталями микрофон и динамик телефона.",
        "attachments": [],
        "steps": []
      },
      {
        "kind": "connection",
        "body": "",
        "attachments": [],
        "steps": []
      },
      {
        "kind": "example",
        "body": "### Что должно получиться\n- Нужен настоящий телефон: у виртуального робота нет микрофона и динамика",
        "attachments": [],
        "steps": [],
        "program": {
          "mode": "blocks",
          "python": "robot.say(\"Привет! Скажи что-нибудь, и я повторю.\")\n\n# Ждём фразу. heard() отдаёт None, пока ничего не сказали.\nфраза = None\nwhile фраза is None:\n    robot.wait(0.2)\n    фраза = robot.heard()\n\nrobot.say(\"Ты сказал: \" + фраза)\n"
        }
      },
      {
        "kind": "next",
        "body": "",
        "attachments": [],
        "steps": []
      }
    ],
    "category": "Голос",
    "colour": "#FFF200"
  }
}