supersam/supabase/functions
Codex ca72a4e662 feat: document product and wire real client flow 2026-04-14 23:20:50 +03:00
..
_shared feat: complete delivery workflow updates 2026-04-13 16:32:18 +03:00
chatbot-webhook Initial import 2026-03-14 18:40:54 +03:00
confirm-delivery-choice feat: complete delivery workflow updates 2026-04-13 16:32:18 +03:00
create-delivery-invitation feat: complete delivery workflow updates 2026-04-13 16:32:18 +03:00
get-delivery-invitation feat: document product and wire real client flow 2026-04-14 23:20:50 +03:00
report-delivery-result feat: complete delivery workflow updates 2026-04-13 16:32:18 +03:00
send-chatbot-message Initial import 2026-03-14 18:40:54 +03:00
transfer-to-logistics feat: complete delivery workflow updates 2026-04-13 16:32:18 +03:00
README.md refactor: align delivery flow with 1c imports 2026-04-13 16:24:04 +03:00

README.md

Edge Functions

chatbot-webhook

Принимает webhook от telegram, vk, messenger_max, нормализует сообщение, пишет его в chat_messages и при необходимости обновляет статус заказа и order_history.

Пример вызова:

curl -X POST \
  'https://<project>.supabase.co/functions/v1/chatbot-webhook?provider=telegram' \
  -H 'Content-Type: application/json' \
  -d '{
    "order_id": "uuid",
    "text": "Подтверждаю",
    "action": "confirm_delivery",
    "external_message_id": "tg-42",
    "payload": {"slot_id": "slot-1"}
  }'

send-chatbot-message

Принимает исходящее сообщение, подготавливает dispatch в нужный канал и логирует отправку в chat_messages.

Если передан workflowAction=send_delivery_offer, функция дополнительно переводит заказ в Ожидает ответа клиента и выставляет delivery_agreement_status = 'Отправлено клиенту'.

Ожидаемые переменные:

  • SUPABASE_URL
  • SUPABASE_SERVICE_ROLE_KEY
  • TELEGRAM_BOT_TOKEN
  • VK_BOT_TOKEN
  • MESSENGER_MAX_TOKEN

create-delivery-invitation

Создает или обновляет активное приглашение для публичной клиентской ссылки, сохраняет delivery_invitations, обновляет заказ в статус Ожидает ответа клиента и возвращает публичный URL.

get-delivery-invitation

Возвращает публичное состояние приглашения по токену. Используется страницей клиента для показа актуального статуса заказа.

confirm-delivery-choice

Фиксирует выбор времени доставки клиентом, переводит заказ в Доставка согласована и создает историю события.

transfer-to-logistics

Используется для ручной передачи заказа логисту или перевода в Платное хранение.

report-delivery-result

Фиксирует итог доставки, включая успешную доставку и проблемные сценарии.