Files
aiform_prod/docs/N8N_FLIGHTS_REQUESTED_INFO.md
AI Assistant 2e45786e46 feat: Telegram Mini App integration and UX improvements
- Добавлена полная интеграция с Telegram Mini App (динамическая загрузка SDK)
- Отдельный компактный дизайн для Telegram Mini App
- Добавлен loader при инициализации (предотвращает мелькание SMS-авторизации)
- Улучшена навигация: кнопки "Назад" и "К списку заявок" теперь сохраняют авторизацию
- Telegram Mini App: кнопка "Выход" просто закрывает приложение
- Telegram Mini App: заявки "В работе" скрыты из списка
- Веб-версия: для заявок "В работе" добавлена кнопка "Просмотреть в Telegram" (ссылка на @klientprav_bot)
- Telegram Mini App: кнопки действий в черновиках расположены вертикально
- Веб-версия: убрано отображение номера телефона в приветствии
- Исправлена проблема с возвратом к списку черновиков (не требует повторной SMS-авторизации)
- Заблокировано удаление и редактирование заявок со статусом "В работе"
- Добавлена документация по Telegram Mini App интеграции
2026-01-29 16:12:48 +03:00

4.0 KiB
Raw Permalink Blame History

Отображение запрошенных рейсов без данных

Проблема

Когда данных о рейсе нет, нужно показывать, по какому рейсу и запросу информация отсутствует.

Решение

Код автоматически извлекает информацию о запрошенных рейсах и показывает их даже если данных нет.

Способы передачи информации о запрошенных рейсах

Вариант 1: Прямая передача (рекомендуется)

В предыдущей ноде (перед Code Node) добавьте информацию о запрошенных рейсах:

// В Code Node перед "причесываем данные"
return [{
  json: {
    // Ваши данные
    ...existingData,
    
    // Информация о запрошенных рейсах
    requested_flights: ['MU747', 'CES747'],  // Массив номеров рейсов
    // ИЛИ
    flight_number: 'MU747',  // Один рейс
    // ИЛИ
    flight_numbers: ['MU747', 'CES747']  // Альтернативный формат
  }
}];

Вариант 2: Автоматическое извлечение

Код автоматически пытается извлечь информацию о рейсах из:

  • URL запросов (параметры ident, flight_number, flight, callsign)
  • Query параметров
  • Body запросов
  • Прямых полей в JSON

Что отображается

Если рейс был запрошен, но данных нет, показывается карточка:

┌─ Рейс MU747 ───────────────┐
│ Запрошен                   │
│                            │
│ Запрошенный рейс: MU747    │
│                            │
│ [FlightAware]              │
│ ✗ Данные не получены       │
│                            │
│ [FlightRadar24]            │
│ ✗ Данные не получены       │
└────────────────────────────┘

Пример использования

В предыдущей ноде (HTTP Request или Code Node):

// После запросов к FlightAware и FlightRadar24
return [{
  json: {
    data: [
      { body: { flights: [...] } },  // FlightAware ответ
      { body: { data: [...] } }      // FlightRadar24 ответ
    ],
    // Добавляем информацию о запрошенных рейсах
    requested_flights: ['MU747', 'CES747']
  }
}];

Или в отдельной ноде перед обработкой:

// Code Node: Prepare Request Info
const flightNumbers = ['MU747', 'CES747'];  // Из вашего запроса

return [{
  json: {
    requested_flights: flightNumbers,
    // Другие данные...
  }
}];

Преимущества

Прозрачность - видно, какие рейсы запрашивались
Отладка - легко понять, почему данных нет
Информативность - пользователь видит, что запрос был выполнен
Автоматика - код пытается извлечь информацию автоматически

Если данные всё равно не показываются

  1. Проверьте, что передаёте requested_flights в предыдущей ноде
  2. Убедитесь, что формат правильный: массив строк или объект с полем flight_number
  3. Проверьте логи в Code Node - там будут сообщения о найденных запрошенных рейсах