mirror of
https://github.com/onyx-and-iris/q3rcon-tui.git
synced 2026-04-09 05:33:31 +00:00
Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 5178b0066b | |||
| 68926fa67b | |||
| d273ca57ca | |||
| ce660fb6c8 | |||
| 514dda463a |
2
.github/workflows/publish.yml
vendored
2
.github/workflows/publish.yml
vendored
@@ -30,7 +30,7 @@ jobs:
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
pip install "virtualenv<21" hatch
|
||||
pip install hatch
|
||||
|
||||
- name: Build package
|
||||
run: hatch build
|
||||
|
||||
7
.pre-commit-config.yaml
Normal file
7
.pre-commit-config.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
repos:
|
||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||
rev: v2.3.0
|
||||
hooks:
|
||||
- id: check-yaml
|
||||
- id: end-of-file-fixer
|
||||
- id: trailing-whitespace
|
||||
@@ -66,6 +66,12 @@ Q3RCON_TUI_RAW=false
|
||||
Q3RCON_TUI_APPEND=false
|
||||
```
|
||||
|
||||
## Use
|
||||
|
||||
Type in your Rcon command and press ENTER.
|
||||
|
||||
Press `Ctrl+q` to exit from the application.
|
||||
|
||||
## Special Thanks
|
||||
|
||||
- [lapetus-11](https://github.com/Iapetus-11) for writing the [aio-q3-rcon](https://github.com/Iapetus-11/aio-q3-rcon) package.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# SPDX-FileCopyrightText: 2026-present onyx-and-iris <code@onyxandiris.online>
|
||||
#
|
||||
# SPDX-License-Identifier: MIT
|
||||
__version__ = '0.7.1'
|
||||
__version__ = '0.7.2'
|
||||
|
||||
@@ -10,6 +10,15 @@ from .writable import Writable
|
||||
|
||||
class Q3RconTUI(App):
|
||||
CSS_PATH = 'q3rcon_tui.tcss'
|
||||
CMD_CONFIG = {
|
||||
'status': (2, 0.25, False),
|
||||
'fast_restart': (3, 1, True),
|
||||
'map_restart': (3, 1, True),
|
||||
'map': (3, 1, True),
|
||||
'map_rotate': (3, 1, True),
|
||||
}
|
||||
DEFAULT_TIMEOUT = 2
|
||||
DEFAULT_FRAGMENT_READ_TIMEOUT = 0.25
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
@@ -65,11 +74,20 @@ class Q3RconTUI(App):
|
||||
self.app.bell()
|
||||
return
|
||||
|
||||
timeout, fragment_read_timeout, interpret = Q3RconTUI.CMD_CONFIG.get(
|
||||
cmd.split()[0].lower(),
|
||||
(Q3RconTUI.DEFAULT_TIMEOUT, Q3RconTUI.DEFAULT_FRAGMENT_READ_TIMEOUT, False),
|
||||
)
|
||||
|
||||
try:
|
||||
async with Client(
|
||||
self._settings.host, self._settings.port, self._settings.password
|
||||
self._settings.host,
|
||||
self._settings.port,
|
||||
self._settings.password,
|
||||
timeout=timeout,
|
||||
fragment_read_timeout=fragment_read_timeout,
|
||||
) as client:
|
||||
response = await client.send_command(cmd)
|
||||
response = await client.send_command(cmd, interpret=interpret)
|
||||
self.query_one('#response', RichLog).write(
|
||||
self.writable.parse(cmd, response)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user