disabilitato il merge dei sottotitoli, migliorata la gestione degli script scaduti e rimosso il file scripts.json

This commit is contained in:
GiuDev 2025-02-04 20:17:43 +01:00
parent 9f616b11bf
commit 764f938bd8
3 changed files with 24 additions and 23 deletions

View File

@ -35,7 +35,7 @@
"specific_list_audio": [ "specific_list_audio": [
"ita" "ita"
], ],
"merge_subs": true, "merge_subs": false,
"specific_list_subtitles": [ "specific_list_subtitles": [
"eng", "eng",
"spa" "spa"

View File

@ -62,24 +62,33 @@ class TelegramBot:
current_time = time.time() current_time = time.time()
# Crea una nuova lista senza gli script che sono scaduti # Crea una nuova lista senza gli script che sono scaduti o le screen che non esistono
scripts_data_to_save = [] scripts_data_to_save = []
for script in scripts_data: for script in scripts_data:
if "titolo" not in script and script["status"] == "running" and (current_time - script["start_time"]) > 600: screen_exists = False
# Prova a terminare la sessione screen try:
try: existing_screens = subprocess.check_output(["screen", "-list"]).decode('utf-8')
subprocess.check_output(["screen", "-S", script["screen_id"], "-X", "quit"]) if script["screen_id"] in existing_screens:
print(f"✅ La sessione screen con ID {script['screen_id']} è stata fermata automaticamente.") screen_exists = True
except subprocess.CalledProcessError: except subprocess.CalledProcessError:
print(f"⚠️ Impossibile fermare la sessione screen con ID {script['screen_id']}.") pass # Se il comando fallisce, significa che non ci sono screen attivi.
# Aggiungi solo gli script che non sono scaduti if screen_exists:
print(f"⚠️ Lo script con ID {script['screen_id']} ha superato i 10 minuti e verrà rimosso.") if "titolo" not in script and script["status"] == "running" and (current_time - script["start_time"]) > 600:
# Prova a terminare la sessione screen
try:
subprocess.check_output(["screen", "-S", script["screen_id"], "-X", "quit"])
print(f"✅ La sessione screen con ID {script['screen_id']} è stata fermata automaticamente.")
except subprocess.CalledProcessError:
print(f"⚠️ Impossibile fermare la sessione screen con ID {script['screen_id']}.")
print(f"⚠️ Lo script con ID {script['screen_id']} ha superato i 10 minuti e verrà rimosso.")
else:
scripts_data_to_save.append(script)
else: else:
scripts_data_to_save.append(script) print(f"⚠️ La sessione screen con ID {script['screen_id']} non esiste più e verrà rimossa.")
# Salva la lista aggiornata, senza gli script scaduti # Salva la lista aggiornata, senza gli script scaduti o le screen non esistenti
with open("../../scripts.json", "w") as f: with open("../../scripts.json", "w") as f:
json.dump(scripts_data_to_save, f, indent=4) json.dump(scripts_data_to_save, f, indent=4)

View File

@ -1,8 +0,0 @@
[
{
"screen_id": "cfd83841",
"start_time": 1738682482.202467,
"status": "running",
"user_id": 676749122
}
]