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_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.5.tar.gz (64.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.5-py3-none-any.whl (77.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: secontrol-0.1.5.tar.gz
  • Upload date:
  • Size: 64.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.5.tar.gz
Algorithm Hash digest
SHA256 9d5c6273490397c5d8a40e2d121b7e55850b687252fd09104929bb3a31993033
MD5 0838b440dc8d98d0932ec5f4d25fb2a6
BLAKE2b-256 d10b9b0d1a2a0d6d4bfa44cc53b48cc0ecedc14cf6fcb1d95f521d0d3d512da6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: secontrol-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 77.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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 cd2b9f3f93918c833c25f708d0f21588b404c9955d9dd9dafbbd1100d1d5c354
MD5 99d248f3d185e81a51f135b3ac7020bd
BLAKE2b-256 fcdd4e64e1517109d5f5b5b8d0d744e58dea2cb0cd30aa057fc85c904c6cea9a

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