#!/bin/bash TEMPDIR=/tmp/scanner/ RET_SCAN=0 RET_MAGICK=-1 FILENAME="UNDEFINED" #DEVICE=utsushi:esci:usb:0x04B8:0x110B DEVICE="utsushi:esci:usb:/sys/devices/pci0000:00/0000:00:08.3/0000:13:00.0/usb7/7-1/7-1.2/7-1.2:1.0" function sendPaperless() { TOKEN=$(pass show paperless/api-token 2>/dev/null) curl -X POST \ --url https://5ccppi.org:8080/api/documents/post_document/ \ --header "Authorization: token $TOKEN" \ -F "document=@$1" echo "curl: " $? } if [ ! -d "$TEMPDIR" ]; then echo "create tempdir as it does not exist" mkdir $TEMPDIR echo "mkdir returned: " $? fi if [ -d "$TEMPDIR" ]; then scanimage --tl-x 7 -d $DEVICE --batch="$TEMPDIR/out%d.pnm" \ --source=ADF \ --resolution=200 RET_SCAN=$? echo "scanimage retured:" $RET_SCAN else echo "$TEMPDIR does not exist and could not be created" fi #scanimage error 1, 2 #returns on success also 2 if [ $RET_SCAN == 2 ]; then DATE=$(date +scan_%F-%s) FILENAME="$TEMPDIR/$DATE.pdf" magick -compress jpeg -quality 60 -density 150 "$TEMPDIR/out*.pnm" $FILENAME RET_MAGICK=$? for pnmFile in "$TEMPDIR/out*.pnm" do echo "remove temporary pnm files in $TEMPDIR" rm $pnmFile done fi if [ $RET_MAGICK == 0 ]; then echo "magick sucessful converted $FILENAME" sendPaperless $FILENAME xdg-open $FILENAME else echo -e "ERROR: magick returned: " $RET_MAGICK " there sems to be nothing to do\n is the paper inserted?" fi