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.

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: secontrol-0.1.4.tar.gz
  • Upload date:
  • Size: 56.9 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.4.tar.gz
Algorithm Hash digest
SHA256 e6a236b9bfb1431140c5772ff88c213699f07492e84a44538573c8fe15a14d5c
MD5 cfb214d7e73f3f5cf0b00a8c5c4483d1
BLAKE2b-256 97c9b7594f40ab976aab7ab5d243bc0601fcbdd929ce51d3da5e772b3e7d6789

See more details on using hashes here.

File details

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

File metadata

  • Download URL: secontrol-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 69.2 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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 1527b42d6aa1c6c91cacd9c276a19a6754092983f407acfe769dee0a55081b54
MD5 38518e60c34801b34b6830b9f95deb18
BLAKE2b-256 a88e15861a19111e4e64e1f140ec54034875425457f4cdcb4c9fe1ecdfc19884

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