{
  "schema_version": 1,
  "call": {
    "id": "47a22484-74de-4f50-a774-8e7e94cd04b4",
    "created_at": "2026-06-28T14:28:23",
    "original_filename": "sipuni_1782645867_459131",
    "audio_path": null,
    "audio_size_bytes": null,
    "duration_seconds": 225.792,
    "debtor_hash": null,
    "debtor_timezone": "Europe/Moscow",
    "stage": "Взяли в работу",
    "bucket": null,
    "product": "Операционный директор",
    "deal_id": "46303864",
    "crm_source": "sipuni",
    "utm_source": "yandex",
    "utm_medium": "cpc",
    "utm_campaign": "OD_Fn_DG2_yandex_search_rf_new|704117799",
    "lead_category": "CCC",
    "transcript_status": "done",
    "analytics_status": "done",
    "last_error": null,
    "prompt_version": "eduson-v5.10",
    "processed_at": "2026-06-28T22:32:45.112515"
  },
  "operator": {
    "id": "f18048d5-3128-4f82-8729-cd759fec492b",
    "full_name": "Шеханова Лилия",
    "employee_code": "шеханова_лилия",
    "department": "sales"
  },
  "transcript": {
    "provider": "okk_dialog_runpod",
    "model": "bzikst/faster-whisper-large-v3-russian",
    "language": "ru",
    "raw_text": "КЛИЕНТ: Ново.\nМЕНЕДЖЕР: Алло, Станислав, доброго дня.\nКЛИЕНТ: Добрый день.\nМЕНЕДЖЕР: Добрый день, это Лилия, Академия Eduson. Станислав, звоню по вашей заявке на обучение. Интересуетесь нашим курсом операционного директора, все верно?\nКЛИЕНТ: Все верно.\nМЕНЕДЖЕР: Отлично. Станислав, позвонила с вами познакомиться, узнать о целях вашего обучения, сориентироваться по формату обучения, по программе, по стоимости и помочь записаться на курс. Не против пообщаться?\nКЛИЕНТ: Точно сейчас не могу. буду признательны, если вы мне присылаете на почту предложение.\nМЕНЕДЖЕР: А по информации -то я вам пришлю, но обычно мы курс подбираем исходя из запроса клиента, потому что курсов у нас очень много разных и есть нюансы в каждом обучении.А\nКЛИЕНТ: Ну я сейчас не готов с точным общаться,\nМЕНЕДЖЕР: когда я могу вам перезвонить? Ну, буквально пять -семь минут займет, чтобы я хотя бы вводные вопросы вам позадавала, поняла направление по обучению и тогда вышлю всю информацию (КЛИЕНТ: сейчас) необходимую.\nКЛИЕНТ: не подскажу. Сегодня занятый день, завтра точно занятый день, поэтому, ну, (МЕНЕДЖЕР: -м,) (МЕНЕДЖЕР: послезавтра?) может быть, послезавтра попробуем.\nМЕНЕДЖЕР: [наложение] Послезавтра, хорошо. Станислав, а может быть, сейчас я узнаю буквально пару уточняющих вопросов?\nКЛИЕНТ: [наложение] Ну, давай я тебя тогда быстро прикручу.\nМЕНЕДЖЕР: Давайте. Да, Станислав, сориентируйтесь, пожалуйста, кем вы сейчас работаете на данный период времени? (КЛИЕНТ: Менеджер.)\nМЕНЕДЖЕР: Менеджером работаете, то есть вы рассматриваете курсы повышения квалификации (КЛИЕНТ: Да,) с целью продвижения (КЛИЕНТ: да,) по карьерной\nКЛИЕНТ: [наложение] да.\nМЕНЕДЖЕР: [наложение] лестнице? Поняла. Станислав, скажите, пожалуйста, менеджером в каком направлении работаете? Чем занимаетесь?\nКЛИЕНТ: Операционный менеджер.\nМЕНЕДЖЕР: А, вы операционный менеджер. А вас сейчас на данный момент появилась возможность карьерного роста или нужна помощь трудоустройством будет?\nКЛИЕНТ: [наложение] По крайней Да,\nМЕНЕДЖЕР: [наложение] Пока не знаете. Так, а компания ваша чем занимается, какая направленность?\nКЛИЕНТ: это важно на самом (МЕНЕДЖЕР: Да,) деле.\nМЕНЕДЖЕР: конечно, потому что есть операционный директор, например, и менеджер класса хорика, например, это ресторанная направление, у них (КЛИЕНТ: Пусть) там свои нюансы, (КЛИЕНТ: будет) (КЛИЕНТ: дозорным.) девелопмент, строительство получается. (КЛИЕНТ: да.)\nМЕНЕДЖЕР: Ага, так, Станислав, смотрите, у нас просто есть курс директора по строительству. (КЛИЕНТ: Две.)\nМЕНЕДЖЕР: Это нужно подбирать, мне исходя из того, что вы хотите дальше. Либо вы хотите операционкой заниматься, если это не будет девелопмент, это будет просто общий курс, либо отдельно брать направление стройки, потому что в строительстве там очень много разных нюансов. (КЛИЕНТ: М) И есть еще (КЛИЕНТ: -м) курс (КЛИЕНТ: -м!) MBA Development отдельный.\nКЛИЕНТ: Мне интересна программа составить.\nКЛИЕНТ: стоимость, в первую очередь.\nМЕНЕДЖЕР: Ага, смотрите, ваша заявка идет по спецоферу на скидку 70%. У вас сейчас, помимо того, что идет скидка 70%, у вас при покупке одного курса второй курс идет в подарок. И здесь можно очень хорошо выиграть. То есть можно, например, взять операционного с MBA Development вместе, месте, либо там операционного с директором, здесь можно с ценой поиграть. И есть варианты оплаты как единоразовым платежом, так и в рассрочку. Вот, рассрочка у нас именно на образование, через банки оформляется на срок 6 или 12 и 24 месяца, и можно будет налогу вычет вернуть. Это первый момент. Второй момент. Доступы к обучению даются бессрочно, и единственный момент, что скидка до конца месяца. Здесь два дня осталось.\nКЛИЕНТ: Ну, хорошо, буду иметь в виду.\nМЕНЕДЖЕР: Да, Станислав, все -таки, исходя из ваших потребностей, мне бы хотелось бы с вами, наверное, более детально пообщаться, потому что я обычно углубляюсь, что вы дальше хотите, и подбираю курсы, исходя, там, из ваших ожиданий по заработной плате, по развитию, по дальнейшему. Я (КЛИЕНТ: я) могу, (КЛИЕНТ: и...) в целом, пойти навстречу и позвонить вам в нерабочее время, в недистанционный формат работы. То есть, может, вы мне там скажете, не знаю, сегодня, там, не знаю, в девять набрать, я могу позвонить.\nКЛИЕНТ: Я сейчас уже очень спешу, поэтому я вынужден продолжать.\nКЛИЕНТ: Буду признателен, если вы мне все пришлете. Спасибо.\n",
    "redacted_text": "КЛИЕНТ: Ново.\nМЕНЕДЖЕР: [ФИО], [ФИО], доброго дня.\nКЛИЕНТ: Добрый день.\nМЕНЕДЖЕР: Добрый день, это [ФИО], Академия Eduson. [ФИО], звоню по вашей заявке на обучение. Интересуетесь нашим курсом операционного директора, все верно?\nКЛИЕНТ: Все верно.\nМЕНЕДЖЕР: [ФИО]. [ФИО], позвонила с вами познакомиться, узнать о целях вашего обучения, сориентироваться по формату обучения, по программе, по стоимости и помочь записаться на курс. Не против пообщаться?\nКЛИЕНТ: Точно сейчас не могу. буду признательны, если вы мне присылаете на почту предложение.\nМЕНЕДЖЕР: А по информации -то я вам пришлю, но обычно мы курс подбираем исходя из запроса клиента, потому что курсов у нас очень много разных и есть нюансы в каж[адрес].А\nКЛИЕНТ: Ну я сейчас не готов с точным общаться,\nМЕНЕДЖЕР: когда я могу вам перезвонить? Ну, буквально пять -семь минут займет, чтобы я хотя бы вводные вопросы вам позадавала, поняла направление по обучению и тогда вышлю всю информацию (КЛИЕНТ: сейчас) необходимую.\nКЛИЕНТ: не подскажу. Сегодня занятый день, завтра точно занятый день, поэтому, ну, (МЕНЕДЖЕР: -м,) (МЕНЕДЖЕР: послезавтра?) может быть, послезавтра попробуем.\nМЕНЕДЖЕР: [наложение] Послезавтра, хорошо. [ФИО], а может быть, сейчас я узнаю буквально пару уточняющих вопросов?\nКЛИЕНТ: [наложение] Ну, давай я тебя тогда быстро прикручу.\nМЕНЕДЖЕР: Давайте. Да, [ФИО], сориентируйтесь, пожалуйста, кем вы сейчас работаете на данный период времени? (КЛИЕНТ: Менеджер.)\nМЕНЕДЖЕР: Менеджером работаете, то есть вы рассматриваете курсы повышения квалификации (КЛИЕНТ: Да,) с целью продвижения (КЛИЕНТ: да,) по карьерной\nКЛИЕНТ: [наложение] да.\nМЕНЕДЖЕР: [наложение] лестнице? Поняла. [ФИО], скажите, пожалуйста, менеджером в каком направлении работаете? Чем занимаетесь?\nКЛИЕНТ: Операционный менеджер.\nМЕНЕДЖЕР: А, вы операционный менеджер. А вас сейчас на данный момент появилась возможность карьерного роста или нужна помощь трудоустройством будет?\nКЛИЕНТ: [наложение] По крайней [ФИО],\nМЕНЕДЖЕР: [наложение] Пока не знаете. Так, а компания ваша чем занимается, какая направленность?\nКЛИЕНТ: это важно на самом (МЕНЕДЖЕР: Да,) деле.\nМЕНЕДЖЕР: конечно, потому что есть операционный директор, например, и менеджер класса хорика, например, это ресторанная направление, у них (КЛИЕНТ: Пусть) там свои нюансы, (КЛИЕНТ: будет) (КЛИЕНТ: дозорным.) девелопмент, строительство получается. (КЛИЕНТ: да.)\nМЕНЕДЖЕР: Ага, так, [ФИО], смотрите, у нас просто есть курс директора по строительству. (КЛИЕНТ: Две.)\nМЕНЕДЖЕР: Это нужно подбирать, мне исходя из того, что вы хотите дальше. Либо вы хотите операционкой заниматься, если это не будет девелопмент, это будет просто общий курс, либо отдельно брать направление стройки, потому что в строительстве там очень много разных нюансов. (КЛИЕНТ: М) И есть еще (КЛИЕНТ: -м) курс (КЛИЕНТ: -м!) MBA Development отдельный.\nКЛИЕНТ: Мне интересна программа составить.\nКЛИЕНТ: стоимость, в первую очередь.\nМЕНЕДЖЕР: [ФИО], смотрите, ваша заявка идет по спецоферу на скидку 70%. У вас сейчас, помимо того, что идет скидка 70%, у вас при покупке одного курса второй курс идет в подарок. И здесь можно очень хорошо выиграть. То есть можно, например, взять операционного с MBA Development вместе, месте, либо там операционного с директором, здесь можно с ценой поиграть. И есть варианты оплаты как единоразовым платежом, так и в рассрочку. Вот, рассрочка у нас именно на образование, через банки оформляется на срок 6 или 12 и 24 месяца, и можно будет налогу вычет вернуть. Это первый момент. Второй момент. Доступы к обучению даются бессрочно, и единственный момент, что скидка до конца месяца. Здесь два дня осталось.\nКЛИЕНТ: Ну, хорошо, буду иметь в виду.\nМЕНЕДЖЕР: [ФИО], [ФИО], все -таки, исходя из ваших потребностей, мне бы хотелось бы с вами, наверное, более детально пообщаться, потому что я обычно углубляюсь, что вы дальше хотите, и подбираю курсы, исходя, там, из ваших ожиданий по заработной плате, по развитию, по дальнейшему. Я (КЛИЕНТ: я) могу, (КЛИЕНТ: и...) в целом, пойти навстречу и позвонить вам в нерабочее время, в недистанционный формат работы. То есть, может, вы мне там скажете, не знаю, сегодня, там, не знаю, в девять набрать, я могу позвонить.\nКЛИЕНТ: Я сейчас уже очень спешу, поэтому я вынужден продолжать.\nКЛИЕНТ: Буду признателен, если вы мне все пришлете. Спасибо.\n",
    "segments": [
      {
        "start": 0.72,
        "end": 1.2,
        "text": "[адрес].",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 1.92,
        "end": 3.5,
        "text": "Алло, [ФИО], доброго дня.",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 3.62,
        "end": 4.74,
        "text": "Добрый день.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 5.0,
        "end": 12.26,
        "text": "Добрый день, это [ФИО], Академия Eduson. [ФИО], звоню по вашей заявке на обучение. Интересуетесь нашим курсом операционного директора, все верно?",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 12.52,
        "end": 13.62,
        "text": "Все верно.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 14.1,
        "end": 22.64,
        "text": "Отлично. [ФИО], позвонила с вами познакомиться, узнать о целях вашего обучения, сориентироваться по формату обучения, по программе, по стоимости и помочь записаться на курс. Не против пообщаться?",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 23.82,
        "end": 28.42,
        "text": "Точно сейчас не могу. буду признательны, если вы мне присылаете на почту предложение.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 29.02,
        "end": 39.2,
        "text": "А по информации -то я вам пришлю, но обычно мы курс подбираем исходя из запроса клиента, потому что курсов у нас очень много разных и есть нюансы в каж[адрес].А",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 39.62,
        "end": 41.96,
        "text": "Ну я сейчас не готов с точным общаться,",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 42.98,
        "end": 50.7,
        "text": "когда я могу вам перезвонить? Ну, буквально пять -семь минут займет, чтобы я хотя бы вводные вопросы вам позадавала, поняла направление по обучению и тогда вышлю всю информацию необходимую.",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 50.58,
        "end": 62.8,
        "text": "не подскажу. Сегодня занятый день, завтра точно занятый день, поэтому, ну, может быть, послезавтра попробуем.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 61.17,
        "end": 66.88,
        "text": "Послезавтра, хорошо. [ФИО], а может быть, сейчас я узнаю буквально пару уточняющих вопросов?",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 66.44,
        "end": 68.56,
        "text": "Ну, давай я тебя тогда быстро прикручу.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 68.42,
        "end": 72.5,
        "text": "Давайте. Да, [ФИО], сориентируйтесь, пожалуйста, кем вы сейчас работаете на данный период времени?",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 74.46,
        "end": 78.76,
        "text": "Менеджером работаете, то есть вы рассматриваете курсы повышения квалификации с целью продвижения по карьерной",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 78.5,
        "end": 79.7,
        "text": "да.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 78.76,
        "end": 84.74,
        "text": "лестнице? Поняла. [ФИО], скажите, пожалуйста, менеджером в каком направлении работаете? Чем занимаетесь?",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 85.96,
        "end": 87.02,
        "text": "Операционный менеджер.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 87.34,
        "end": 94.52,
        "text": "А, вы операционный менеджер. А вас сейчас на данный момент появилась возможность карьерного роста или нужна помощь трудоустройством будет?",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 94.6,
        "end": 97.5,
        "text": "По крайней Да,",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 97.02,
        "end": 101.08,
        "text": "Пока не знаете. Так, а компания ваша чем занимается, какая направленность?",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 101.8,
        "end": 103.52,
        "text": "это важно на самом деле.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 103.72,
        "end": 113.9,
        "text": "конечно, потому что есть операционный директор, например, и менеджер класса хорика, например, это ресторанная направление, у них там свои нюансы, девелопмент, строительство получается.",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 115.1,
        "end": 119.22,
        "text": "Ага, так, [ФИО], смотрите, у нас просто есть курс директора по строительству.",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 120.76,
        "end": 138.04,
        "text": "Это нужно подбирать, мне исходя из того, что вы хотите дальше. Либо вы хотите операционкой заниматься, если это не будет девелопмент, это будет просто общий курс, либо отдельно брать направление стройки, потому что в строительстве там очень много разных нюансов. И есть еще курс MBA Development отдельный.",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 138.21,
        "end": 141.3,
        "text": "Мне интересна программа составить.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 142.22,
        "end": 143.52,
        "text": "стоимость, в первую очередь.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 144.32,
        "end": 187.34,
        "text": "Ага, смотрите, ваша заявка идет по спецоферу на скидку 70%. У вас сейчас, помимо того, что идет скидка 70%, у вас при покупке одного курса второй курс идет в подарок. И здесь можно очень хорошо выиграть. То есть можно, например, взять операционного с MBA Development вместе, месте, либо там операционного с директором, здесь можно с ценой поиграть. И есть варианты оплаты как единоразовым платежом, так и в рассрочку. Вот, рассрочка у нас именно на образование, через банки оформляется на срок 6 или 12 и 24 месяца, и можно будет налогу вычет вернуть. Это первый момент. Второй момент. Доступы к обучению даются бессрочно, и единственный момент, что скидка до конца месяца. Здесь два дня осталось.",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 188.2,
        "end": 191.2,
        "text": "Ну, хорошо, буду иметь в виду.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 191.84,
        "end": 216.48,
        "text": "Да, [ФИО], все -таки, исходя из ваших потребностей, мне бы хотелось бы с вами, наверное, более детально пообщаться, потому что я обычно углубляюсь, что вы дальше хотите, и подбираю курсы, исходя, там, из ваших ожиданий по заработной плате, по развитию, по дальнейшему. Я могу, в целом, пойти навстречу и позвонить вам в нерабочее время, в недистанционный формат работы. То есть, может, вы мне там скажете, не знаю, сегодня, там, не знаю, в девять набрать, я могу позвонить.",
        "channel": 1,
        "speaker": "МЕНЕДЖЕР"
      },
      {
        "start": 216.76,
        "end": 221.18,
        "text": "Я сейчас уже очень спешу, поэтому я вынужден продолжать.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      },
      {
        "start": 222.36,
        "end": 224.4,
        "text": "Буду признателен, если вы мне все пришлете. Спасибо.",
        "channel": 0,
        "speaker": "КЛИЕНТ"
      }
    ],
    "word_count": 627,
    "duration_seconds": 225.792,
    "pii_redacted_count": 15,
    "created_at": "2026-06-28T22:31:42.579637"
  },
  "scoring": {
    "prompt_version": "eduson-v5.10",
    "llm_provider": "deepseek",
    "llm_model": "deepseek-v4-flash",
    "checklist_json": [
      {
        "item_no": 1,
        "item_code": "greet_hello",
        "title": "Консультант поздоровался",
        "section": "Приветствие и цель звонка",
        "block": "1",
        "weight": 2,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": "доброго дня",
        "timecode": null,
        "rationale": "Менеджер поздоровался в начале разговора",
        "applicable": true
      },
      {
        "item_no": 2,
        "item_code": "greet_name",
        "title": "Консультант назвал своё имя",
        "section": "Приветствие и цель звонка",
        "block": "1",
        "weight": 2,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": "это [ФИО], Академия Eduson",
        "timecode": null,
        "rationale": "Назвал имя и компанию",
        "applicable": true
      },
      {
        "item_no": 3,
        "item_code": "greet_company",
        "title": "Консультант озвучил название компании",
        "section": "Приветствие и цель звонка",
        "block": "1",
        "weight": 2,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": "Академия Eduson",
        "timecode": null,
        "rationale": "Компания названа",
        "applicable": true
      },
      {
        "item_no": 4,
        "item_code": "greet_purpose",
        "title": "Консультант уточнил цель звонка",
        "section": "Приветствие и цель звонка",
        "block": "1",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": "звоню по вашей заявке на обучение. Интересуетесь нашим курсом операционного директора, все верно?",
        "timecode": null,
        "rationale": "Уточнила, интересуется ли клиент курсом",
        "applicable": true
      },
      {
        "item_no": 5,
        "item_code": "program_acquaintance",
        "title": "Озвучен блок «знакомство»",
        "section": "Программирование",
        "block": "2",
        "weight": 1,
        "is_critical": false,
        "is_conditional": false,
        "severity": "desirable",
        "status": "pass",
        "quote": "позвонила с вами познакомиться, узнать о целях вашего обучения",
        "timecode": null,
        "rationale": "Анонс блока знакомства/выявления",
        "applicable": true
      },
      {
        "item_no": 6,
        "item_code": "program_presentation",
        "title": "Озвучен блок «презентация программы»",
        "section": "Программирование",
        "block": "2",
        "weight": 1,
        "is_critical": false,
        "is_conditional": false,
        "severity": "desirable",
        "status": "pass",
        "quote": "сориентироваться по формату обучения, по программе",
        "timecode": null,
        "rationale": "Анонс презентации программы",
        "applicable": true
      },
      {
        "item_no": 7,
        "item_code": "program_questions",
        "title": "Озвучен блок «ответы на вопросы клиента»",
        "section": "Программирование",
        "block": "2",
        "weight": 1,
        "is_critical": false,
        "is_conditional": false,
        "severity": "desirable",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "В анонсе не было приглашения задавать вопросы или обещания ответить на них",
        "applicable": true
      },
      {
        "item_no": 8,
        "item_code": "program_payment_option",
        "title": "Озвучен блок «варианты оплаты»",
        "section": "Программирование",
        "block": "2",
        "weight": 1,
        "is_critical": false,
        "is_conditional": false,
        "severity": "desirable",
        "status": "pass",
        "quote": "по стоимости и помочь записаться на курс",
        "timecode": null,
        "rationale": "Анонс блока стоимости/записи",
        "applicable": true
      },
      {
        "item_no": 9,
        "item_code": "need_occupation",
        "title": "Чем занимается клиент",
        "section": "Выявление потребностей",
        "block": "3",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": "Менеджер... Операционный менеджер",
        "timecode": null,
        "rationale": "Клиент ответил на вопрос о работе",
        "applicable": true
      },
      {
        "item_no": 10,
        "item_code": "need_why_direction",
        "title": "Почему выбрано именно это направление",
        "section": "Выявление потребностей",
        "block": "3",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Клиент не объяснил мотив выбора курса операционного директора",
        "applicable": true
      },
      {
        "item_no": 11,
        "item_code": "need_goal",
        "title": "Цель обучения",
        "section": "Выявление потребностей",
        "block": "3",
        "weight": 4,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Цель обучения не выявлена, клиент не раскрыл",
        "applicable": true
      },
      {
        "item_no": 12,
        "item_code": "need_why_now",
        "title": "Почему именно сейчас решил обучиться",
        "section": "Выявление потребностей",
        "block": "3",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Клиент не назвал триггер/срочность",
        "applicable": true
      },
      {
        "item_no": 13,
        "item_code": "need_role_understanding",
        "title": "Клиент понимает роль специалиста, на которого оставлена заявка",
        "section": "Выявление потребностей",
        "block": "3",
        "weight": 2,
        "is_critical": false,
        "is_conditional": true,
        "severity": "desirable",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Клиент не продемонстрировал понимание роли операционного директора",
        "applicable": true
      },
      {
        "item_no": 14,
        "item_code": "need_topics_pains",
        "title": "Какие темы интересуют, какие сложности есть сейчас",
        "section": "Выявление потребностей",
        "block": "3",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": "девелопмент, строительство",
        "timecode": null,
        "rationale": "Клиент указал конкретную отрасль - строительство",
        "applicable": true
      },
      {
        "item_no": 15,
        "item_code": "need_self_told",
        "title": "Клиент сам рассказал про свои потребности",
        "section": "Выявление потребностей",
        "block": "3",
        "weight": 1,
        "is_critical": false,
        "is_conditional": false,
        "severity": "desirable",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Все содержательные реплики клиента были в ответ на вопросы менеджера",
        "applicable": true
      },
      {
        "item_no": 16,
        "item_code": "need_ask_experience",
        "title": "Консультант спросил клиента про опыт",
        "section": "Выявление потребностей",
        "block": "3",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": "кем вы сейчас работаете на данный период времени?",
        "timecode": null,
        "rationale": "Менеджер задала вопрос про текущую должность и направление",
        "applicable": true
      },
      {
        "item_no": 17,
        "item_code": "need_has_experience",
        "title": "У клиента есть опыт работы по интересующей специальности",
        "section": "Выявление потребностей",
        "block": "3",
        "weight": 1,
        "is_critical": false,
        "is_conditional": false,
        "severity": "desirable",
        "status": "pass",
        "quote": "Операционный менеджер",
        "timecode": null,
        "rationale": "Клиент работает операционным менеджером, опыт релевантен курсу",
        "applicable": true
      },
      {
        "item_no": 18,
        "item_code": "summary_repeat",
        "title": "Повторил / резюмировал потребности клиента",
        "section": "Резюме данных от клиента",
        "block": "4",
        "weight": 2,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер не переформулировала потребность клиента своими словами",
        "applicable": true
      },
      {
        "item_no": 19,
        "item_code": "summary_fit",
        "title": "Подытожил, что курс подойдёт клиенту",
        "section": "Резюме данных от клиента",
        "block": "4",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Не сделан мост от потребности к курсу с обоснованием",
        "applicable": true
      },
      {
        "item_no": 20,
        "item_code": "upsale_value",
        "title": "Пояснил, в чём ценность более дорогих курсов",
        "section": "Upsale",
        "block": "5",
        "weight": 3,
        "is_critical": false,
        "is_conditional": true,
        "severity": "desirable",
        "status": "n/a",
        "quote": null,
        "timecode": null,
        "rationale": "Тарифы не обсуждались, апсейл не производился",
        "applicable": false
      },
      {
        "item_no": 21,
        "item_code": "upsale_options",
        "title": "Предложил несколько различных тарифов",
        "section": "Upsale",
        "block": "5",
        "weight": 2,
        "is_critical": false,
        "is_conditional": true,
        "severity": "desirable",
        "status": "n/a",
        "quote": null,
        "timecode": null,
        "rationale": "Тарифы не обсуждались",
        "applicable": false
      },
      {
        "item_no": 22,
        "item_code": "upsale_choice_check",
        "title": "Уточнил, на чём остановился клиент, что ему подходит",
        "section": "Upsale",
        "block": "5",
        "weight": 2,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "n/a",
        "quote": null,
        "timecode": null,
        "rationale": "Тарифы не обсуждались",
        "applicable": false
      },
      {
        "item_no": 23,
        "item_code": "upsale_course_proposed",
        "title": "Какой курс предложен в качестве Upsale (метаполе)",
        "section": "Upsale",
        "block": "5",
        "weight": 1,
        "is_critical": false,
        "is_conditional": true,
        "severity": "desirable",
        "status": "n/a",
        "quote": null,
        "timecode": null,
        "rationale": "Апсейл не производился",
        "applicable": false
      },
      {
        "item_no": 24,
        "item_code": "pres_program",
        "title": "Сделал презентацию программы обучения",
        "section": "Презентация",
        "block": "6",
        "weight": 4,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер не раскрыла содержание программы",
        "applicable": true
      },
      {
        "item_no": 25,
        "item_code": "pres_format",
        "title": "Сделал презентацию формата обучения",
        "section": "Презентация",
        "block": "6",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Формат обучения не описан (только бессрочный доступ упомянут)",
        "applicable": true
      },
      {
        "item_no": 26,
        "item_code": "obj_detected",
        "title": "У клиента есть сомнения или возражения",
        "section": "Работа с возражениями",
        "block": "7",
        "weight": 1,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": "Точно сейчас не могу... Буду иметь в виду",
        "timecode": null,
        "rationale": "Клиент отказался от разговора и отложил решение",
        "applicable": true
      },
      {
        "item_no": 27,
        "item_code": "obj_count",
        "title": "Количество возражений в звонке",
        "section": "Работа с возражениями",
        "block": "7",
        "weight": 1,
        "is_critical": false,
        "is_conditional": true,
        "severity": "desirable",
        "status": "pass",
        "quote": null,
        "timecode": null,
        "rationale": "2 возражения: отказ от диалога и отложенное решение",
        "applicable": true
      },
      {
        "item_no": 28,
        "item_code": "obj_handled_count",
        "title": "Количество отработанных возражений",
        "section": "Работа с возражениями",
        "block": "7",
        "weight": 1,
        "is_critical": false,
        "is_conditional": true,
        "severity": "desirable",
        "status": "pass",
        "quote": null,
        "timecode": null,
        "rationale": "Отработано только первое возражение (клиент согласился на быстрый разговор)",
        "applicable": true
      },
      {
        "item_no": 29,
        "item_code": "obj_handled_each",
        "title": "Каждое возражение отработано (да/нет)",
        "section": "Работа с возражениями",
        "block": "7",
        "weight": 5,
        "is_critical": false,
        "is_conditional": true,
        "severity": "mandatory",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Второе возражение ('буду иметь в виду') не отработано, менеджер не уточнила содержание",
        "applicable": true
      },
      {
        "item_no": 30,
        "item_code": "price_discount_focus",
        "title": "Презентовал стоимость с акцентом на скидке клиента",
        "section": "Обсуждение цены и формата оплаты",
        "block": "8",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": "ваша заявка идет по спецоферу на скидку 70%",
        "timecode": null,
        "rationale": "Скидка 70% названа в начале обсуждения",
        "applicable": true
      },
      {
        "item_no": 31,
        "item_code": "price_payment_method",
        "title": "Уточнил, какой метод оплаты удобен клиенту",
        "section": "Обсуждение цены и формата оплаты",
        "block": "8",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер перечислила варианты, но не задала вопрос о предпочтении",
        "applicable": true
      },
      {
        "item_no": 32,
        "item_code": "price_discount_size",
        "title": "Назвал размер скидки",
        "section": "Обсуждение цены и формата оплаты",
        "block": "8",
        "weight": 2,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": "скидку 70%",
        "timecode": null,
        "rationale": "Размер скидки назван",
        "applicable": true
      },
      {
        "item_no": 33,
        "item_code": "price_before_after",
        "title": "Презентовал цену до скидки и после",
        "section": "Обсуждение цены и формата оплаты",
        "block": "8",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Базовая цена не названа, только размер скидки",
        "applicable": true
      },
      {
        "item_no": 34,
        "item_code": "close_in_moment",
        "title": "Предложил оформление в моменте",
        "section": "Предложил ли оплату в моменте",
        "block": "9",
        "weight": 4,
        "is_critical": false,
        "is_conditional": true,
        "severity": "mandatory",
        "status": "pass",
        "quote": "скидка до конца месяца. Здесь два дня осталось.",
        "timecode": null,
        "rationale": "Упомянута срочность (два дня), что является попыткой close in moment",
        "applicable": true
      },
      {
        "item_no": 35,
        "item_code": "close_full_today",
        "title": "Если выбрана полная оплата — предложил оплатить сегодня",
        "section": "Предложил ли оплату в моменте",
        "block": "9",
        "weight": 3,
        "is_critical": false,
        "is_conditional": true,
        "severity": "desirable",
        "status": "n/a",
        "quote": null,
        "timecode": null,
        "rationale": "Клиент не выбрал полную оплату, условие не наступило",
        "applicable": false
      },
      {
        "item_no": 36,
        "item_code": "close_install_now",
        "title": "Если выбрана рассрочка — оформил её на звонке",
        "section": "Предложил ли оплату в моменте",
        "block": "9",
        "weight": 3,
        "is_critical": false,
        "is_conditional": true,
        "severity": "desirable",
        "status": "n/a",
        "quote": null,
        "timecode": null,
        "rationale": "Клиент не выбрал рассрочку, условие не наступило",
        "applicable": false
      },
      {
        "item_no": 37,
        "item_code": "next_exact_time",
        "title": "Согласована точная дата/время следующего звонка",
        "section": "Обозначил следующий шаг",
        "block": "10",
        "weight": 4,
        "is_critical": false,
        "is_conditional": true,
        "severity": "mandatory",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Точное время не согласовано, клиент не назначил",
        "applicable": true
      },
      {
        "item_no": 38,
        "item_code": "next_approx_time",
        "title": "Согласована приблизительная дата/время следующего звонка",
        "section": "Обозначил следующий шаг",
        "block": "10",
        "weight": 2,
        "is_critical": false,
        "is_conditional": true,
        "severity": "desirable",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Приблизительная дата не согласована",
        "applicable": true
      },
      {
        "item_no": 39,
        "item_code": "prof_listens",
        "title": "Консультант слышит клиента и отвечает по сути",
        "section": "Профессионализм",
        "block": "11",
        "weight": 4,
        "is_critical": true,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер реагировала на реплики клиента",
        "applicable": true
      },
      {
        "item_no": 40,
        "item_code": "prof_no_rude",
        "title": "Консультант не грубил, не проявлял обиду к клиенту",
        "section": "Профессионализм",
        "block": "11",
        "weight": 5,
        "is_critical": true,
        "is_conditional": false,
        "severity": "prohibited",
        "status": "pass",
        "quote": null,
        "timecode": null,
        "rationale": "Грубость не обнаружена",
        "applicable": true
      },
      {
        "item_no": 41,
        "item_code": "active_lead",
        "title": "Менеджер активно вёл диалог",
        "section": "Активная позиция менеджера",
        "block": "12",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер задавала вопросы, пыталась вовлечь",
        "applicable": true
      },
      {
        "item_no": 42,
        "item_code": "active_engaged",
        "title": "Проявлял заинтересованность в общении",
        "section": "Активная позиция менеджера",
        "block": "12",
        "weight": 2,
        "is_critical": false,
        "is_conditional": false,
        "severity": "desirable",
        "status": "pass",
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер проявляла заинтересованность",
        "applicable": true
      },
      {
        "item_no": 43,
        "item_code": "active_persuade",
        "title": "Консультант пытался убедить клиента принять решение",
        "section": "Активная позиция менеджера",
        "block": "12",
        "weight": 4,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "fail",
        "quote": null,
        "timecode": null,
        "rationale": "Не было попытки убедить клиента принять решение, только предложение перезвонить",
        "applicable": true
      },
      {
        "item_no": 44,
        "item_code": "crm_followup",
        "title": "Перезвонил в согласованное время / соблюдал договорённости",
        "section": "Корректность заполнения по клиенту в CRM",
        "block": "13",
        "weight": 2,
        "is_critical": false,
        "is_conditional": true,
        "severity": "mandatory",
        "status": "n/a",
        "quote": null,
        "timecode": null,
        "rationale": "Следующий звонок не был согласован",
        "applicable": false
      },
      {
        "item_no": 45,
        "item_code": "crm_no_personal_channel",
        "title": "Не ориентировал клиента на личные каналы связи",
        "section": "Корректность заполнения по клиенту в CRM",
        "block": "13",
        "weight": 3,
        "is_critical": false,
        "is_conditional": false,
        "severity": "mandatory",
        "status": "pass",
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер не предлагала личные каналы",
        "applicable": true
      }
    ],
    "section_scores_json": {
      "1": {
        "pass_count": 4,
        "fail_count": 0,
        "applicable_count": 4,
        "total_count": 4,
        "percent": 1.0
      },
      "2": {
        "pass_count": 3,
        "fail_count": 1,
        "applicable_count": 4,
        "total_count": 4,
        "percent": 0.75
      },
      "3": {
        "pass_count": 4,
        "fail_count": 5,
        "applicable_count": 9,
        "total_count": 9,
        "percent": 0.4444
      },
      "4": {
        "pass_count": 0,
        "fail_count": 2,
        "applicable_count": 2,
        "total_count": 2,
        "percent": 0.0
      },
      "5": {
        "pass_count": 0,
        "fail_count": 0,
        "applicable_count": 0,
        "total_count": 4,
        "percent": 0.0
      },
      "6": {
        "pass_count": 0,
        "fail_count": 2,
        "applicable_count": 2,
        "total_count": 2,
        "percent": 0.0
      },
      "7": {
        "pass_count": 3,
        "fail_count": 1,
        "applicable_count": 4,
        "total_count": 4,
        "percent": 0.75
      },
      "8": {
        "pass_count": 2,
        "fail_count": 2,
        "applicable_count": 4,
        "total_count": 4,
        "percent": 0.5
      },
      "9": {
        "pass_count": 1,
        "fail_count": 0,
        "applicable_count": 1,
        "total_count": 3,
        "percent": 1.0
      },
      "10": {
        "pass_count": 0,
        "fail_count": 2,
        "applicable_count": 2,
        "total_count": 2,
        "percent": 0.0
      },
      "11": {
        "pass_count": 2,
        "fail_count": 0,
        "applicable_count": 2,
        "total_count": 2,
        "percent": 1.0
      },
      "12": {
        "pass_count": 2,
        "fail_count": 1,
        "applicable_count": 3,
        "total_count": 3,
        "percent": 0.6667
      },
      "13": {
        "pass_count": 1,
        "fail_count": 0,
        "applicable_count": 1,
        "total_count": 2,
        "percent": 1.0
      }
    },
    "overall_score": 0.579,
    "confidence": "high",
    "summary": "Клиент сразу отказался от диалога, попросил прислать предложение на почту. Менеджер выявила, что клиент работает операционным менеджером в строительстве, но не смогла провести полноценную презентацию или закрыть сделку. Клиент отклонил повторные попытки вовлечения, сославшись на занятость, и завершил звонок без назначения следующего шага.",
    "client_info_json": {
      "interest": "Операционный директор",
      "past_experience": "операционный менеджер в строительстве (девелопмент)",
      "motivation": null,
      "learning_goals": null,
      "preferred_payment_method": "unknown",
      "course_tariff": null,
      "company_knowledge": null,
      "learning_preferences": null,
      "client_questions": [
        "стоимость"
      ],
      "lead_category": "CCC",
      "conversion_action": "Нет КД",
      "objections": [
        "Нужно время на принятие решения"
      ],
      "relevant_experience": "has",
      "company_familiarity": null,
      "age": null,
      "gender": null,
      "city": null,
      "field": "строительство/девелопмент",
      "role": "операционный менеджер",
      "financial_readiness": "unknown",
      "interest_in_certificate": null,
      "interest_in_employment": null,
      "temperature": "cold",
      "life_circumstances": null,
      "decision_maker": null
    },
    "red_flags_json": [
      {
        "code": "rf_no_next_step"
      },
      {
        "code": "rf_no_handling_objection"
      },
      {
        "code": "rf_client_disengaged"
      }
    ],
    "coaching_tip": "Усилить обработку возражения 'нет времени' через уточнение конкретной причины и предложение короткого блока вопросов. Обязательно согласовывать дату и время следующего контакта, даже если клиент отказывается от разговора.",
    "needs_human_review": true,
    "review_reason": "red_flag",
    "llm_latency_ms": null,
    "llm_cost_usd": null,
    "input_tokens": 18120,
    "output_tokens": 8913,
    "created_at": "2026-06-28T22:32:45.106951",
    "items": [
      {
        "item_no": 20,
        "item_code": "upsale_value",
        "block": "5",
        "section": "Upsale",
        "title": "Пояснил, в чём ценность более дорогих курсов",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": false,
        "status": "n/a",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Тарифы не обсуждались, апсейл не производился"
      },
      {
        "item_no": 21,
        "item_code": "upsale_options",
        "block": "5",
        "section": "Upsale",
        "title": "Предложил несколько различных тарифов",
        "weight": 2,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": false,
        "status": "n/a",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Тарифы не обсуждались"
      },
      {
        "item_no": 22,
        "item_code": "upsale_choice_check",
        "block": "5",
        "section": "Upsale",
        "title": "Уточнил, на чём остановился клиент, что ему подходит",
        "weight": 2,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": false,
        "status": "n/a",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Тарифы не обсуждались"
      },
      {
        "item_no": 23,
        "item_code": "upsale_course_proposed",
        "block": "5",
        "section": "Upsale",
        "title": "Какой курс предложен в качестве Upsale (метаполе)",
        "weight": 1,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": false,
        "status": "n/a",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Апсейл не производился"
      },
      {
        "item_no": 41,
        "item_code": "active_lead",
        "block": "12",
        "section": "Активная позиция менеджера",
        "title": "Менеджер активно вёл диалог",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 3.0,
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер задавала вопросы, пыталась вовлечь"
      },
      {
        "item_no": 42,
        "item_code": "active_engaged",
        "block": "12",
        "section": "Активная позиция менеджера",
        "title": "Проявлял заинтересованность в общении",
        "weight": 2,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 2.0,
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер проявляла заинтересованность"
      },
      {
        "item_no": 43,
        "item_code": "active_persuade",
        "block": "12",
        "section": "Активная позиция менеджера",
        "title": "Консультант пытался убедить клиента принять решение",
        "weight": 4,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Не было попытки убедить клиента принять решение, только предложение перезвонить"
      },
      {
        "item_no": 9,
        "item_code": "need_occupation",
        "block": "3",
        "section": "Выявление потребностей",
        "title": "Чем занимается клиент",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 3.0,
        "quote": "Менеджер... Операционный менеджер",
        "timecode": null,
        "rationale": "Клиент ответил на вопрос о работе"
      },
      {
        "item_no": 10,
        "item_code": "need_why_direction",
        "block": "3",
        "section": "Выявление потребностей",
        "title": "Почему выбрано именно это направление",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Клиент не объяснил мотив выбора курса операционного директора"
      },
      {
        "item_no": 11,
        "item_code": "need_goal",
        "block": "3",
        "section": "Выявление потребностей",
        "title": "Цель обучения",
        "weight": 4,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Цель обучения не выявлена, клиент не раскрыл"
      },
      {
        "item_no": 12,
        "item_code": "need_why_now",
        "block": "3",
        "section": "Выявление потребностей",
        "title": "Почему именно сейчас решил обучиться",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Клиент не назвал триггер/срочность"
      },
      {
        "item_no": 13,
        "item_code": "need_role_understanding",
        "block": "3",
        "section": "Выявление потребностей",
        "title": "Клиент понимает роль специалиста, на которого оставлена заявка",
        "weight": 2,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Клиент не продемонстрировал понимание роли операционного директора"
      },
      {
        "item_no": 14,
        "item_code": "need_topics_pains",
        "block": "3",
        "section": "Выявление потребностей",
        "title": "Какие темы интересуют, какие сложности есть сейчас",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 3.0,
        "quote": "девелопмент, строительство",
        "timecode": null,
        "rationale": "Клиент указал конкретную отрасль - строительство"
      },
      {
        "item_no": 15,
        "item_code": "need_self_told",
        "block": "3",
        "section": "Выявление потребностей",
        "title": "Клиент сам рассказал про свои потребности",
        "weight": 1,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Все содержательные реплики клиента были в ответ на вопросы менеджера"
      },
      {
        "item_no": 16,
        "item_code": "need_ask_experience",
        "block": "3",
        "section": "Выявление потребностей",
        "title": "Консультант спросил клиента про опыт",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 3.0,
        "quote": "кем вы сейчас работаете на данный период времени?",
        "timecode": null,
        "rationale": "Менеджер задала вопрос про текущую должность и направление"
      },
      {
        "item_no": 17,
        "item_code": "need_has_experience",
        "block": "3",
        "section": "Выявление потребностей",
        "title": "У клиента есть опыт работы по интересующей специальности",
        "weight": 1,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 1.0,
        "quote": "Операционный менеджер",
        "timecode": null,
        "rationale": "Клиент работает операционным менеджером, опыт релевантен курсу"
      },
      {
        "item_no": 44,
        "item_code": "crm_followup",
        "block": "13",
        "section": "Корректность заполнения по клиенту в CRM",
        "title": "Перезвонил в согласованное время / соблюдал договорённости",
        "weight": 2,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": false,
        "status": "n/a",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Следующий звонок не был согласован"
      },
      {
        "item_no": 45,
        "item_code": "crm_no_personal_channel",
        "block": "13",
        "section": "Корректность заполнения по клиенту в CRM",
        "title": "Не ориентировал клиента на личные каналы связи",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 3.0,
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер не предлагала личные каналы"
      },
      {
        "item_no": 37,
        "item_code": "next_exact_time",
        "block": "10",
        "section": "Обозначил следующий шаг",
        "title": "Согласована точная дата/время следующего звонка",
        "weight": 4,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Точное время не согласовано, клиент не назначил"
      },
      {
        "item_no": 38,
        "item_code": "next_approx_time",
        "block": "10",
        "section": "Обозначил следующий шаг",
        "title": "Согласована приблизительная дата/время следующего звонка",
        "weight": 2,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Приблизительная дата не согласована"
      },
      {
        "item_no": 30,
        "item_code": "price_discount_focus",
        "block": "8",
        "section": "Обсуждение цены и формата оплаты",
        "title": "Презентовал стоимость с акцентом на скидке клиента",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 3.0,
        "quote": "ваша заявка идет по спецоферу на скидку 70%",
        "timecode": null,
        "rationale": "Скидка 70% названа в начале обсуждения"
      },
      {
        "item_no": 31,
        "item_code": "price_payment_method",
        "block": "8",
        "section": "Обсуждение цены и формата оплаты",
        "title": "Уточнил, какой метод оплаты удобен клиенту",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер перечислила варианты, но не задала вопрос о предпочтении"
      },
      {
        "item_no": 32,
        "item_code": "price_discount_size",
        "block": "8",
        "section": "Обсуждение цены и формата оплаты",
        "title": "Назвал размер скидки",
        "weight": 2,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 2.0,
        "quote": "скидку 70%",
        "timecode": null,
        "rationale": "Размер скидки назван"
      },
      {
        "item_no": 33,
        "item_code": "price_before_after",
        "block": "8",
        "section": "Обсуждение цены и формата оплаты",
        "title": "Презентовал цену до скидки и после",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Базовая цена не названа, только размер скидки"
      },
      {
        "item_no": 34,
        "item_code": "close_in_moment",
        "block": "9",
        "section": "Предложил ли оплату в моменте",
        "title": "Предложил оформление в моменте",
        "weight": 4,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": true,
        "status": "pass",
        "score": 4.0,
        "quote": "скидка до конца месяца. Здесь два дня осталось.",
        "timecode": null,
        "rationale": "Упомянута срочность (два дня), что является попыткой close in moment"
      },
      {
        "item_no": 35,
        "item_code": "close_full_today",
        "block": "9",
        "section": "Предложил ли оплату в моменте",
        "title": "Если выбрана полная оплата — предложил оплатить сегодня",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": false,
        "status": "n/a",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Клиент не выбрал полную оплату, условие не наступило"
      },
      {
        "item_no": 36,
        "item_code": "close_install_now",
        "block": "9",
        "section": "Предложил ли оплату в моменте",
        "title": "Если выбрана рассрочка — оформил её на звонке",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": false,
        "status": "n/a",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Клиент не выбрал рассрочку, условие не наступило"
      },
      {
        "item_no": 24,
        "item_code": "pres_program",
        "block": "6",
        "section": "Презентация",
        "title": "Сделал презентацию программы обучения",
        "weight": 4,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер не раскрыла содержание программы"
      },
      {
        "item_no": 25,
        "item_code": "pres_format",
        "block": "6",
        "section": "Презентация",
        "title": "Сделал презентацию формата обучения",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Формат обучения не описан (только бессрочный доступ упомянут)"
      },
      {
        "item_no": 1,
        "item_code": "greet_hello",
        "block": "1",
        "section": "Приветствие и цель звонка",
        "title": "Консультант поздоровался",
        "weight": 2,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 2.0,
        "quote": "доброго дня",
        "timecode": null,
        "rationale": "Менеджер поздоровался в начале разговора"
      },
      {
        "item_no": 2,
        "item_code": "greet_name",
        "block": "1",
        "section": "Приветствие и цель звонка",
        "title": "Консультант назвал своё имя",
        "weight": 2,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 2.0,
        "quote": "это [ФИО], Академия Eduson",
        "timecode": null,
        "rationale": "Назвал имя и компанию"
      },
      {
        "item_no": 3,
        "item_code": "greet_company",
        "block": "1",
        "section": "Приветствие и цель звонка",
        "title": "Консультант озвучил название компании",
        "weight": 2,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 2.0,
        "quote": "Академия Eduson",
        "timecode": null,
        "rationale": "Компания названа"
      },
      {
        "item_no": 4,
        "item_code": "greet_purpose",
        "block": "1",
        "section": "Приветствие и цель звонка",
        "title": "Консультант уточнил цель звонка",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 3.0,
        "quote": "звоню по вашей заявке на обучение. Интересуетесь нашим курсом операционного директора, все верно?",
        "timecode": null,
        "rationale": "Уточнила, интересуется ли клиент курсом"
      },
      {
        "item_no": 5,
        "item_code": "program_acquaintance",
        "block": "2",
        "section": "Программирование",
        "title": "Озвучен блок «знакомство»",
        "weight": 1,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 1.0,
        "quote": "позвонила с вами познакомиться, узнать о целях вашего обучения",
        "timecode": null,
        "rationale": "Анонс блока знакомства/выявления"
      },
      {
        "item_no": 6,
        "item_code": "program_presentation",
        "block": "2",
        "section": "Программирование",
        "title": "Озвучен блок «презентация программы»",
        "weight": 1,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 1.0,
        "quote": "сориентироваться по формату обучения, по программе",
        "timecode": null,
        "rationale": "Анонс презентации программы"
      },
      {
        "item_no": 7,
        "item_code": "program_questions",
        "block": "2",
        "section": "Программирование",
        "title": "Озвучен блок «ответы на вопросы клиента»",
        "weight": 1,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "В анонсе не было приглашения задавать вопросы или обещания ответить на них"
      },
      {
        "item_no": 8,
        "item_code": "program_payment_option",
        "block": "2",
        "section": "Программирование",
        "title": "Озвучен блок «варианты оплаты»",
        "weight": 1,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 1.0,
        "quote": "по стоимости и помочь записаться на курс",
        "timecode": null,
        "rationale": "Анонс блока стоимости/записи"
      },
      {
        "item_no": 39,
        "item_code": "prof_listens",
        "block": "11",
        "section": "Профессионализм",
        "title": "Консультант слышит клиента и отвечает по сути",
        "weight": 4,
        "section_weight": 0.0,
        "is_critical": true,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 4.0,
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер реагировала на реплики клиента"
      },
      {
        "item_no": 40,
        "item_code": "prof_no_rude",
        "block": "11",
        "section": "Профессионализм",
        "title": "Консультант не грубил, не проявлял обиду к клиенту",
        "weight": 5,
        "section_weight": 0.0,
        "is_critical": true,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 5.0,
        "quote": null,
        "timecode": null,
        "rationale": "Грубость не обнаружена"
      },
      {
        "item_no": 26,
        "item_code": "obj_detected",
        "block": "7",
        "section": "Работа с возражениями",
        "title": "У клиента есть сомнения или возражения",
        "weight": 1,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "pass",
        "score": 1.0,
        "quote": "Точно сейчас не могу... Буду иметь в виду",
        "timecode": null,
        "rationale": "Клиент отказался от разговора и отложил решение"
      },
      {
        "item_no": 27,
        "item_code": "obj_count",
        "block": "7",
        "section": "Работа с возражениями",
        "title": "Количество возражений в звонке",
        "weight": 1,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": true,
        "status": "pass",
        "score": 1.0,
        "quote": null,
        "timecode": null,
        "rationale": "2 возражения: отказ от диалога и отложенное решение"
      },
      {
        "item_no": 28,
        "item_code": "obj_handled_count",
        "block": "7",
        "section": "Работа с возражениями",
        "title": "Количество отработанных возражений",
        "weight": 1,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": true,
        "status": "pass",
        "score": 1.0,
        "quote": null,
        "timecode": null,
        "rationale": "Отработано только первое возражение (клиент согласился на быстрый разговор)"
      },
      {
        "item_no": 29,
        "item_code": "obj_handled_each",
        "block": "7",
        "section": "Работа с возражениями",
        "title": "Каждое возражение отработано (да/нет)",
        "weight": 5,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": true,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Второе возражение ('буду иметь в виду') не отработано, менеджер не уточнила содержание"
      },
      {
        "item_no": 18,
        "item_code": "summary_repeat",
        "block": "4",
        "section": "Резюме данных от клиента",
        "title": "Повторил / резюмировал потребности клиента",
        "weight": 2,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Менеджер не переформулировала потребность клиента своими словами"
      },
      {
        "item_no": 19,
        "item_code": "summary_fit",
        "block": "4",
        "section": "Резюме данных от клиента",
        "title": "Подытожил, что курс подойдёт клиенту",
        "weight": 3,
        "section_weight": 0.0,
        "is_critical": false,
        "is_conditional": false,
        "applicable": true,
        "status": "fail",
        "score": 0.0,
        "quote": null,
        "timecode": null,
        "rationale": "Не сделан мост от потребности к курсу с обоснованием"
      }
    ]
  },
  "client_portrait": {
    "demographics_json": {
      "age": null,
      "gender": null,
      "city": null,
      "sphere": "строительство/девелопмент",
      "role": "операционный менеджер"
    },
    "motivation_json": {
      "interest": "Операционный директор",
      "motivation": null,
      "learning_goals": null,
      "learning_preferences": null,
      "life_circumstances": null
    },
    "finance_json": {
      "preferred_payment_method": "unknown",
      "financial_readiness": "unknown",
      "payment_ready": false,
      "interest_in_certificate": null,
      "interest_in_employment": null
    },
    "objections_json": [
      "Нужно время на принятие решения"
    ],
    "temperature": "cold",
    "life_circumstances": null,
    "decision_maker": null,
    "client_questions_json": [
      "стоимость"
    ],
    "extra_json": {
      "past_experience": "операционный менеджер в строительстве (девелопмент)",
      "company_knowledge": null,
      "company_familiarity": null,
      "relevant_experience": "has",
      "lead_category": "CCC",
      "conversion_action": "Нет КД",
      "client_questions": [
        "стоимость"
      ],
      "decision_maker": null
    },
    "created_at": "2026-06-28T22:32:45.113944"
  }
}