Configuration
Services
Leave the '4K' environmental variables as is if running only one instance of either Radarr, Sonarr or Bazarr.
Overr-Syncerr supports 2 instances of each Radarr, Sonarr and Bazarr service - 4K and non-4K.
The examples below focus on the non-4K, but the process is the same in both cases.
Configuration:
Replace the placeholder text with your Radarr instance IP address and API key.
You can find your API key navigating to Settings -> General -> API Keyin you Radarr instance.
Ensure that you have entered the correct information, especially the URL.
Examples:
RADARR_URL: "http://192.168.0.101:7878/api/v3"
RADARR_URL: "http://192.168.0.101:7878/"
Plex
You have to provide:
Plex server URL
Plex Authentication Token
Plex server cleint identifier (used for setting audio tracks & and fething users access tokens)
You can find your authentication token by following the Finding an authentication token / X-Plex-Token guide. After you've got your auth token, you can use it to find your cleintIdentifier by going to - https://plex.tv/api/resources?X-Plex-Token={your_admin_token}.
You will get an XML response where you need to copy the clientIdentifier that is associated with your Plex sever.
Plex Libraries
Overr-Syncerr assumes that you have the following library layout:
Movies
TV
Anime
Replace the library placeholder names in the docker-compose
with the names of your own libraries.
Language Map
The language map is used to associate keywords to your 'Subtitle Language' profile in Bazarr to communicate which subtitle language needs to be synced or translated. Using the provided language map as example, add your own keywords and languages. You can add as many keywords as needed.
You can't map a language that is not already present in your language profile in Bazarr.
Keywords
In order to send a 'sync' request to Bazarr, Overr-Syncerr will look for any of the following keywords in message contained in the payload.
Using the provided list as example, create your own list of 'sync' keywords:
Labelling
Overr-Syncerr can auto-label media with the username of the requester and can also enable users to add their User-Label to media that's been requested by other users and is available in your library.
There are two types of 'auto-abelling': Media Available
and Request Monitoring
Media Available
Will trigger once Overseerr/Jellyseerr has picked up the media as being available on the Plex server and apply the lable to it. This function is disabled by default and can be enabled by changing the Media Available variable to 'true'.
Request Monitoring
Will trigger at a given interval, scan all requests for ones that are either available or partially available and apply the label of the requester if missing. This functions is useful in the case where series are missing episodes in a requested season, which doesn't trigger the 'Media Available' response from Overseerr/Jellyseerr as it technically isn't; however, the episodes will still appear in your Plex library (unlabeled). This is especially true when there are unaired episodes in a season.
To have the labels being automatically added, enable the 'MONITOR_REQUEST
' function and set an interval (in seconds) for how often you'd like Overr-Syncerr to check the status of your requests by using 'CHECK_REQUEST_INTERVAL
'.
Request Monitoring runs every X amount of seconds, while Media Available is triggered as soon as the media is marked as such in Overseerr/Jellyseerr.
User Audio Preference
Upon initial boot, Overr-Syncerr will generate 2 JSON files:
user_token.json - list of usernames and their corresponding tokens
user_audio_pref.json - list of usernames, audio tracks in order of priroty (highest to lowest)
Example of user_audio_pref:
Once media becomes available, Overr-Syncerr will compare the available audio tracks with the user's preferred options. The selection process follows these steps:
First, it tries to match an audio track based on the preferred language.
If no match is found, it looks for a track that matches the preferred codec and channel count.
If neither of the above criteria is met, the system assigns the default audio track for that media.
Kometa
To trigger Kometa automatically when media becomes available, you will have to configure the following:
You will also have to add this to your list of volumes in the docker-compose to interact with the Kometa docker container:
GPT Translation
By default, Bazarr uses Google API to perform subtitle translation; however, if you have an OpenAI API key, you can take advantage of ChatGPTs translation capabilities.
You can use any gpt model that you would like and I've had great success with the below values. You will also have to mount and map the directories where Bazarr stores subtitles as GPT will not be abble to access the files for processing.
Webhook
To finish configuring Overr-Syncerr, do the following in Overseerr/Jellyseerr:
Settings -> Notifications -> Webhook
Enable the webhook agent and paste the webhook URL http://your-ip-address:your-port/ into the Webhook URL field
Make sure 'Issue Reported' is ticked
If you have enabled 'auto-labelling', make sure 'Request Available' is ticked as well
Test the webhook agent
If you get a 'Webhook test notification sent!' response, they everything is correctly configured
Save
Last updated
Was this helpful?