Xiaozhi ESP32 Server Java
Обзор
Xiaozhi ESP32 Server Java — это серверное приложение на Java для голосовых устройств на базе ESP32. Проект основан на Xiaozhi ESP32, но переписан на Java с полноценным веб-интерфейсом (админка + пользовательская панель). Вы получаете готовую серверную часть для управления устройствами, обработки голосовых команд, подключения AI-моделей и интеграции с IoT.
Зачем Java? Проект ориентирован на корпоративную стабильность, высокую нагрузку (много одновременных подключений), а также на удобство расширения под конкретные бизнес-задачи.
Технологический стек:
- Бэкенд: Spring Boot, Spring MVC, WebSocket, MQTT
- Фронтенд: Vue.js, Ant Design
- Хранилище: MySQL + Redis
- Адаптивный дизайн: все устройства и разрешения
Кому это нужно
- Вы уже купили ESP32-гарнитуру или колонку и хотите управлять ей через красивый интерфейс.
- Вам нужна стабильность enterprise-уровня, а не
node.js прототип.
- Вы — разработчик, который хочет быстро запустить своего голосового ассистента с минимальными усилиями.
- Вам нужна поддержка множества устройств одновременно, работа с большими объёмами логов и AI-функциями.
Возможности (реализованные)
| Функция |
Статус |
Описание |
| Управление устройствами |
✅ |
Список, мониторинг, добавление/редактирование/удаление, авто-применение настроек |
| Выбор голоса (TTS) |
✅ |
Microsoft, Alibaba, Volcengine и др. — назначение разным устройствам |
| Клонирование голоса |
✅ |
Через Volcengine и Alibaba Cloud — создайте собственный голос |
| История чатов |
✅ |
Поиск по дате/ключевым словам, удаление, очистка памяти |
| AI-агенты |
✅ |
Интеграция с Coze, Dify и любыми OpenAI-совместимыми API |
| Смена роли |
✅ |
Учитель, подруга/друг, помощник для умного дома — переключение голосом |
| Поддержка LLM |
✅ |
OpenAI, ZhipuAI, iFlytek Spark, Ollama и др. |
| IoT-управление |
✅ |
Голосовые команды для умного дома (вкл/выкл свет и т.п.) |
| Асинхронная речь |
✅ |
Двусторонний стриминг (ввод + ответ) без задержек |
| Прерывание речи |
✅ |
Говорите в любой момент — ассистент замолкает |
| Локальное распознавание |
✅ |
Vosk — работает без интернета |
| WebSocket / MQTT |
✅ |
Высокопроизводительная связь, сервер сам будит устройство |
| Пробуждение по слову |
✅ |
Настраиваемое слово-активатор |
| Множество устройств |
✅ |
Поддержка неограниченного числа ESP32 в одной сети |
| TTS + ASR мультидвижок |
✅ |
Microsoft, Alibaba, Volcengine + FunASR, Alibaba, Tencent, Vosk |
| Пользовательский интерфейс |
✅ |
Карточная панель для простых пользователей |
| Группировка устройств |
✅ |
Удобное управление, если ESP32 много |
В разработке
- Визуализация данных чатов (графики, статистика)
- Смешанные роли (разные голоса на разные команды)
- Управление памятью (сколько хранить, авто-суммаризация)
- Распознавание голоса (кто говорит)
- Мультиязычный интерфейс
- Function Calling (выполнение сложных задач через LLM)
- Интеграция с Home Assistant
- Мультимодальность (распознавание изображений)
- Анализ эмоций
- Координация нескольких устройств
- Плагины
- База знаний
- Будильники и напоминания
- Удалённое управление
Установка и запуск
1. Исходный код (локально)
Windows: следуйте Windows Development Guide
CentOS (Linux): CentOS Development Guide
После запуска в консоли появятся ссылки для OTA и WebSocket. Используйте их при прошивке ESP32.
2. Docker
См. Docker Guide
После контейнеризации WebSocket будет доступен по IP хоста, например:
ws://192.168.31.100:8091/ws/xiaozhi/v1/
3. Видеотуториал
Видеоинструкция по развёртыванию
4. Прошивка ESP32
Гайд по компиляции и прошивке: Firmware Build Guide
После успешной прошивки и подключения к Wi-Fi скажите слово-активатор. В логах сервера появится сообщение о подключении.
Roadmap
Q2 2025
- Полноценный Function Calling
- Смешанные роли (разные голоса по разным ключевым словам)
- Гибкое управление памятью
- Графики и аналитика
Q3-Q4 2025
- Распознавание голоса (кто говорит)
- Home Assistant
- Мультимодальность
- Система плагинов
2026+
- Координация нескольких устройств (весь дом)
- Анализ эмоций
- База знаний
- Полная мультиязычность
Сообщество и поддержка
- Вопросы и баги: GitHub Issues
- Чат: QQ группа 790820705
- WeChat: сканируйте QR-код в репозитории (вторая группа)
- Коммерческая разработка: свяжитесь через WeChat
Лицензия
MIT
Документация частично основана на оригинальном README проекта.
Комментарии
Комментариев пока нет. Будьте первым.