#!/bin/bash DIRNAME=$(dirname "$0") REALPATH=$(realpath "$DIRNAME") INTERVAL="10" FAILURE_PAUSE="10" IMAGE_PATH="$REALPATH/images/0-CURRENT" BASE_URL="https://fotobox.online/upload" #BASE_URL="http://fotobox.online:8888/upload" #BASE_URL="http://10.50.0.30:8888/upload" FOTOBOX_ID="B8:27:EB:AA:C9:8F" FOTOBOX_KEY="eDAOMohrcJY3" while true; do date=$(date +'%Y-%m-%d %H:%M:%S') cd "$IMAGE_PATH" mkdir "todo" 2> /dev/null mkdir "upload" 2> /dev/null mkdir "lowres" 2> /dev/null cd "$IMAGE_PATH/todo" todos="$(find . -maxdepth 1 -type f -name '*.jpg')" if [ "$todos" != "" ]; then echo "$date: converting:" for todo in $todos; do echo -n " - '$todo' ... " ( convert "$todo" -resize 1000x -quality 0.7 "../lowres/$todo" && cp "../lowres/$todo" "../upload/$todo" && rm -f "$todo" && echo "OK" ) || echo "ERROR" done echo "" fi cd "$IMAGE_PATH/upload" uploads="$(find . -maxdepth 1 -type f -name '*.jpg')" if [ "$uploads" != "" ]; then echo "$date: uploading:" for upload in $uploads; do echo -n " - '$upload' ... " timestamp_fotobox=$(date +'%Y-%m-%dT%H:%M:%S.%N%z') timestamp_shot=$(basename "$upload" | sed 's|.jpg||g') url="$BASE_URL/$FOTOBOX_ID/$FOTOBOX_KEY/$timestamp_fotobox/$timestamp_shot/" result=$(curl -s --form "image=@$upload" "$url" 2>&1) echo "$result" if [ "$result" == "OK" ]; then rm -f "$upload" else sleep $FAILURE_PAUSE fi done echo "" fi # SLEEP sleep $INTERVAL done