ImportOS · Документація

Track: трекінг для клієнтів

Білий трекінг авто під вашим брендом: посилання для клієнта, бренд тенанта, піддомен і власний домен, приватність.

Track — публічна сторінка для клієнта брокера: де зараз авто, які етапи пройдено, коли очікувати видачу, фото, документи, наступна оплата, контакт менеджера. Вона брендується під вашу компанію за доменом. Це той самий код, що й «Де моє авто» на сайті Vezemo.

Сторінка Track для клієнта брокера
Сторінка Track для клієнта брокера · Скріншот-заглушка: замінюється реальним знімком

Що бачить клієнт

  • Стадія й таймлайн з датами: пройдені, поточна, майбутні з прогнозом.
  • Маршрут. Позиція схематична (без реальної карти); координати судна, якщо вони є, показуються текстом.
  • Фото з аукціону, порту, після ремонту, якщо ви позначили їх публічними.
  • Документи до завантаження, лише якщо ви це дозволили в налаштуваннях тенанта (track_show_documents).
  • Наступна оплата з кнопкою, що веде в кабінет.
  • Контакт менеджера: телефон, пошта, Telegram.
  • Підписка на сповіщення (посилання на вашого Telegram-бота) і кнопка «поділитися».

Сторінка працює і без JavaScript: стадія, таймлайн, маршрут, фото й контакти приходять з сервера. З JavaScript вона оновлюється сама приблизно кожні 20 секунд, коли вкладка активна. Зміна стадії в Desk з'являється без перезавантаження.

Як клієнт потрапляє на сторінку

СпосібАдреса
Персональне посилання (SMS, Telegram, пошта)https://track.<ваш домен>/<токен>
Пошукhttps://track.<ваш домен>/: номер угоди і VIN

Токен — випадковий UUID, який неможливо вгадати. Невалідний, невідомий або чужий токен, а також невідомий домен показують однакову нейтральну сторінку 404 без підказок. Пошук відповідає не швидше ніж за 400 мс незалежно від результату, щоб не дати вгадувати номери.

Про код доступу

Зараз роль «коду» виконує VIN. Окремий код із SMS чи Telegram потребує нового поля в базі: див. DECISIONS.md.

Бренд тенанта

Бренд задається в налаштуваннях тенанта (tenants.brand):

ПолеЩо воно робить
nameназва компанії
primary, accent, radiusкольори й заокруглення
logoUrlлоготип
contacts.phone, contacts.email, contacts.telegramблок «Контакт менеджера»
websiteпосилання на ваш сайт
telegramBotUsernameбез нього блок підписки не показується
domainвласний домен Track (див. нижче)

Екран «Налаштування → Бренд» у Desk У розробці: поки бренд змінює оператор платформи.

Стадії теж настроюються: у settings.stages_override їх можна перейменувати для клієнта, вимкнути або сховати (public: false). Це застосовується на Track автоматично. Докладно про стадії: стадії угоди.

Домен трекінгу

Є три варіанти, в порядку пріоритету, за яким Track визначає тенанта за адресою:

  1. Власний домен тенанта, наприклад track.broker.ua. Збіг із tenants.brand.domain.
  2. Піддомен на нашому домені: acme.<TRACK_DOMAIN> → тенант зі slug acme. Нічого робити не треба: працює wildcard-маршрут і wildcard-сертифікат.
  3. Службові мапінги для розробки.

Підключення власного домену

Це робите ви разом з оператором платформи.

Ваш крок, у панелі вашого DNS-провайдера:

  • Для піддомену (track.broker.ua) створіть запис CNAME, що вказує на значення TRACK_CNAME_TARGET (його надає оператор, наприклад cname.<TRACK_DOMAIN>).
  • Для кореня домену CNAME неможливий: створіть A-запис на IP сервера.

Крок оператора на сервері:

~/rvauto2/releases/$(cat ~/rvauto2/state/current_tag)/infra/scripts/track-domains.sh add track.broker.ua

Скрипт перевіряє ім'я, перевіряє DNS (dig; без правильного DNS домен не додається, бо Let's Encrypt обмежує невдалі спроби), дописує домен у список і перегенерує конфіг Traefik. Traefik підхоплює його без перезапуску й сам випускає сертифікат при першому запиті. Інші команди: track-domains.sh remove|list|render.

Ліміти Let's Encrypt: 50 сертифікатів на тиждень на зареєстрований домен і 5 невдалих перевірок на годину. Багато доменів підключайте в кілька днів.

У розробці: автоматичне підключення домену з Desk

Зараз домен додає оператор вручну скриптом. Планується Traefik HTTP provider, який бере домени з бази тенантів, а у Desk з'явиться поле «Домен трекінгу» з перевіркою DNS.

Власний домен у тарифі: див. таблицю тарифів у розділі Для брокерів.

Приватність і безпека

  • На сторінці немає цін лота, зборів, маржі, нотаток і внутрішніх ідентифікаторів. Показується лише те, що ви позначили публічним.
  • Файли (фото й документи) віддаються через підписане посилання на 15 хвилин, лише для файлів цієї угоди.
  • Сторінки угод не індексуються пошуковиками (noindex) і не кешуються (no-store).
  • Є обмеження частоти запитів і окремий лічильник «промахів» на IP.

Обмеження

  • Оновлення в реальному часі зараз працює опитуванням (раз на ~20 с). Перехід на SSE У розробці.
  • Запис підписок на сповіщення (пошта, Viber) на нашому боці У розробці. Поки працює лише посилання на Telegram-бота: бот має вміти обробляти /start trk_<токен>.
  • Для кириличних і польських літер в OG-картці (мініатюра в месенджері) потрібен шрифт з відкритою ліцензією: Чекає на власника. Без нього картка виводить лише латиницю.
Track: що бачить клієнт
▶ Track: що бачить клієнт
Відео: у планах, ще не записане

На цій сторінці