Skip to content

Commit

Permalink
Merge pull request #45 from fatbob01/patch-1
Browse files Browse the repository at this point in the history
Update plex_update.ps1
  • Loading branch information
yowmamasita authored Jan 23, 2024
2 parents 7dc0a80 + fcdb8f4 commit 66f5985
Showing 1 changed file with 4 additions and 17 deletions.
21 changes: 4 additions & 17 deletions plex_update.ps1
Original file line number Diff line number Diff line change
@@ -1,38 +1,25 @@
# PLEX PARTIAL SCAN script or PLEX UPDATE script
# When zurg detects changes, it can trigger this script IF your config.yml contains
# on_library_update: & { & '.\plex_update.ps1' $args }
Add-Type -AssemblyName System.Web

# this uses python3
# docker compose exec zurg apk add python3
# sudo apt install python3
$plex_url = "http://yourplexip:32400"
$token = "YourPlexTokenHere"
$zurg_mount = "YourZurgMountLetterHere:"

$plex_url = "http://yourplexip:32400" # If you're using zurg inside a Docker container, by default it is 172.17.0.1:32400
$token = "yourplextoken" # open Plex in a browser, open dev console and copy-paste this: window.localStorage.getItem("myPlexAccessToken")
$zurg_mount = "/mnt/zurg" # replace with your zurg mount path, ensure this is what Plex sees

# Get the list of section IDs
$section_ids = (Invoke-WebRequest -Uri "$plex_url/library/sections" -Headers @{"X-Plex-Token" = $token} -Method Get).Content |
Select-Xml -XPath "//Directory/@key" |
ForEach-Object { $_.Node.Value }

foreach ($arg in $args) {
# Construct the full path
$modified_arg = "$zurg_mount/$arg"
Write-Host "Detected update on: $arg"
Write-Host "Absolute path: $modified_arg"

# URL Encode the path
$encoded_arg = [System.Web.HttpUtility]::UrlEncode($modified_arg)

if ([string]::IsNullOrEmpty($encoded_arg)) {
Write-Host "Error: Encoded argument is empty. Check the input or encoding process."
continue
}

# Additional escaping logic here if necessary
# For instance, if certain characters are not being correctly escaped by UrlEncode,
# you can add custom replace commands here.

foreach ($section_id in $section_ids) {
$final_url = "${plex_url}/library/sections/${section_id}/refresh?path=${encoded_arg}&X-Plex-Token=${token}"

Expand Down

0 comments on commit 66f5985

Please sign in to comment.