コード例 #1
0
        private async Task GetProviderIds(PlexMetadata showMetadata, PlexServerContent existingContent)
        {
            var metadata = showMetadata.MediaContainer.Metadata.FirstOrDefault();
            var guids    = new List <string>
            {
                metadata.guid
            };

            if (metadata.Guid != null)
            {
                foreach (var g in metadata.Guid)
                {
                    guids.Add(g.Id);
                }
            }
            var providerIds =
                PlexHelper.GetProviderIdsFromMetadata(guids.ToArray());

            if (providerIds.ImdbId.HasValue())
            {
                existingContent.ImdbId = providerIds.ImdbId;
            }

            if (providerIds.TheMovieDb.HasValue())
            {
                existingContent.TheMovieDbId = providerIds.TheMovieDb;
            }

            if (providerIds.TheTvDb.HasValue())
            {
                // Lookup TheMovieDbId
                var findResult = await _movieApi.Find(providerIds.TheTvDb, ExternalSource.tvdb_id);

                var tvResult = findResult.tv_results.FirstOrDefault();
                if (tvResult != null)
                {
                    existingContent.TheMovieDbId = tvResult.id.ToString();
                }
                existingContent.TvDbId = providerIds.TheTvDb;
            }
        }
コード例 #2
0
        private static void GetProviderIds(PlexMetadata showMetadata, PlexServerContent existingContent)
        {
            var providerIds =
                PlexHelper.GetProviderIdFromPlexGuid(showMetadata.MediaContainer.Metadata.FirstOrDefault()
                                                     .guid);

            if (providerIds.Type == ProviderType.ImdbId)
            {
                existingContent.ImdbId = providerIds.ImdbId;
            }

            if (providerIds.Type == ProviderType.TheMovieDbId)
            {
                existingContent.TheMovieDbId = providerIds.TheMovieDb;
            }

            if (providerIds.Type == ProviderType.TvDbId)
            {
                existingContent.TvDbId = providerIds.TheTvDb;
            }
        }