Files
scripts/scan
2025-12-05 14:00:28 +01:00

59 lines
1.5 KiB
Bash
Executable File

#!/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