Release: v2.6.0
This commit is contained in:
@@ -0,0 +1 @@
|
||||
*.sh text eol=lf
|
||||
@@ -126,6 +126,7 @@ nano jobs/mein-stream.job
|
||||
| `MAX_DURATION` | Nein | Aufnahmedauer in Sekunden (wird bei Zeitplanung automatisch aus Endzeit oder Laufzeit berechnet) |
|
||||
| `EXTRA_FFMPEG_ARGS`| Nein | Zusätzliche ffmpeg-Parameter |
|
||||
| `PLIK_ENABLED` | Nein | Plik-Upload aktivieren (`true`/`false`) |
|
||||
| `DELETE_AFTER_UPLOAD` | Nein | Lokale Datei nach erfolgreichem Upload löschen (`true`/`false`) |
|
||||
|
||||
### Zeitplan-Parameter
|
||||
|
||||
|
||||
+26
-4
@@ -8,15 +8,15 @@
|
||||
# Web: https://www.cleveradmin.de
|
||||
# Repository: https://git.techniverse.net/scriptos/stream-recorder.git
|
||||
# License: MIT
|
||||
# Version: v2.5.0
|
||||
# Version: v2.6.0
|
||||
# Date: 06.09.2026
|
||||
# Modifications: Zeitplanung vereinfacht: Endzeit oder Laufzeit statt separater Max-Dauer
|
||||
# Modifications: optionale Dateilöschung nach Upload
|
||||
###############################################
|
||||
|
||||
set -uo pipefail
|
||||
|
||||
readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
readonly VERSION="2.5.0"
|
||||
readonly VERSION="2.6.0"
|
||||
|
||||
# --- Standardwerte (überschreibbar via Konfiguration) ---
|
||||
CONFIG_FILE="${SCRIPT_DIR}/config/stream-recorder.conf"
|
||||
@@ -197,6 +197,11 @@ upload_to_plik() {
|
||||
fi
|
||||
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"
|
||||
}
|
||||
|
||||
@@ -353,6 +358,7 @@ load_job() {
|
||||
SCHEDULE_START=""
|
||||
SCHEDULE_STOP=""
|
||||
PLIK_ENABLED="false"
|
||||
DELETE_AFTER_UPLOAD="false"
|
||||
|
||||
if [[ ! -f "$job_file" ]]; then
|
||||
log "ERROR" "Job-Datei nicht gefunden: ${job_file}"
|
||||
@@ -554,12 +560,18 @@ record_stream() {
|
||||
if [[ $ret -eq 143 || $ret -eq 130 ]]; then
|
||||
log "INFO" "Aufnahme gestoppt: ${STREAM_NAME}"
|
||||
notify "stop" "Aufnahme gestoppt" "${STREAM_NAME} wurde gestoppt"
|
||||
if [[ -s "$output_file" ]]; then
|
||||
upload_to_plik "$output_file" "$STREAM_NAME"
|
||||
fi
|
||||
break
|
||||
fi
|
||||
|
||||
if [[ ! -f "$pid_file" ]]; then
|
||||
log "INFO" "Aufnahme gestoppt: ${STREAM_NAME}"
|
||||
notify "stop" "Aufnahme gestoppt" "${STREAM_NAME} wurde gestoppt"
|
||||
if [[ -s "$output_file" ]]; then
|
||||
upload_to_plik "$output_file" "$STREAM_NAME"
|
||||
fi
|
||||
break
|
||||
fi
|
||||
|
||||
@@ -898,9 +910,14 @@ create_job() {
|
||||
echo ""
|
||||
echo "--- Plik-Upload (optional) ---"
|
||||
local plik_enabled="false"
|
||||
local delete_after_upload="false"
|
||||
if [[ -n "${PLIK_URL:-}" ]]; then
|
||||
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
|
||||
echo " (Übersprungen - PLIK_URL nicht konfiguriert)"
|
||||
fi
|
||||
@@ -940,7 +957,11 @@ create_job() {
|
||||
else
|
||||
echo " Zeitplan: deaktiviert"
|
||||
fi
|
||||
if [[ "$plik_enabled" == "true" && "$delete_after_upload" == "true" ]]; then
|
||||
echo " Plik: ${plik_enabled} (nach Upload löschen)"
|
||||
else
|
||||
echo " Plik: ${plik_enabled}"
|
||||
fi
|
||||
echo ""
|
||||
read -rp "Job erstellen? [J/n] " confirm
|
||||
if [[ "$confirm" =~ ^[Nn]$ ]]; then
|
||||
@@ -976,6 +997,7 @@ SCHEDULE_STOP="${sched_stop}"
|
||||
###############################################
|
||||
|
||||
PLIK_ENABLED=${plik_enabled}
|
||||
DELETE_AFTER_UPLOAD=${delete_after_upload}
|
||||
JOBEOF
|
||||
|
||||
echo ""
|
||||
|
||||
Reference in New Issue
Block a user