Skip to content

Installation on Windows

Marc Herschel edited this page Feb 12, 2023 · 10 revisions

This article will show you how to get this to run on your system (hopefully!).

If you find this too complicated or inconvenient check out the GUI that is discussed here.

Prequesites

Check Java

1.) WIN+R -> cmd -> run "java -version" command

  • If the version reported is >= 11 we don't need to update Java.

  • If the version says something like 1.8/1.7/1.6/9/10 or reports the command to not exist we definetly need Java!

Java 11+ can be downloaded here! The installer will take care of everything else.

Downloading the tool

1.) You will need to download the latest release and place it somewhere!

  • Latest release can be downloaded here.

  • You need the UpdateTool-XXX.jar. When this tutorial was updated it was named UpdateTool-1.3.9.jar.

Running the tool on your system

You sadly can't run it by just clicking it. Because the tool is mainly run from docker containers it gets all of its configuration values from the environment variables.

To simulate that on your system you will need to create a .bat file to start it.

  • lets name the bat file runTool.bat

  • it needs to be in the same folder as the UpdateTool-XXX.

We write these lines into the runTool.bat file:

set PLEX_DATA_DIR=C:\Users\myntt\Dev\resources\Plex Media Server

Set your Plex Media Server folder here (my path here will probably not be Plex path on your system)! This is the folder that contains a folder named 'Plug-in Support'.

This article helps you to find it as well!

java -jar UpdateTool-1.3.9.jar imdb-docker {schedule=12}

This launches the tool! Be aware that UpdateTool-1.3.9.jar is the version used when this was written. It might be different when you read this in the future and you will have to change the filename! The schedule=12 part specifies that the task imdb-docker is repeated every 12h.

So our file looks like this:

set PLEX_DATA_DIR=C:\Users\myntt\Dev\resources\Plex Media Server
java -jar UpdateTool-1.3.9.jar imdb-docker {schedule=12}

This grants us basic functionality!

The following two variables are optional. They are not required to run the tool but will enhance its usefulness!

1.) TMDB <=> IMDB Matching

Some movies don't use the IMDB agent but still display IMDB ratings. To refresh the ratings the TMDB id gets converted to an IMDB id. This requires to use the TMDB API and thus you need a TMDB API Key (v3 auth).

We can then add this line before the java command:

set TMDB_API_KEY=abcefhjijklmnopqrstuvwxyz

Replace the abcdefgh... with your own key!

Our file now looks like this:

set PLEX_DATA_DIR=C:\Users\myntt\Dev\resources\Plex Media Server
set TMDB_API_KEY=abcefhjijklmnopqrstuvwxyz
java -jar UpdateTool-1.3.9.jar imdb-docker {schedule=12}

2.) Enable updating also for TV Shows

This will also attempt to update IMDB ratings for TV Shows. It utelises the TVDB API and resolves the IMDB id from there. Some items won't have an IMDB id and will result in a warning. These warnings are blacklisted for 14 days so they will only appear once if you run the tool the first time to not spam the TVDB API (after 14 days an attempt to fetch them will be made again).

The tool uses aired season / aired episodes to determine which IMDB id to resolve. If you use the DVD order for some reasons let me know and I create a patch that lets you switch between the two. Default Plex behavior is to use aired season / aired episode tho!

Add this line:

set TVDB_API_KEY=anwfnawnfaiwjfaiwjfaijwfjj

Get your key here: TVDB API Key

So our file looks like this and we use the full functionality of the tool!

set PLEX_DATA_DIR=C:\Users\myntt\Dev\resources\Plex Media Server
set TMDB_API_KEY=abcefhjijklmnopqrstuvwxyz
set TVDB_API_KEY=anwfnawnfaiwjfaiwjfaijwfjj
java -jar UpdateTool-1.3.9.jar imdb-docker {schedule=12}

You can then run the tool by clicking your created bat file and it will tell you the status via the console and write a log file as well!

You can either leave the tool running or kill it once you read this as the last line in the console:

Invoking next task or going to sleep. It is safe to suspend execution if no other task is being invoked immediately.