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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e6a236b9bfb1431140c5772ff88c213699f07492e84a44538573c8fe15a14d5c
|
|
| MD5 |
cfb214d7e73f3f5cf0b00a8c5c4483d1
|
|
| BLAKE2b-256 |
97c9b7594f40ab976aab7ab5d243bc0601fcbdd929ce51d3da5e772b3e7d6789
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1527b42d6aa1c6c91cacd9c276a19a6754092983f407acfe769dee0a55081b54
|
|
| MD5 |
38518e60c34801b34b6830b9f95deb18
|
|
| BLAKE2b-256 |
a88e15861a19111e4e64e1f140ec54034875425457f4cdcb4c9fe1ecdfc19884
|