Skip to main content

Space Engineers Redis helper utilities

Project description

secontrol

secontrol — это высокоуровневый клиент для взаимодействия с Redis-шлюзом Space Engineers. Библиотека упрощает получение телеметрии, отправку команд и реализацию автоматизаций, используя устойчивые подписки на ключевые события.

Возможности

  • Подключение к Redis с помощью конфигурации из .env или аргументов конструктора.
  • Наблюдение за ключами и каналами с автоматическим восстановлением подписок.
  • Утилиты для получения идентификаторов владельца, игрока и грида.
  • Примеры, демонстрирующие публикацию команд и мониторинг состояний.

Установка

После публикации на PyPI библиотеку можно будет установить стандартным способом:

pip install secontrol

До публикации можно установить пакет из исходников:

pip install .

Быстрый старт

from secontrol.common import prepare_grid

#Первый грид игрока
client, grid = prepare_grid()
#Устройства на гриде
print(", ".join((d.name or f"{d.device_type}:{d.device_id}") for d in grid.devices.values()) or "(no devices)")

Переменные окружения

Переменная Назначение
REDIS_URL URL Redis-инстанса (по умолчанию redis://api.outenemy.ru:6379/0).
REDIS_USERNAME Имя пользователя для авторизации.
REDIS_PASSWORD Пароль для подключения.
SE_PLAYER_ID Идентификатор игрока Space Engineers.
SE_GRID_ID Идентификатор грида. Если не задан, используется первый доступный.

Переменные можно определить в файле .env в корне проекта или системы. Модуль автоматически читает файл с помощью python-dotenv.

Примеры

Готовые скрипты находятся в каталоге sepy/examples. Чтобы запустить пример:

python -m secontrol.examples.list_grids

Лицензия

Проект распространяется по лицензии MIT. См. файл LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

secontrol-0.1.3.tar.gz (33.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

secontrol-0.1.3-py3-none-any.whl (43.0 kB view details)

Uploaded Python 3

File details

Details for the file secontrol-0.1.3.tar.gz.

File metadata

  • Download URL: secontrol-0.1.3.tar.gz
  • Upload date:
  • Size: 33.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.8

File hashes

Hashes for secontrol-0.1.3.tar.gz
Algorithm Hash digest
SHA256 79a531869cc5602784812137b9784c6fca47cdd803ae901bd915a56027c89d4f
MD5 0b162fd34950a520c3de4ac42c9ed4b4
BLAKE2b-256 7385d85f4d73c0a5ca92aed175609ca3eb97035029d28c814b5ee5b450fd5a96

See more details on using hashes here.

File details

Details for the file secontrol-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: secontrol-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 43.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.8

File hashes

Hashes for secontrol-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8f253ecadf223f014ffc31893d7c0b2cdaf5c6dce5ae1dca0d62ead1c2f426f4
MD5 d2bb1e454adf1ee1677ec6f1e00ce2bc
BLAKE2b-256 9b1b8f87e9961df2b6a9da9e7180074cf27a92a6daefa7bcae8e2a5ab772ac4b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page