Комплексное программное решение для управления заказами, диспетчеризации и взаимодействия водителей, клиентов и операторов.
Разработали единую информационную систему, объединяющую серверную часть, систему администрирования, рабочее место диспетчера, мобильное приложение водителя и приложение клиента.
Подобные решения применимы в логистике, доставке, производстве, сервисных компаниях и других сферах бизнеса.
Создаём программное обеспечение под конкретные задачи: от отдельных Windows- и мобильных приложений до комплексных систем с единой серверной частью.
| Параметр | Содержание |
|---|---|
| Отрасль | Такси и пассажирские перевозки |
| Тип проекта | Комплексная система диспетчеризации |
| Приложения | Диспетчер, водитель, клиент |
| Платформы | Windows, macOS, Linux, Android, iOS |
| Сервер | API, обработка заказов, маршрутизация |
| Эксплуатация | С 2019 года |
Создать единую систему для управления работой службы такси, обеспечивающую взаимодействие диспетчеров, водителей и клиентов.
Система должна обеспечивать приём и автоматическое распределение заказов, управление поездками, расчёт стоимости, отслеживание автомобилей и контроль работы службы в реальном времени.
Особое внимание уделили стабильности работы, синхронизации данных между приложениями и возможности дальнейшего развития системы без остановки основных процессов.
Сервер объединяет все приложения в единую систему, обрабатывает заказы и управляет их распределением между водителями.
Автоматический подбор автомобиля учитывает расстояние до клиента, время подачи, приоритеты водителей, зоны обслуживания и другие параметры.
Система интегрирована с телефонией, картографическими сервисами и СМС-шлюзами. Для построения маршрутов используется собственный сервер OSRM.
Работоспособность основных компонентов контролируется автоматически, а при обнаружении сбоев система отправляет уведомления.
Веб-панель для управления всеми основными процессами службы такси. Доступна из любого браузера.
Основные возможности:
Панель объединяет инструменты администрирования, финансового учёта и контроля работы службы такси.
Кроссплатформенное приложение для управления заказами и контроля работы службы такси в реальном времени.
Диспетчер видит текущие заказы, расположение автомобилей, статусы поездок и доступных водителей в едином интерфейсе.
Система помогает быстрее оформлять заказы, автоматически подбирать подходящие автомобили и контролировать выполнение поездок.
Основные возможности:
Мобильное приложение для Android и iOS, обеспечивающее взаимодействие водителя с диспетчерской системой в реальном времени.
Основные возможности:
Приложение автоматически синхронизирует данные с сервером и восстанавливает актуальное состояние после потери соединения.
Мобильное приложение для Android и iOS, позволяющее самостоятельно заказывать такси и отслеживать выполнение поездки.
Основные возможности:
Все изменения по заказу автоматически синхронизируются с диспетчерской системой и приложением водителя.
Логика отдельно от доставки.
Все правила живут в одном месте — сервере приложений, а канал связи с телефонами только доставляет сообщения и ничего не решает. Поэтому правки правил выкатывают, не разрывая соединения с водителями, а каждое действие водителя подтверждается ответом сервера. Рост нагрузки решается добавлением узлов связи и обработчиков без переписывания
Один заказ — три экрана.
Клиент, водитель и диспетчер должны видеть один и тот же статус. Все изменения идут через один общий поток, устаревшие сообщения не показываются, а после обрыва связи приложение просто спрашивает у сервера. Экраны не расходятся, перезапуск сервера их не ломает.
Связь пропала — водитель не потерян.
Обрыв не должен ни оставить водителя «на линии» навсегда, ни лишить его места в очереди. Система снимает его с линии, только когда оборвались все соединения, а при возвращении возвращает статус и место.
Деньги и двойное нажатие.
Двойной щелчок или два оператора не должны провести платёж дважды. Перед расчётом запись блокируется и условия проверяются заново, деньги считаются в целых центах. Так же защищён заказ клиента: два нажатия — один заказ.
PHP / Yii3 • Redis • MariaDB • Electron • TypeScript • Flutter • Dart • WebSocket • OSRM
Подробная техническая информация
Backend:
PHP 8.3, фреймворк Yii3 (маршрутизация, внедрение зависимостей, консольные команды) и собственный пакет для админ-панели; вебсокет-сервис на Workerman (PHP); тикер раздачи и обработчик присутствия — отдельные процессы; PDF-отчёты — Dompdf.
Database:
MySQL/MariaDB (рабочая база и архив заказов по годам), Redis 7 (потоки событий, GEO-индекс водителей, одноразовые билеты, блокировки, кеш настроек); подготовлен переход на PostgreSQL 18 с PgBouncer, миграции схемы — yiisoft/db-migration.
Windows:
Electron 33 и TypeScript (рабочее место диспетчера), Leaflet (карта), sql.js (локальный поиск адресов), electron-builder (установщик); тот же код собирается под macOS и Linux.
Android, iOS:
Flutter 3.44 и Dart 3.12 (приложения водителя и клиента на общем пакете), Kotlin и Gradle для оболочки, фоновая служба и геолокация (flutter_background_service, geolocator), карты flutter_map, защищённое хранилище, печать чека на Bluetooth-термопринтере (протокол ESC/POS).
API:
REST/JSON (/api/v2) по HTTP, вход по ключу устройства, одноразовые билеты на вебсокет (30 секунд); события вниз и координаты вверх — по WebSocket; интеграции: OSRM (маршруты), Mapbox, Google Places, Яндекс и DaData (карты и подсказки адресов), несколько СМС-шлюзов, АТС.
Инфраструктура:
Linux, nginx и PHP-FPM, systemd; Docker Compose для разработки; собственный сервер OSRM с картой Эстонии; серверный кеш тайлов карты; скрипт проверки состояния сервера; автотесты на Python (интеграционные), Flutter (приложения), сквозные проверки Electron через Chrome DevTools Protocol, намеренная порча кода для проверки самих тестов.
Система работает с 2019 года и продолжает развиваться. Мы регулярно обновляем приложения, добавляем новые возможности и совершенствуем существующие функции.
Тарифы, правила распределения заказов и другие настройки можно изменять без остановки работы системы.
Состояние серверов и основных служб контролируется автоматически. Регламентные операции выполняются без участия сотрудников.
Каждое обновление проходит проверку примерно 2 500 автоматическими тестами, что помогает сохранять стабильность системы при её развитии.
Разбираемся в бизнес-процессах компании, определяем требования и задачи автоматизации.
Разрабатываем архитектуру системы, определяем необходимые приложения, модули и интеграции.
Разбиваем проект на этапы с согласованными сроками, стоимостью и результатом каждого этапа.
Внедряем систему, обеспечиваем техническую поддержку и при необходимости развиваем функциональность.
Разрабатываем CRM и ERP-системы, Windows, web и мобильные приложения для автоматизации бизнес-процессов.
Не обязательно иметь готовое техническое задание. Расскажите о вашей задаче. Мы предложим вариант решения и предварительно оценим стоимость разработки.