Compare commits

9 Commits

Author SHA1 Message Date
55ee80ce22 Merge pull request 'Correctly implement actions' (#3) from implement-actions into master
Some checks failed
Lint / lint (push) Successful in 12s
release-tag / release-image (push) Failing after 19m3s
Reviewed-on: #3
2025-02-23 11:31:30 -05:00
8f0df2e3e1 Linting
All checks were successful
Lint / lint (pull_request) Successful in 1m15s
2025-02-22 22:51:01 -05:00
1de9e9ce1d remove test for another time
Some checks failed
Lint / lint (pull_request) Failing after 22s
2025-02-22 22:43:07 -05:00
3c99d05708 Bumb versions in linting
Some checks failed
Lint / lint (pull_request) Failing after 2m1s
Test / test (pull_request) Failing after 29s
2025-02-22 22:40:19 -05:00
57e93eaa81 Fix actions
Some checks failed
Test / test (pull_request) Failing after 56s
Lint / lint (pull_request) Failing after 47s
- Fix branch names
- Update PRs to run on any branch
2025-02-22 22:31:39 -05:00
597c73f45e Update yaml on something that will run on PR 2025-02-22 22:26:17 -05:00
7c9b9ba446 Use 'yaml' instead of 'yml' 2025-02-22 22:25:34 -05:00
d753f8aebb Merge remote-tracking branch 'origin/master' into implement-actions 2025-02-22 22:23:33 -05:00
f14fe1f789 Move the action configs to correct dir 2025-02-22 22:22:58 -05:00
8 changed files with 36 additions and 65 deletions

View File

@@ -3,7 +3,7 @@ name: release-tag
on: on:
push: push:
branches: branches:
- main - master
jobs: jobs:
release-image: release-image:

View File

@@ -3,22 +3,22 @@ name: Lint
on: on:
push: push:
branches: branches:
- main - master
pull_request: pull_request:
branches: branches:
- main - "*"
jobs: jobs:
lint: lint:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v4
- name: Set up Python - name: Set up Python
uses: actions/setup-python@v2 uses: actions/setup-python@v5
with: with:
python-version: 3.x python-version: '3.13'
- name: Install dependencies - name: Install dependencies
run: | run: |

View File

@@ -1,30 +0,0 @@
name: Test
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: 3.x
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pytest
- name: Run tests
run: |
pytest

View File

@@ -30,15 +30,15 @@ class AudioStream:
if _input: if _input:
self.paInstance_kwargs['input_device_index'] = _input_device_index self.paInstance_kwargs['input_device_index'] = _input_device_index
else: else:
LOGGER.warning(f"[AudioStream.__init__]:\tInput was not enabled." LOGGER.warning("[AudioStream.__init__]:\tInput was not enabled."
f" Reinitialize with '_input=True'") " Reinitialize with '_input=True'")
if _output_device_index: if _output_device_index:
if _output: if _output:
self.paInstance_kwargs['output_device_index'] = _output_device_index self.paInstance_kwargs['output_device_index'] = _output_device_index
else: else:
LOGGER.warning(f"[AudioStream.__init__]:\tOutput was not enabled." LOGGER.warning("[AudioStream.__init__]:\tOutput was not enabled."
f" Reinitialize with '_output=True'") " Reinitialize with '_output=True'")
if _init_on_startup: if _init_on_startup:
# Init PyAudio instance # Init PyAudio instance
@@ -59,15 +59,15 @@ class AudioStream:
if self.paInstance_kwargs['input']: if self.paInstance_kwargs['input']:
self.paInstance_kwargs['input_device_index'] = _new_input_device_index self.paInstance_kwargs['input_device_index'] = _new_input_device_index
else: else:
LOGGER.warning(f"[AudioStream.init_stream]:\tInput was not enabled when initialized." LOGGER.warning("[AudioStream.init_stream]:\tInput was not enabled when initialized."
f" Reinitialize with '_input=True'") " Reinitialize with '_input=True'")
if _new_output_device_index: if _new_output_device_index:
if self.paInstance_kwargs['output']: if self.paInstance_kwargs['output']:
self.paInstance_kwargs['output_device_index'] = _new_output_device_index self.paInstance_kwargs['output_device_index'] = _new_output_device_index
else: else:
LOGGER.warning(f"[AudioStream.init_stream]:\tOutput was not enabled when initialized." LOGGER.warning("[AudioStream.init_stream]:\tOutput was not enabled when initialized."
f" Reinitialize with '_output=True'") " Reinitialize with '_output=True'")
self.close_if_open() self.close_if_open()
@@ -80,7 +80,7 @@ class AudioStream:
if self.stream.is_active(): if self.stream.is_active():
self.stream.stop_stream() self.stream.stop_stream()
self.stream.close() self.stream.close()
LOGGER.debug(f"[ReopenStream.close_if_open]:\t Stream was open; It was closed.") LOGGER.debug("[ReopenStream.close_if_open]:\t Stream was open; It was closed.")
def list_devices(self, _display_input_devices: bool = True, _display_output_devices: bool = True): def list_devices(self, _display_input_devices: bool = True, _display_output_devices: bool = True):
LOGGER.info('Getting a list of the devices connected') LOGGER.info('Getting a list of the devices connected')
@@ -126,7 +126,7 @@ class NoiseGate(AudioStream):
def run(self) -> None: def run(self) -> None:
global voice_connection global voice_connection
# Start the audio stream # Start the audio stream
LOGGER.debug(f"Starting stream") LOGGER.debug("Starting stream")
self.stream.start_stream() self.stream.start_stream()
# Start the stream to discord # Start the stream to discord
self.core() self.core()
@@ -139,15 +139,15 @@ class NoiseGate(AudioStream):
time.sleep(.2) time.sleep(.2)
if not voice_connection.is_playing(): if not voice_connection.is_playing():
LOGGER.debug(f"Playing stream to discord") LOGGER.debug("Playing stream to discord")
voice_connection.play(self.NGStream, after=self.core) voice_connection.play(self.NGStream, after=self.core)
async def close(self): async def close(self):
LOGGER.debug(f"Closing") LOGGER.debug("Closing")
await voice_connection.disconnect() await voice_connection.disconnect()
if self.stream.is_active: if self.stream.is_active:
self.stream.stop_stream() self.stream.stop_stream()
LOGGER.debug(f"Stopping stream") LOGGER.debug("Stopping stream")
# noinspection PyUnresolvedReferences # noinspection PyUnresolvedReferences

View File

@@ -108,6 +108,7 @@ class DiscordBotManager:
del self.voice_clients[guild_id] del self.voice_clients[guild_id]
print(f"Left guild {guild_id} voice channel.") print(f"Left guild {guild_id} voice channel.")
# Initialize Discord Bot Manager # Initialize Discord Bot Manager
bot_manager = DiscordBotManager() bot_manager = DiscordBotManager()

View File

@@ -1,4 +1,4 @@
from fastapi import FastAPI, HTTPException, APIRouter from fastapi import HTTPException, APIRouter
from pydantic import BaseModel from pydantic import BaseModel
from enum import Enum from enum import Enum
import subprocess import subprocess
@@ -6,7 +6,7 @@ import os
import signal import signal
import json import json
import csv import csv
from typing import List, Optional, Union from typing import List, Optional
router = APIRouter() router = APIRouter()
@@ -194,7 +194,7 @@ async def generate_config(generator: ConfigGenerator):
with open('/configs/active.cfg.json', 'w') as f: with open('/configs/active.cfg.json', 'w') as f:
json.dump(del_none_in_dict(config_dict), f, indent=2) json.dump(del_none_in_dict(config_dict), f, indent=2)
return {"message": f"Config exported to '/configs/active.cfg.json'"} return {"message": "Config exported to '/configs/active.cfg.json'"}
except Exception as e: except Exception as e:
raise HTTPException(status_code=500, detail=str(e)) raise HTTPException(status_code=500, detail=str(e))