stremio-addon-sdk icon indicating copy to clipboard operation
stremio-addon-sdk copied to clipboard

Undocumented `hasScheduledVideos` parameter

Open Pigamer37 opened this issue 4 months ago • 11 comments

There's an undocumented property on the meta object's video object's behaviorHints object: https://github.com/Stremio/stremio-addon-sdk/blob/3950d5707680b6d51908bdf5c7be45661dbcc987/docs/api/responses/meta.md?plain=1#L47-L49 I found it by looking closely at a Cinemeta response, and this value seems to be responsible for the UPCOMING tag showing up on upcoming episodes:

"behaviorHints": {
  "hasScheduledVideos": true
}

From the little testing I've done (I made sure to add the item to my library), it seems like this doesn't add the episodes to the calendar, though.

Pigamer37 avatar Aug 11 '25 21:08 Pigamer37

There are only two more "leads" I can think of that may have something to do with the calendar functionality:

  • "status": "Continuing" - undocumented property and value on the meta object
  • "releaseInfo" - property on the meta object with a value ending in dash (-) to indicate it's still running, but the fact that this could affect upcoming episodes appearing in the calendar is undocumented (maybe it doesn't)

Pigamer37 avatar Aug 12 '25 11:08 Pigamer37

While being able to source future and past episodes for internal tracking and calendar is widely requested, it is low priority in our tasks due to the complex nature of doing it from a community addon. This is also the reason why only the official cinemeta addon is able to do this atm.

It is far more complex then what you are presuming, requiring addons to be able to have an endpoint where up to 100 metadata IDs can be requested at one time, that must filter the episodes list to either X last episodes or X future episodes.

This cannot work with individual metadata requests due to the high number of library items that users can have individually, and the episode lists of the responses must be filtered properly too due to the danger of the device going out of memory for cases with long series. (like The Simpsons or One Piece)

So it is intentionally lacking documentation.

jaruba avatar Aug 12 '25 12:08 jaruba

Regarding "status" and "releaseInfo", they are simply strings, they do not have any usage for continue watching or calendar, i believe "status" is a property only used internally in our servers, but not the apps, while "releaseInfo" is visible in the app for the users, but also unused for any particular feature, it can be any string

Looking at the Cinemeta response is good to understand how a metadata addon should be made and for debugging, but it can include things that are unused in the apps also, as well as legacy properties that have been removed but are still available for backward support of older client apps.

jaruba avatar Aug 12 '25 12:08 jaruba

Any update on calendar integration for 3rd party add-ons?

jemitoburt avatar Dec 13 '25 16:12 jemitoburt

@jemitoburt presuming you are an addon developer, how do u think we should go about implementing it from an addon sdk POV?

jaruba avatar Dec 13 '25 17:12 jaruba

This was only issue with "calendar"so I was wondering if it still supports only Cinemeta. Because it's still not documented in documentation

jemitoburt avatar Dec 13 '25 18:12 jemitoburt

@jemitoburt callendar and continue watching episode notifs are still cinemeta only, mostly due to the fact that the way this is implemented and what is expected of addons may be too complex for the majority of community addons to be able to handle, if some simpler way could be found it would be easier to allow for community addons too

jaruba avatar Dec 13 '25 18:12 jaruba

@jemitoburt calendar and continue watching episode notifs are still cinemeta only, mostly due to the fact that the way this is implemented and what is expected of addons may be too complex for the majority of community addons to be able to handle, if some simpler way could be found it would be easier to allow for community addons too

I must say I'm not using the official SDK, but I was able to make my AnimeFLV addon calendar compatible! Didn't test for edge cases or having a lot of saved items in the library, but it worked! I can link to the repo or the exact code I used if this serves as a reference (it wasn't much different than implementing the base catalog response, if I remember correctly).

Pigamer37 avatar Dec 13 '25 20:12 Pigamer37

@jemitoburt calendar and continue watching episode notifs are still cinemeta only, mostly due to the fact that the way this is implemented and what is expected of addons may be too complex for the majority of community addons to be able to handle, if some simpler way could be found it would be easier to allow for community addons too

I must say I'm not using the official SDK, but I was able to make my AnimeFLV addon calendar compatible! Didn't test for edge cases or having a lot of saved items in the library, but it worked! I can link to the repo or the exact code I used if this serves as a reference (it wasn't much different than implementing the base catalog response, if I remember correctly).

Could you share the code that makes it work with calendar, would love it if I make it work on my end too? Thanks in advance

jemitoburt avatar Dec 13 '25 20:12 jemitoburt

Could you share the code that makes it work with calendar, would love it if I make it work on my end too? Thanks in advance

@jemitoburt Take a look at this commit

Pigamer37 avatar Dec 13 '25 20:12 Pigamer37

that's pretty much what cinemeta is doing, for calendar only though, but yeah, the addon needs to be able to answer with metas for batched IDs

jaruba avatar Dec 13 '25 20:12 jaruba