diff --git a/supabase/functions/autocall-result/index.ts b/supabase/functions/autocall-result/index.ts index 19f8194..00b7673 100644 --- a/supabase/functions/autocall-result/index.ts +++ b/supabase/functions/autocall-result/index.ts @@ -123,8 +123,11 @@ Deno.serve(async (request) => { } // ── Вставка в лог ── + // У тестового звонка заказ не привязываем: робот звонит на тестовый номер, + // поэтому такая строка не должна попадать в счётчики попыток и в историю + // звонков клиента (см. ниже ранний выход). const { error: logError } = await supabase.from("autocall_log").insert({ - order_group_id: body.order_group_id || null, + order_group_id: wasTest ? null : body.order_group_id || null, campaign_type: campaignType, customer_phone: body.customer_phone, attempt_no: attemptNo, @@ -145,6 +148,16 @@ Deno.serve(async (request) => { }); if (logError) throw logError; + // ── Тестовый звонок: дальше не идём ── + // В тестовом режиме робот звонит на тестовый номер (админка → Автодозвон), + // поэтому нажатия относятся к тесту, а не к клиенту. Раньше результат теста + // записывался в боевой заказ: заказ получал «согласовано роботом», дату и + // комментарий, хотя клиенту никто не звонил. Теперь — только строка журнала + // с пометкой was_test_mode и без привязки к заказу. + if (wasTest) { + return jsonResponse({ ok: true, test: true, order_group_untouched: true }, 200, cors); + } + // ── Найти заказ, если order_group_id не передан ── let orderGroupId = body.order_group_id || null; if (!orderGroupId) {