plex-tools/plex-freshen.sh
deathbybandaid dad2cad2c4 test
2023-03-14 14:16:18 -04:00

46 lines
1.4 KiB
Bash

#!/bin/sh
update_from_cli() {
# ChuckPa already wrote a great function for getting host info
source ./HostConfig.sh
echo "Getting Host Information"
HostConfig
plex_scanner_location="$PKGDIR/Plex Media Scanner"
echo "Getting Plex Library list"
echo $("$plex_scanner_location" --list)
exit
}
update_from_api() {
# get plex token
source ./plex-token.sh
# run a loop against each library
for library_number in `curl -s -H "Accept: application/json" -H "X-Plex-Token: ${LOCAL_PLEX_TOKEN}" http://127.0.0.1:32400/library/sections | jq -M -r '.MediaContainer.Directory[] | "\(.key)"'`
do
echo "Running Library Update and metadata refresh for key: ${library_number}"
curl -X PUT http://127.0.0.1:32400/library/sections/${library_number}/refresh\?force=1\&X-Plex-Token=${LOCAL_PLEX_TOKEN}
echo "Emptying Trash for key: ${library_number}"
curl -X PUT http://127.0.0.1:32400/library/sections/${library_number}/emptyTrash\?X-Plex-Token=${LOCAL_PLEX_TOKEN}
done
echo "Cleaning Bundles"
curl -X PUT http://127.0.0.1:32400/library/clean/bundles?X-Plex-Token=${LOCAL_PLEX_TOKEN}
}
case "$2" in
cli) update_from_cli;;
""|api) update_from_api;;
*) echo "'$2' is not a valid plex-tools freshen command";;
esac
# clean PhotoTranscoder Cache
#echo "Deleting PhotoTranscoder Cache"
#CACHEPATH="$AppSuppDir/Plex Media Server/Cache/PhotoTranscoder"
#find "${CACHEPATH}" -type f -delete