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

#Первый грид игрока
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_direct_connect.list_grids

Подключение плагинов

Для работы с дополнительными расширениями, такими как se-grid-controller, в репозитории добавлен файл repositories.yaml. Он сообщает инструментам разработки, где искать внешние зависимости и на какой ветке они находятся.

repositories:
  - name: se-grid-controller
    url: git@github.com:rootfabric/se-grid-controller.git
    branch: main

При необходимости добавьте в этот файл другие плагины в том же формате.

Лицензия

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

Публикация py -m build py -m twine upload dist\secontrol-*

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.7.tar.gz (151.0 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.7-py3-none-any.whl (196.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: secontrol-0.1.7.tar.gz
  • Upload date:
  • Size: 151.0 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.7.tar.gz
Algorithm Hash digest
SHA256 528a9045387f2f253342deac7d4209b9a96874bfcb333cfe1debeec35d5b3745
MD5 839b4d6086cd31f33d32c8c97028762b
BLAKE2b-256 7d083acb4ff8374e5c644b8ad5119a07f8d969256e0347708e93e9f3482199db

See more details on using hashes here.

File details

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

File metadata

  • Download URL: secontrol-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 196.8 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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 65114d74c7673c4093b3cd78db361b6a021bc934c0d0cf160f282504ca74a14f
MD5 16e65b433a731f7e5cf1ca0552b72992
BLAKE2b-256 a99b29048c72b6624ae08cc06e0ca94401a18ad2b6fdccfba81ccbbadd615844

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