Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Tag-Based Content Filtering System in Blacklist Settings #1076

Open
1 task done
Molier opened this issue Nov 6, 2024 · 14 comments · May be fixed by #1306
Open
1 task done

Add Tag-Based Content Filtering System in Blacklist Settings #1076

Molier opened this issue Nov 6, 2024 · 14 comments · May be fixed by #1306
Labels
awaiting triage This issue needs to be reviewed enhancement New feature or request

Comments

@Molier
Copy link

Molier commented Nov 6, 2024

Description

The current adult content filtering system relies solely on TMDB's "adult" tag, which often misses content that should be filtered, especially for family-friendly environments. While the recently introduced blacklist feature allows blocking individual titles, a more comprehensive solution is needed for proactive filtering.

Desired Behavior

  • Add a configurable tag blacklist system in the blacklist settings, fe: blacktags ?

  • Allow administrators to specify TMDB tags to filter (e.g., "sexploitation", "erotic", "softcore")

  • Apply these filters across all discovery sections (Movies, TV Shows, Trending, etc.)

  • Option to enable/disable the tag filter system globally

  • Ability to export/import tag lists for easy sharing of curated filters

Additional Context

This would build upon the existing single-item blacklist feature, offering a more scalable solution for content filtering. The TMDB API already exposes these tags, as evidenced in the example: https://www.themoviedb.org/movie/37265 where tags like "erotic" are present but not caught by the current adult filter.
see #460 for more.

          **parallel topic / feature request @ overseer:** https://github.com/sct/overseerr/issues/3533

From this discussion it seems like TMDB does have something for that in their api:

https://www.themoviedb.org/talk/606da6c698f1f10029694d78

Quickly looking up the API reference for /discover-movie there seem to be parameters for that too ... e.g. include_adult or certification_country

https://developer.themoviedb.org/reference/discover-movie

Certifications for all Countries can be gotten here

https://developer.themoviedb.org/reference/certification-movie-list

Response: certifications.json


So all in all ... shouldn't this allow for a proper filter?

Not by tags but actually by country & age ratings (=certifications) for both movies and TV-Shows ...


As for the UI/Settings in regard to the Limits - you could basically take the values from the Parental Control settings in Jellyfin for that - or?

image

(Sorry for the German Screenshot ...)

Originally posted by @thiscantbeserious in #460 (comment)

Code of Conduct

  • I agree to follow Jellyseerr's Code of Conduct
@Molier Molier added awaiting triage This issue needs to be reviewed enhancement New feature or request labels Nov 6, 2024
@Molier Molier changed the title Add Tag-Based Content Filtering System in Discovery Settings Add Tag-Based Content Filtering System in Blacklist Settings Nov 6, 2024
@gauthier-th
Copy link
Collaborator

gauthier-th commented Nov 6, 2024

This looks like a duplicate of #1048?
I misread sorry

@devanteweary
Copy link

Let me add to this request.

Can we also have it to where we can filter from the admin side?
For instance, I have a kid who I allow to request stuff but I'd love to be able to hide anything above a PG-13 rating for them without them being able to disable it.

@fallenbagel
Copy link
Owner

Let me add to this request.

Can we also have it to where we can filter from the admin side?

What do you mean? Hide blacklisted items on admin account?

@devanteweary
Copy link

Let me add to this request.
Can we also have it to where we can filter from the admin side?

What do you mean? Hide blacklisted items on admin account?

No I mean as an admin, I want to blacklist anything above PG-13 for some of my users.
And I don't want them to even know they are missing movies.

Hope that makes sense!

Here's a similar function in Plex:

image

@fallenbagel
Copy link
Owner

Let me add to this request.
Can we also have it to where we can filter from the admin side?

What do you mean? Hide blacklisted items on admin account?

No I mean as an admin, I want to blacklist anything above PG-13 for some of my users.
And I don't want them to even know they are missing movies.

Thats how blacklist works even now..
the blacklisting is admin side (blacklist manage permission)..

@devanteweary
Copy link

Thats how blacklist works even now.. the blacklisting is admin side (blacklist manage permission)..

Oooooh OK I thought each user got their own blacklist.

OK so I messed around with it and looks like the Blacklist is for all users and it's a blacklist for whatever you manually blacklist.
What I'm saying is I'd love to be able to single out a specific user and them have them never see anything above PG-13 rating, much like the Plex example above is just for one user.

So sort of like OP's request, but per-user and based on the movie content ratings.

@conner-replogle
Copy link

Any update on this my entire movie feed is Japanese softcore and it is very awkward with my parents using the service to explain I am not putting it on there

@devanteweary
Copy link

devanteweary commented Dec 21, 2024

Any update on this my entire movie feed is Japanese softcore and it is very awkward with my parents using the service to explain I am not putting it on there

Yeah and mine isn't so much for that kind of stuff but I have family who has kids that let them pick out movies, or a mother who hates seeing stuff like Terrifier or Drag Me to Hell posters pop up. Just that kinda stuff. Or overtly sexual movies.

@Arkindor
Copy link

Arkindor commented Dec 24, 2024

I had exactly the same family need. Here's my script Inquisitarr.sh that contacts the Jellyseerr API to blacklist all elements based on a keyword. Watch out for the blacklisted results, as some of them are well-known movies.

https://github.com/Arkindor/inquisitarr

@benbeauchamp7
Copy link

I'll take a stab at implementing this. My current plan is to add a "Discover Exclude Tags" field on the settings page under "Discover Langauge", which will use the without_keywords parameter on the tmdb /discover endpoint here https://developer.themoviedb.org/reference/discover-movie.

Please let me know if you have any concerns

@fallenbagel
Copy link
Owner

I'll take a stab at implementing this. My current plan is to add a "Discover Exclude Tags" field on the settings page under "Discover Langauge", which will use the without_keywords parameter on the tmdb /discover endpoint here https://developer.themoviedb.org/reference/discover-movie.

Please let me know if you have any concerns

The issue with that is, it will only apply to the movie/tvseries sliders and the discoverMovie and discoverTV pages. It won't apply to trending and other sliders due to those endpoints not supporting filtering.

So it would be better imo tags to be blacklisted as that will apply to all media

@persson-io
Copy link

I would really want this feature!

@Arkindor
Copy link

So do I ! :)

@benbeauchamp7
Copy link

The issue I'm running into with blacklisting is that the keywords aren't readily returned by tmdb, so every TV show and movie would need an API call specific for it to get the keywords and decide whether to hide them or not.

The only way I see leveraging the blacklist system is to ask tmdb for shows with the blocked keyword then make a bunch of blacklist entries in the db for them, essentially the same as https://github.com/Arkindor/inquisitarr. It'll be a weekly job, with some way to configure how many records get added to the blacklist per keyword (more records = more space, but also less likelihood of encountering something that should be blacklisted).

Two other issues: admins will need some way of differentiating manually blacklisted media and automatically blacklisted media, and there should be a way for admins to un-blacklist something without the job just blocking it again a week later.
I'll see to the first part, but not the second for time's sake (I need naughty shows to stop showing up sooner rather than later). Some way to sort and filter the blacklist, a way to bulk-unblock media, and a way to keep approved media from showing up in the blacklist again are probably needed to make something like this actually feel complete.

Lmk if you have any concerns, and thank you for your feedback!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting triage This issue needs to be reviewed enhancement New feature or request
Projects
None yet
8 participants