summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xgetpix.sh84
-rwxr-xr-xsendpix.sh19
2 files changed, 48 insertions, 55 deletions
diff --git a/getpix.sh b/getpix.sh
index 43520ca..cc8567a 100755
--- a/getpix.sh
+++ b/getpix.sh
@@ -4,56 +4,68 @@
# Copy and process photos from a cam-equipped raspi
########### Constants ##################
-campi="neatherd" # hard-code source hostname for the moment
+# campi="neatherd" # hard-code source hostname for the moment
+wanWebServer="f3rr3t.com"
sourcedir="/home/st33v/pix" # where the image is on the source computer (i.e. $campi)
thisdir="/home/st33v/cams" # this directory (on this computer)
-threshold="2000" # minimum value of average pixel brightness. Tests if pic is too dark
+threshold="2000" # minimum value of average pixel brightness. Tests if pic is too dark
########### end Consts ################
-cd ${thisdir}
+# cam names in an array:
+declare -a camz=("neatherd" "lucerne")
+
+
########### Functions ##################
# get the filename of the most recent photo stored on this computer.
newestpicfunc () { newestpic=$(ls ${campi}/*.jpg -t | head -1); }
########### end Funcs #################
-# record the latest photo BEFORE we look for a new one
-newestpicfunc; oldpic=${newestpic}
-# echo "Before: oldpic is ${oldpic}"
+cd ${thisdir}
+
+for campi in "$camz[@]}"
+do
+ {
+ # record the latest photo BEFORE we look for a new one
+ newestpicfunc; oldpic=${newestpic}
+ # echo "Before: oldpic is ${oldpic}"
+
+ # Copy any photos from the camera-equipped source ($campi)
+ # This script is on a rapid timer so there should only ever be one photo (if any).
+ scp ${campi}:${sourcedir}/*.jpg ${campi}/. 2>/dev/null
+ # Delete the photo from the source computer.
+ ssh $campi "rm ${sourcedir}/*.jpg" 2>/dev/null
+ # cp ${oldpic} ${thisdir}${campi}/zzz.jpg # testing
-# Copy any photos from the camera-equipped source ($campi)
-# This script is on a rapid timer so there should only ever be one photo (if any).
-scp ${campi}:${sourcedir}/*.jpg ${campi}/. 2>/dev/null
-# Delete the photo from the source computer.
-ssh $campi "rm ${sourcedir}/*.jpg" 2>/dev/null
-# cp ${oldpic} ${thisdir}${campi}/zzz.jpg # testing
+ # get the filename of the NEW photo, it there is one
+ newestpicfunc; newpic=${newestpic}
+ #echo "After: newpic is ${newpic}"
-# get the filename of the NEW photo, it there is one
-newestpicfunc; newpic=${newestpic}
-#echo "After: newpic is ${newpic}"
+ if [[ "$oldpic" == "$newpic" ]] ; then
+ # echo no new photos so exit now
+ exit 0
+ fi
-if [[ "$oldpic" == "$newpic" ]] ; then
- # echo no new photos so exit now
- exit 0
-fi
+ # NeatHerd doesn't have enough RAM to perform image processing, so let's try it on STAN
-# NeatHerd doesn't have enough RAM to perform image processing, so let's try it on STAN
+ # Check to see if the pic is too dark (i.e. taken at night)
+ mean=$(identify -format %[mean] ${newpic} | sed s/[.].*//)
+ # echo "mean is |$mean|"
+ # too dark (nighttime)
+ if [[ "${mean}" -lt "${threshold}" ]] ; then
+ rm $newpic
+ # echo mean of $mean is too low. It is nighttime.
+ exit 13
+ fi
-# Check to see if the pic is too dark (i.e. taken at night)
-mean=$(identify -format %[mean] ${newpic} | sed s/[.].*//)
-# echo "mean is |$mean|"
-# too dark (nighttime)
-if [[ "${mean}" -lt "${threshold}" ]] ; then
- rm $newpic
-# echo mean of $mean is too low. It is nighttime.
- exit 13
-fi
+ # Improve sharpness and resize photo, ready for upload to webserver
+ # Break into two steps to avoid out-of-memory errors (OS kills process)
+ convert ${newpic} -unsharp 1.5x1+0.7+0.02 temp.jpg
+ convert temp.jpg -resize 33% -quality 70 ${newpic}
+ rm temp.jpg
-# Improve sharpness and resize photo, ready for upload to webserver
-# Break into two steps to avoid out-of-memory errors (OS kills process)
-convert ${newpic} -unsharp 1.5x1+0.7+0.02 temp.jpg
-convert temp.jpg -resize 33% -quality 70 ${newpic}
-rm temp.jpg
-
-. ~/cams/sendpix.sh
+ scp /home/st33v/cams/$campi/$newpic $wanWebServer:/home/st33v/farm/cam/$campi/.
+ }
+done
+#. ~/cams/sendpix.sh
#exit(0) # force success exit code for fussy systemd
diff --git a/sendpix.sh b/sendpix.sh
deleted file mode 100755
index e597d6f..0000000
--- a/sendpix.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/bash
-# SJP 22 Feb 2016
-#
-# Send (copy) webcam pix from master repository (on the LAN) to remote computer with web server.
-# This script is to be called from a systemd timer.
-
-# The name of the system that has the webcamn attached.
-# While this is presently hard-coded, we can abstract this for laster iterations when there are more than one cam.
-campi="neatherd"
-# remote server
-wanWebServer="f3rr3t.com"
-
-# select the most recent pic
-newpic=$(ls -t ~/cams/$campi/ | head -1 )
-
-scp /home/st33v/cams/$campi/$newpic $wanWebServer:/home/st33v/farm/cam/$campi/.
-
-
-#exit(0) # force succes exit code for fussy systemd