26 lines
735 B
Bash
26 lines
735 B
Bash
#!/bin/bash
|
|
|
|
# {{ ansible_managed }}
|
|
|
|
set -eu
|
|
|
|
host={{ lookup('passwordstore', 'bambulab subkey=host') }}
|
|
pass={{ lookup('passwordstore', 'bambulab subkey=key') }}
|
|
dir={{ photos_path }}
|
|
|
|
files=$(curl -ksl "ftps://bblp:$pass@$host:990/timelapse/" | grep ^video_)
|
|
|
|
for file in $files; do
|
|
# $file is formatted like 'video_2024-06-27_22-50-12.mp4'
|
|
echo $file
|
|
|
|
day=$(echo $file | sed -nr 's/^video_([0-9]+)-([0-9]+)-([0-9]+)_.*/\1\2\3/p')
|
|
time=$(echo $file | sed -nr 's/^video_[^_]+_([^\.]+)\.mp4/\1/p')
|
|
ofile="$dir/$day/bambu_timelapse_$time.mp4"
|
|
echo $ofile
|
|
|
|
if [ ! -e "$ofile" ]; then
|
|
mkdir -p "$(dirname $ofile)"
|
|
curl -ks "ftps://bblp:$pass@$host:990/timelapse/$file" -o "$ofile"
|
|
fi
|
|
done
|