Search the Community
Showing results for tags 'api-client'.
-
Background Plugins, extensions and integrations make an important part of the Emby ecosystem. Plugin development is open to everybody and many great plugins have been created by Emby community members. To show our appreciation for the great work and achievements of community developers, we took steps in order to improve in an area where we haven't done that well in the recent past: Developer Support. When talking about support, there are several different facets to evaluate and consider. We probably did fairly well when it was about responding to user questions - but not that much when it came to providing accurate and up-to-date information, documentation and code examples. Emby SDK It has been just about time to make a change to that and over the past months we have intensively worked on improving that situation. Eventually, we have ended up with a fully loaded package of information, resources, tools and sample code - exclusively for all of you developers, so today we're proud to present: The EMBY SDK https://github.com/MediaBrowser/Emby.SDK Website - emby dev In parallel to the SDK, we are launching: the new emby developer site https://dev.emby.media Introduction Video For a comprehensive introduction to the Emby SDK, watch the video, either by installing the Plugin for The Emby Show Or watch it on YouTube: The Emby Show Episode 3 - Emby SDK - or below Questions? Please ask questions in the developer forum: https://emby.media/community/index.php?/forum/47-developer-api/ Watch
-
When reading through some of the past questions I stumbled across http://emby.media/community/index.php?/topic/1150-missingfuture-episodes-how-to-handle-them/. Unless something has changed in the last 18 months, I am interpreting that to mean that the all TV Episodes are available via the API, whether they are actual media files or not. I did find the IsMissing property of ItemQuery of the API Client, but when I attempted to use it, I had some very inconsistent results. When querying for "Seasons", the behavior was exactly as expected. There are 16 series in my collection that are missing at least 1 entire season (some with more than one). All missing 25 seasons that were returned. No season that had any episodes was returned. For TV Episodes, the behavior was not consistent. I'm not certain on the exact behavior, but I've made a few guesses based on my observations, but I am not 100% certain it is the correct behavior for each scenario.For any series in which I am missing 1 or more episodes from every season, only the missing episodes were returned. This is the behavior I expected for this query. For any series in which I have 100% of the episodes, the entire season was returned. Exactly zero are missing but all were returned. For any series in which I have 100% of the episodes for some seasons and am missing some episodes for a few seasons is where things get a little mixedFor seasons in which I have 100% of the episodes, all episodes were returned by the query. None were missing but all were returned. This was unexpected behavior. For seasons in which I have 0% of the episodes, all episodes were returned by the query. This is the behavior I expected for this query. For seasons in which I have an incomplete series (1 or more episodes missing), all episodes were returned (whether they were missing or not) and every episode I did have was returned. Effectively I had a duplicate result for episodes that I already had. This was unexpected behavior. Am I using this query wrong? The query I used for this was: For Seasons: var items = await client.GetItemsAsync(new ItemQuery { UserId = client.CurrentUserId, IncludeItemTypes = new[] { "Season" }, Fields = Enum.GetValues(typeof(ItemFields)).Cast<ItemFields>().ToArray(), IsMissing = true, Recursive = true, }); For Episodes: var items = await client.GetItemsAsync(new ItemQuery { UserId = client.CurrentUserId, IncludeItemTypes = new[] { "Episode" }, Fields = Enum.GetValues(typeof(ItemFields)).Cast<ItemFields>().ToArray(), IsMissing = true, Recursive = true, });
- 1 reply
-
- api-client
- virtual-locations
-
(and 1 more)
Tagged with:
-
I started experimenting with the API to see if it is more reliable than relying on the XML files, using the API Client on Github (https://github.com/MediaBrowser/Emby.ApiClient) One of the items I need most is the external metadata provider id's and I'm wondering how to get them. I've start with the example posted on the Github page to get all of the items in a user's library var items = await client.GetItemsAsync(new ItemQuery { UserId = client.UserId, Recursive = true }); If I look at the definition of BaseItemsDto, there is a property called ProviderIds. That looks like it could be the information I am looking for, but when I run the above query, it is null for every item. The data does exist in the Metadata Manager, so wouldn't appear to be an issue with the Metadata itself. Am I looking in the wrong spot? Or is there something else I need to do to get the external ids? I looked at the members of ItemQuery and I don't see anything that jumps out at me as a property that will trigger the inclusion of the these ids (assuming that it is available there at all).
- 3 replies
-
- api-client
- metadata
-
(and 1 more)
Tagged with: