❮  Интеграции

Entrixy → Python Flask

Готовый пример подключения к Entrixy. Формат вебхука — entrixy.com/webhook.

Entrixy → Python Flask

Минимальный webhook-приёмник на Flask. Подходит для Linux/macOS-серверов, NAS с Python, Raspberry Pi (если хочется не WebSocket-канал, а HTTP).

Запуск

pip install -r requirements.txt
python3 entrixy.py

Сервер слушает 0.0.0.0:8080. Эндпоинт: POST /webhook.

Настройка в приложении

В Entrixy: Настройки → Объект → Тип "Webhook":

Что делает

  1. Принимает POST с JSON: {timestamp, nonce, action, object_id, signature}.
  2. Проверяет HMAC-SHA256 подпись (constant-time сравнение).
  3. Проверяет replay-окно (±5 минут).
  4. Если action=open — вызывает on_open(object_id). По умолчанию пишет лог;

замените функцию на свою логику (HTTP-вызов, GPIO, shell-команда — примеры в комментариях кода).

Production

Не запускайте app.run() в проде. Используйте gunicorn:

pip install gunicorn
gunicorn -w 2 -b 0.0.0.0:8080 entrixy:app

Или systemd-юнит + nginx-фронт с TLS-сертификатом (Let's Encrypt).

Тест

После запуска проверьте сами: соберите запрос с правильной подписью скриптом из /integrations/curl/. Если приходит {"ok":true} — подпись принята.