Enable scrobbling from multiple Plex users to the same trakt account

Problem: Most of the Plex population users a master account with a pin to manage their server, but a managed user for general viewing. Trakt does not include items watched by the managed users in its scrobbling.

Solution: Add an option in the browser interface to specify which users by name of ID to accept scrobbling from.

Alternative: someone creates a scrobble proxy that would let us modify the JSON data and/or relay the webhook once it has been modified to make the trakt server accept it as the main user.

Questions: What specific piece of the JSON payload is the scrobble server using to determine if the webhook is accepted or not?

Breakdown:

Because webhooks are a Plex server side function and aren’t user specific, they trigger for every user. Plex expects the receiver of the webhook to do any filtering on whether or not to pay attention to the notification.

Here’s an example from the Plex Media Server.log file showing what happens on its side when the main Plex user triggers a webhook vs when a managed user does it.

Successful Scrobble from main plex user
successful-scrobble

Unsuccessful Scrobble from managed user
unsuccessful-scrobble

Based on the example from the plex support article on webhooks:

it’s clear that the payload is including “Account” information identifying the user ID, name and thumbnail. Which tells me that the Trakt side of things has to be rejecting things BASED on that account information. Otherwise our trakt history would be full of all of our shared user’s viewings.

So the question is 1) which data from the JSON file is being used to determine if it should accept the scrobble, and 2) what’s the best way to accomplish scrobbling for multiple accounts.

I used a third party website to capture some JSON payloads of a few webhooks and found that there seems to be only one distinct difference between events triggered by the main account and managed users/shared users

The managed user or share user includes: "user":false

While the master account includes: "user":true

Both instances include the “Account” data which include an ID , name, title, and thumbnail. Which means all of the relevant data is present. I’m assuming that the “user” true/false flag is likely one of the determining fields used to decide if the data should be recorded on the trakt user or not since at no point does trakt ask for the plex user ID or account name (presented as “title” in the data).

What I propose is to add a text box to the scrobble settings page in the web interface to specify the name of the users that might appear in the JSON data as the “title” to determine if it should accept.

I recognize that this would add some additional filtering and therefore processing requirements on the scrobbling server side, but I think the system would overall gain a lot more acceptance with this ability in place. I know that I personally can’t make use of it in its current form and will have to stick with a 3rd party API tool for the time being.

Thoughts?

This is a good idea. I’ll look into it more next week, but it sounds like something we should be able to do.

1 Like

Hey great. Let me know any way I can help out. Testing, use cases, etc.

Thanks!

1 Like

I’ll have an update out later this week to allow additional Plex usernames to scrobble to your account.

1 Like

Outstanding! That was fast.

I look forward to testing it out.

This is live, let me know how it works for you.

Just put the scrobble back in place and added my managed user. Initial test showed status for something being played on the trakt dashboard. So far so good. I’m going to disable my other scrobble/sync tool and run for a day or two. I’ll throw up a confirmation of feed back after some detailed testing.

Thanks!

Quick followup after a couple of days. This appears to be working perfectly. Thanks so much for jumping on this so quick.