Jump to content

Virtual DVR Plugin - Looking for a developer as I have failed


Recommended Posts

Posted (edited)

HI Everyone!

Long time Emby user and have always been looking for this functionality but have been unable to build it myself. As such, I’m looking for a developer to help build a plugin for Emby to function as a sort of Virtual DVR. The plugin will dynamically create a personalized home screen row for each logged-in user, displaying their favorite, continuing TV series that have unwatched episodes. The row will only include series marked as favorites, with no defined end date, and at least one unwatched episode. Each series poster will show the number of unwatched episodes and link directly to the first (oldest) unwatched episode. The row should update automatically as new episodes are acquired or marked as watched. Additionally, the plugin will include a configuration page to allow customization of the row title and the maximum number of series displayed.

I’ve tried using the SDK alongside ChatGPT to figure this out myself, but I’ve struggled repeatedly and realized that as I am not a developer for this platform, I need some expert help.

If you’re experienced with Emby plugin development and interested in helping me bring this idea to life, please let me know!

I have outlined some plugin requirements.

Requirements Document: Virtual DVR Plugin

Concept Overview

The Virtual DVR plugin dynamically generates a personalized row on the Emby home screen for each logged-in user. The row displays only the user’s favorite, continuing TV series that have unwatched episodes. If a series has no unwatched episodes, it will not appear in the row. The series poster shows the number of unwatched episodes and links directly to the first (oldest) unwatched episode.

This plugin ensures that the user sees recent episodes for the shows they actively follow, avoiding clutter from other series on the system.


Plugin Features

1. Dynamic User-Specific Row

  • Each user sees a personalized row on their home screen.
  • The row includes TV series that meet all the following criteria:

    Favorited: The user has manually added the series to their favorites list.

    Continuing: The series must not have an Ended date (EndDate must be null).

    Unwatched Episodes: The series contains at least one episode that the user has not yet watched.


2. Series Poster Enhancements

  • Unwatched Episode Count:

    The series poster displays the total number of unwatched episodes.

    Example: "3" displayed as a badge or overlay on the poster.

  • Link to First Unwatched Episode:

    Clicking the series poster takes the user directly to the first (oldest) unwatched episode.

    If all episodes are watched, the series will not appear in the row.


3. Automatic Updates

  • The row refreshes automatically to reflect changes, such as:

    A series is added or removed from the user’s favorites.

    A new episode is added to the user’s library.

    An episode is marked as watched.


4. Configuration Options

  • Home Screen Row Title:

    Customizable title for the Virtual DVR row (e.g., "My Favorite Shows").

    Default: "Virtual DVR."

    Editable via a plugin settings page.

  • Maximum Series Displayed:

    Limits the number of series shown in the row.

    Default: 10.

    Editable via a plugin settings page.


Use Case Example

  • Initial Setup:

    The user favorites "Stranger Things" and "The Mandalorian."

    "Stranger Things" has no defined end date (EndDate = null) and three unwatched episodes.

    "The Mandalorian" has no unwatched episodes.

  • Home Screen Display:

    The Virtual DVR plugin generates a row titled "My Favorite Shows."

    The row includes a poster for "Stranger Things" with:

    Badge: "3 Unwatched Episodes."

    Link: Clicking the poster takes the user to the first (oldest) unwatched episode.

    "The Mandalorian" does not appear in the row because it has no unwatched episodes.

  • Automatic Updates:

    If the user watches one episode of "Stranger Things," the badge updates to "2."

    If a new episode of "The Mandalorian" is added, it appears in the row with the badge: "1"

  • Removal:

    If the user unfavorites "Stranger Things," it is removed from the row entirely.


Key User Benefits

  • Personalized, Relevant Content:

    Focuses only on the shows the user actively follows and watches.

  • Effortless Tracking:

    Automatically highlights new episodes without displaying irrelevant shows.

  • Real-Time Updates:

    Dynamically refreshes to reflect changes in the user’s library or watching habits.

 

Edited by TheGru
pwhodges
Posted
1 hour ago, TheGru said:

The row includes TV series that meet all the following criteria:
Favorited: The user has manually added the series to their favorites list.
Continuing: The series must not have an Ended date (EndDate must be null).
Unwatched Episodes: The series contains at least one episode that the user has not yet watched.

The continuing requirement means that as soon as the last episode becomes available, it will be removed from the row even before the user has watched it!

Paul

Posted
2 hours ago, pwhodges said:

The continuing requirement means that as soon as the last episode becomes available, it will be removed from the row even before the user has watched it!

Paul

Why is that? The metadata for the series knows the show has not ended. For example last episode of a season but the series has not been cancelled and is ongoing. 

Posted

I guess then use Status Continuing from metadata instead for the requirement 

Posted

This is pretty much what all the posts regarding 'spotlight/recommendations/smart playlists' etc all want - a simple customised way to present 'content' that the user is interested in - and nothing more.

Interestingly, it appears to have been a bit of a battle to get Emby to recognise this as a 'out the box' requirement - but at long last, I believe 4.9 will give us 'something'.   What the full  something is, is anyones guess, but I'm hoping it at least gets us a step closer to the above.

Posted
2 minutes ago, rbjtech said:

This is pretty much what all the posts regarding 'spotlight/recommendations/smart playlists' etc all want - a simple customised way to present 'content' that the user is interested in - and nothing more.

Interestingly, it appears to have been a bit of a battle to get Emby to recognise this as a 'out the box' requirement - but at long last, I believe 4.9 will give us 'something'.   What the full  something is, is anyones guess, but I'm hoping it at least gets us a step closer to the above.

I’m running 4.9.0.32 beta. Nothing like this exists currently. Perhaps it is on the roadmap but I haven’t read anything about it. 
 

I tried to teach ChatGPT the Emby SDK but it struggled to come up with anything that would compile a DLL. 

Posted
1 minute ago, TheGru said:

I’m running 4.9.0.32 beta. Nothing like this exists currently. Perhaps it is on the roadmap but I haven’t read anything about it. 
 

I tried to teach ChatGPT the Emby SDK but it struggled to come up with anything that would compile a DLL. 

4.9 Release - @Luke has advised as such on multiple occassions.

It should go into Beta first - but anything 4.9.x.y is still considered 4.9 ... ;) 

  • Thanks 1
Posted
40 minutes ago, rbjtech said:

4.9 Release - @Luke has advised as such on multiple occassions.

It should go into Beta first - but anything 4.9.x.y is still considered 4.9 ... ;) 

Here’s to hoping it comes together!

  • Agree 1

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...