Release: v2.6.0

This commit is contained in:
Patrick Asmus
2026-09-06 18:53:08 +02:00
parent 3f2114217f
commit 16ee4ab669
3 changed files with 29 additions and 5 deletions
+1
View File
@@ -0,0 +1 @@
*.sh text eol=lf
+1
View File
@@ -126,6 +126,7 @@ nano jobs/mein-stream.job
| `MAX_DURATION` | Nein | Aufnahmedauer in Sekunden (wird bei Zeitplanung automatisch aus Endzeit oder Laufzeit berechnet) | | `MAX_DURATION` | Nein | Aufnahmedauer in Sekunden (wird bei Zeitplanung automatisch aus Endzeit oder Laufzeit berechnet) |
| `EXTRA_FFMPEG_ARGS`| Nein | Zusätzliche ffmpeg-Parameter | | `EXTRA_FFMPEG_ARGS`| Nein | Zusätzliche ffmpeg-Parameter |
| `PLIK_ENABLED` | Nein | Plik-Upload aktivieren (`true`/`false`) | | `PLIK_ENABLED` | Nein | Plik-Upload aktivieren (`true`/`false`) |
| `DELETE_AFTER_UPLOAD` | Nein | Lokale Datei nach erfolgreichem Upload löschen (`true`/`false`) |
### Zeitplan-Parameter ### Zeitplan-Parameter
+27 -5
View File
@@ -8,15 +8,15 @@
# Web: https://www.cleveradmin.de # Web: https://www.cleveradmin.de
# Repository: https://git.techniverse.net/scriptos/stream-recorder.git # Repository: https://git.techniverse.net/scriptos/stream-recorder.git
# License: MIT # License: MIT
# Version: v2.5.0 # Version: v2.6.0
# Date: 06.09.2026 # Date: 06.09.2026
# Modifications: Zeitplanung vereinfacht: Endzeit oder Laufzeit statt separater Max-Dauer # Modifications: optionale Dateilöschung nach Upload
############################################### ###############################################
set -uo pipefail set -uo pipefail
readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
readonly VERSION="2.5.0" readonly VERSION="2.6.0"
# --- Standardwerte (überschreibbar via Konfiguration) --- # --- Standardwerte (überschreibbar via Konfiguration) ---
CONFIG_FILE="${SCRIPT_DIR}/config/stream-recorder.conf" CONFIG_FILE="${SCRIPT_DIR}/config/stream-recorder.conf"
@@ -197,6 +197,11 @@ upload_to_plik() {
fi fi
notify "upload" "Plik-Upload" "${stream_name}: ${browser_url}" notify "upload" "Plik-Upload" "${stream_name}: ${browser_url}"
if [[ "${DELETE_AFTER_UPLOAD:-false}" == "true" ]]; then
rm -f "$file"
log "INFO" "Lokale Datei gelöscht: ${file}"
fi
echo "$browser_url" echo "$browser_url"
} }
@@ -353,6 +358,7 @@ load_job() {
SCHEDULE_START="" SCHEDULE_START=""
SCHEDULE_STOP="" SCHEDULE_STOP=""
PLIK_ENABLED="false" PLIK_ENABLED="false"
DELETE_AFTER_UPLOAD="false"
if [[ ! -f "$job_file" ]]; then if [[ ! -f "$job_file" ]]; then
log "ERROR" "Job-Datei nicht gefunden: ${job_file}" log "ERROR" "Job-Datei nicht gefunden: ${job_file}"
@@ -554,12 +560,18 @@ record_stream() {
if [[ $ret -eq 143 || $ret -eq 130 ]]; then if [[ $ret -eq 143 || $ret -eq 130 ]]; then
log "INFO" "Aufnahme gestoppt: ${STREAM_NAME}" log "INFO" "Aufnahme gestoppt: ${STREAM_NAME}"
notify "stop" "Aufnahme gestoppt" "${STREAM_NAME} wurde gestoppt" notify "stop" "Aufnahme gestoppt" "${STREAM_NAME} wurde gestoppt"
if [[ -s "$output_file" ]]; then
upload_to_plik "$output_file" "$STREAM_NAME"
fi
break break
fi fi
if [[ ! -f "$pid_file" ]]; then if [[ ! -f "$pid_file" ]]; then
log "INFO" "Aufnahme gestoppt: ${STREAM_NAME}" log "INFO" "Aufnahme gestoppt: ${STREAM_NAME}"
notify "stop" "Aufnahme gestoppt" "${STREAM_NAME} wurde gestoppt" notify "stop" "Aufnahme gestoppt" "${STREAM_NAME} wurde gestoppt"
if [[ -s "$output_file" ]]; then
upload_to_plik "$output_file" "$STREAM_NAME"
fi
break break
fi fi
@@ -898,9 +910,14 @@ create_job() {
echo "" echo ""
echo "--- Plik-Upload (optional) ---" echo "--- Plik-Upload (optional) ---"
local plik_enabled="false" local plik_enabled="false"
local delete_after_upload="false"
if [[ -n "${PLIK_URL:-}" ]]; then if [[ -n "${PLIK_URL:-}" ]]; then
read -rp "Plik-Upload aktivieren? [j/N] " plik_input read -rp "Plik-Upload aktivieren? [j/N] " plik_input
[[ "$plik_input" =~ ^[JjYy]$ ]] && plik_enabled="true" if [[ "$plik_input" =~ ^[JjYy]$ ]]; then
plik_enabled="true"
read -rp "Lokale Datei nach Upload löschen? [j/N] " delete_input
[[ "$delete_input" =~ ^[JjYy]$ ]] && delete_after_upload="true"
fi
else else
echo " (Übersprungen - PLIK_URL nicht konfiguriert)" echo " (Übersprungen - PLIK_URL nicht konfiguriert)"
fi fi
@@ -940,7 +957,11 @@ create_job() {
else else
echo " Zeitplan: deaktiviert" echo " Zeitplan: deaktiviert"
fi fi
echo " Plik: ${plik_enabled}" if [[ "$plik_enabled" == "true" && "$delete_after_upload" == "true" ]]; then
echo " Plik: ${plik_enabled} (nach Upload löschen)"
else
echo " Plik: ${plik_enabled}"
fi
echo "" echo ""
read -rp "Job erstellen? [J/n] " confirm read -rp "Job erstellen? [J/n] " confirm
if [[ "$confirm" =~ ^[Nn]$ ]]; then if [[ "$confirm" =~ ^[Nn]$ ]]; then
@@ -976,6 +997,7 @@ SCHEDULE_STOP="${sched_stop}"
############################################### ###############################################
PLIK_ENABLED=${plik_enabled} PLIK_ENABLED=${plik_enabled}
DELETE_AFTER_UPLOAD=${delete_after_upload}
JOBEOF JOBEOF
echo "" echo ""