Jump to content

New Plugin: My Own Api Provider - JSON Metadata


mickle026

Recommended Posts

hrohh

Hello sir,

Thank you, now it is working, but for 50%. My actual JSON for testing is 
https://czechapi.000.pe/?Id=tt0848228

OfficialRating is 100% for me, so please, dont change.

So in my Movie Library, your metadata plugin provider is on last position, otherwise there is no ID in URL - it is correct? In logs which I uploaded, there is Rating ok from my json, but in movie there is not, so overwriting process not working :( So it is possible add checkbox to your UX - "overwrite data"? So it depends on user choice.

Also I tried in JSON
{"Id":{"string":"csfd-1002404"} vs
{"Id":"csfd-1002404"}
but field MyMovieApi Id: in meta is empty

PosterImage not working if URL is absolute? Not working for me :( Or I have some issue in json?

Tomorrow I will test TrailerURL. Thank you for that!

Also if I click to refetech movie metadata twice and more, in log there is message
26.bře.2024 - 00.29.33 [Auto-GetMetadata] Cancelled a duplicate request from Emby.
Emby has cache for requests I think, so it is ok.

26.bře.2024 - 00.35.20 [Auto-GetMetadata] Entered MyMovieApi GetMetadata For: Chudáčci
26.bře.2024 - 00.35.20 [Auto-GetMetadata] Entered GetMovieDetails.
26.bře.2024 - 00.35.20 [Auto-GetMetadata] Created a Movie Result Object
26.bře.2024 - 00.35.20 [Auto-GetMetadata] Created a Movie Object
26.bře.2024 - 00.35.20 [Auto-GetMetadata] Passed In Name: Chudáčci
26.bře.2024 - 00.35.20 [Auto-GetMetadata] Passed In Year: 2023
26.bře.2024 - 00.35.20 [Auto-GetMetadata] Request string: https://czechapi.000.pe/?Name=Chudáčci&Year=2023&Id=tt14230458&Format=json
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Recieved Json: {"Id":{"string":"csfd-1002404"},"Imdb":"tt14230458","Rating":"8.2","Origin":["Irsko \/ Velk\u00e1 Brit\u00e1nie \/ USA","2023","141 min"],"CreationYear":"2023","Genre":"Sci-Fi@;@Komedie@;@Drama@;@Romantick\u00fd","Overview":"Od re\u017eis\u00e9ra Yorgose Lanthimose a producentky Emmy Stone p\u0159ich\u00e1z\u00ed neuv\u011b\u0159iteln\u00fd p\u0159\u00edb\u011bh o fantastick\u00e9m v\u00fdvoji Belly Baxter, mlad\u00e9 \u017eeny, kterou k \u017eivotu vr\u00e1til geni\u00e1ln\u00ed a nekonven\u010dn\u00ed v\u011bdec Dr. Godwin Baxter. Pod Baxterovou ochranou Bella tou\u017e\u00ed po pozn\u00e1n\u00ed. Hladov\u011bj\u00edc\u00ed po zku\u0161enostech, kter\u00e9 j\u00ed chyb\u00ed, ute\u010de s Duncanem Wedderburnem, mazan\u00fdm a zh\u00fdral\u00fdm pr\u00e1vn\u00edkem, do v\u00edru dobrodru\u017estv\u00ed nap\u0159\u00ed\u010d kontinenty. Nepodl\u00e9haj\u00edc p\u0159edsudk\u016fm sv\u00e9 doby se Bella zasazuje za rovnopr\u00e1vnost a svobodu.","PrimaryImage":"https:\/\/image.pmgstatic.com\/cache\/resized\/w1080\/files\/images\/film\/posters\/168\/416\/168416248_99popv.jpg","PrimaryImages":["https:\/\/image.pmgstatic.com\/cache\/resized\/w1080\/files\/images\/film\/posters\/168\/416\/168416248_99popv.jpg"],"Videos":[{"sources":{"videoId":157845463,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574273_91vvvc.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574275_nd8x8k.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574277_io2a0x.mp4"}]}}},{"sources":{"videoId":157821723,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611486_tuprs6.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611488_5a6mde.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611490_pywcwu.mp4"}]},"subtitles":{"srclang":"cs","label":"\u010desk\u00fd","src":"\/\/video.pmgstatic.com\/files\/subtitles\/167\/620\/167620078_k5g0vt.vtt","default":true,"kind":"subtitles"}}},{"sources":{"videoId":157819395,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517858_xs4ylo.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517860_g7g2yj.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517862_e99e4z.mp4"}]},"subtitles":{"srclang":"cs","label":"\u010desk\u00fd","src":"\/\/video.pmgstatic.com\/files\/subtitles\/167\/617\/167617192_au1rvj.vtt","default":true,"kind":"subtitles"}}}]}
26.bře.2024 - 00.35.21 [JsonRemap] "Id": to Id
26.bře.2024 - 00.35.21 [JsonRemap] "": to Name
26.bře.2024 - 00.35.21 [JsonRemap] "": to CreationDate
26.bře.2024 - 00.35.21 [JsonRemap] "CreationYear": to CreationYear
26.bře.2024 - 00.35.21 [JsonRemap] "": to EndDate
26.bře.2024 - 00.35.21 [JsonRemap] "": to ProductionLocation
26.bře.2024 - 00.35.21 [JsonRemap] "Overview": to Overview
26.bře.2024 - 00.35.21 [JsonRemap] "Rating": to Rating
26.bře.2024 - 00.35.21 [JsonRemap] - Input Does Not Contain ""
26.bře.2024 - 00.35.21 [JsonRemap] "PrimaryImage": to PrimaryImage
26.bře.2024 - 00.35.21 [JsonRemap] "PrimaryImages": to PrimaryImages
26.bře.2024 - 00.35.21 [JsonRemap] "": to Backdrop
26.bře.2024 - 00.35.21 [JsonRemap] "": to Backdrops
26.bře.2024 - 00.35.21 [JsonRemap] "": to Banner
26.bře.2024 - 00.35.21 [JsonRemap] "": to Logo
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Remapped Json: {"Id":{"string":"csfd-1002404"},"Imdb":"tt14230458","Rating":"8.2","Origin":["Irsko \/ Velk\u00e1 Brit\u00e1nie \/ USA","2023","141 min"],"CreationYear":"2023","Genre":"Sci-Fi@;@Komedie@;@Drama@;@Romantick\u00fd","Overview":"Od re\u017eis\u00e9ra Yorgose Lanthimose a producentky Emmy Stone p\u0159ich\u00e1z\u00ed neuv\u011b\u0159iteln\u00fd p\u0159\u00edb\u011bh o fantastick\u00e9m v\u00fdvoji Belly Baxter, mlad\u00e9 \u017eeny, kterou k \u017eivotu vr\u00e1til geni\u00e1ln\u00ed a nekonven\u010dn\u00ed v\u011bdec Dr. Godwin Baxter. Pod Baxterovou ochranou Bella tou\u017e\u00ed po pozn\u00e1n\u00ed. Hladov\u011bj\u00edc\u00ed po zku\u0161enostech, kter\u00e9 j\u00ed chyb\u00ed, ute\u010de s Duncanem Wedderburnem, mazan\u00fdm a zh\u00fdral\u00fdm pr\u00e1vn\u00edkem, do v\u00edru dobrodru\u017estv\u00ed nap\u0159\u00ed\u010d kontinenty. Nepodl\u00e9haj\u00edc p\u0159edsudk\u016fm sv\u00e9 doby se Bella zasazuje za rovnopr\u00e1vnost a svobodu.","PrimaryImage":"https:\/\/image.pmgstatic.com\/cache\/resized\/w1080\/files\/images\/film\/posters\/168\/416\/168416248_99popv.jpg","PrimaryImages":["https:\/\/image.pmgstatic.com\/cache\/resized\/w1080\/files\/images\/film\/posters\/168\/416\/168416248_99popv.jpg"],"Videos":[{"sources":{"videoId":157845463,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574273_91vvvc.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574275_nd8x8k.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574277_io2a0x.mp4"}]}}},{"sources":{"videoId":157821723,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611486_tuprs6.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611488_5a6mde.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611490_pywcwu.mp4"}]},"subtitles":{"srclang":"cs","label":"\u010desk\u00fd","src":"\/\/video.pmgstatic.com\/files\/subtitles\/167\/620\/167620078_k5g0vt.vtt","default":true,"kind":"subtitles"}}},{"sources":{"videoId":157819395,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517858_xs4ylo.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517860_g7g2yj.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517862_e99e4z.mp4"}]},"subtitles":{"srclang":"cs","label":"\u010desk\u00fd","src":"\/\/video.pmgstatic.com\/files\/subtitles\/167\/617\/167617192_au1rvj.vtt","default":true,"kind":"subtitles"}}}]}
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Remapped Json: {"Id":{"string":"csfd-1002404"},"Imdb":"tt14230458","Rating":"8.2","Origin":["Irsko \/ Velk\u00e1 Brit\u00e1nie \/ USA","2023","141 min"],"CreationYear":"2023","Genre":"Sci-Fi@;@Komedie@;@Drama@;@Romantick\u00fd","Overview":"Od re\u017eis\u00e9ra Yorgose Lanthimose a producentky Emmy Stone p\u0159ich\u00e1z\u00ed neuv\u011b\u0159iteln\u00fd p\u0159\u00edb\u011bh o fantastick\u00e9m v\u00fdvoji Belly Baxter, mlad\u00e9 \u017eeny, kterou k \u017eivotu vr\u00e1til geni\u00e1ln\u00ed a nekonven\u010dn\u00ed v\u011bdec Dr. Godwin Baxter. Pod Baxterovou ochranou Bella tou\u017e\u00ed po pozn\u00e1n\u00ed. Hladov\u011bj\u00edc\u00ed po zku\u0161enostech, kter\u00e9 j\u00ed chyb\u00ed, ute\u010de s Duncanem Wedderburnem, mazan\u00fdm a zh\u00fdral\u00fdm pr\u00e1vn\u00edkem, do v\u00edru dobrodru\u017estv\u00ed nap\u0159\u00ed\u010d kontinenty. Nepodl\u00e9haj\u00edc p\u0159edsudk\u016fm sv\u00e9 doby se Bella zasazuje za rovnopr\u00e1vnost a svobodu.","PrimaryImage":"https:\/\/image.pmgstatic.com\/cache\/resized\/w1080\/files\/images\/film\/posters\/168\/416\/168416248_99popv.jpg","PrimaryImages":["https:\/\/image.pmgstatic.com\/cache\/resized\/w1080\/files\/images\/film\/posters\/168\/416\/168416248_99popv.jpg"],"Videos":[{"sources":{"videoId":157845463,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574273_91vvvc.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574275_nd8x8k.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574277_io2a0x.mp4"}]}}},{"sources":{"videoId":157821723,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611486_tuprs6.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611488_5a6mde.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611490_pywcwu.mp4"}]},"subtitles":{"srclang":"cs","label":"\u010desk\u00fd","src":"\/\/video.pmgstatic.com\/files\/subtitles\/167\/620\/167620078_k5g0vt.vtt","default":true,"kind":"subtitles"}}},{"sources":{"videoId":157819395,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517858_xs4ylo.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517860_g7g2yj.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517862_e99e4z.mp4"}]},"subtitles":{"srclang":"cs","label":"\u010desk\u00fd","src":"\/\/video.pmgstatic.com\/files\/subtitles\/167\/617\/167617192_au1rvj.vtt","default":true,"kind":"subtitles"}}}]}
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Decoding the json.
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Json Decoded.
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Add Provider Ids
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Overview: Od režiséra Yorgose Lanthimose a producentky Emmy Stone přichází neuvěřitelný příběh o fantastickém vývoji Belly Baxter, mladé ženy, kterou k životu vrátil geniální a nekonvenční vědec Dr. Godwin Baxter. Pod Baxterovou ochranou Bella touží po poznání. Hladovějící po zkušenostech, které jí chybí, uteče s Duncanem Wedderburnem, mazaným a zhýralým právníkem, do víru dobrodružství napříč kontinenty. Nepodléhajíc předsudkům své doby se Bella zasazuje za rovnoprávnost a svobodu.
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Rating: 8.2

 

Edited by GrimReaper
URLs appended
Link to comment
Share on other sites

mickle026
Posted (edited)
On 25/03/2024 at 23:56, hrohh said:

Hello sir,

Thank you, now it is working, but for 50%. My actual JSON for testing is 
https://server/csfd2/?Id=tt0848228

OfficialRating is 100% for me, so please, dont change.

So in my Movie Library, your metadata plugin provider is on last position, otherwise there is no ID in URL - it is correct? In logs which I uploaded, there is Rating ok from my json, but in movie there is not, so overwriting process not working :( So it is possible add checkbox to your UX - "overwrite data"? So it depends on user choice.

Also I tried in JSON
{"Id":{"string":"csfd-1002404"} vs
{"Id":"csfd-1002404"}
but field MyMovieApi Id: in meta is empty

PosterImage not working if URL is absolute? Not working for me :( Or I have some issue in json?

Tomorrow I will test TrailerURL. Thank you for that!

Also if I click to refetech movie metadata twice and more, in log there is message
26.bře.2024 - 00.29.33 [Auto-GetMetadata] Cancelled a duplicate request from Emby.
Emby has cache for requests I think, so it is ok.

26.bře.2024 - 00.35.20 [Auto-GetMetadata] Entered MyMovieApi GetMetadata For: Chudáčci
26.bře.2024 - 00.35.20 [Auto-GetMetadata] Entered GetMovieDetails.
26.bře.2024 - 00.35.20 [Auto-GetMetadata] Created a Movie Result Object
26.bře.2024 - 00.35.20 [Auto-GetMetadata] Created a Movie Object
26.bře.2024 - 00.35.20 [Auto-GetMetadata] Passed In Name: Chudáčci
26.bře.2024 - 00.35.20 [Auto-GetMetadata] Passed In Year: 2023
26.bře.2024 - 00.35.20 [Auto-GetMetadata] Request string: https://server/csfd2/?Name=Chudáčci&Year=2023&Id=tt14230458&Format=json
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Recieved Json: {"Id":{"string":"csfd-1002404"},"Imdb":"tt14230458","Rating":"8.2","Origin":["Irsko \/ Velk\u00e1 Brit\u00e1nie \/ USA","2023","141 min"],"CreationYear":"2023","Genre":"Sci-Fi@;@Komedie@;@Drama@;@Romantick\u00fd","Overview":"Od re\u017eis\u00e9ra Yorgose Lanthimose a producentky Emmy Stone p\u0159ich\u00e1z\u00ed neuv\u011b\u0159iteln\u00fd p\u0159\u00edb\u011bh o fantastick\u00e9m v\u00fdvoji Belly Baxter, mlad\u00e9 \u017eeny, kterou k \u017eivotu vr\u00e1til geni\u00e1ln\u00ed a nekonven\u010dn\u00ed v\u011bdec Dr. Godwin Baxter. Pod Baxterovou ochranou Bella tou\u017e\u00ed po pozn\u00e1n\u00ed. Hladov\u011bj\u00edc\u00ed po zku\u0161enostech, kter\u00e9 j\u00ed chyb\u00ed, ute\u010de s Duncanem Wedderburnem, mazan\u00fdm a zh\u00fdral\u00fdm pr\u00e1vn\u00edkem, do v\u00edru dobrodru\u017estv\u00ed nap\u0159\u00ed\u010d kontinenty. Nepodl\u00e9haj\u00edc p\u0159edsudk\u016fm sv\u00e9 doby se Bella zasazuje za rovnopr\u00e1vnost a svobodu.","PrimaryImage":"https:\/\/image.pmgstatic.com\/cache\/resized\/w1080\/files\/images\/film\/posters\/168\/416\/168416248_99popv.jpg","PrimaryImages":["https:\/\/image.pmgstatic.com\/cache\/resized\/w1080\/files\/images\/film\/posters\/168\/416\/168416248_99popv.jpg"],"Videos":[{"sources":{"videoId":157845463,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574273_91vvvc.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574275_nd8x8k.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574277_io2a0x.mp4"}]}}},{"sources":{"videoId":157821723,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611486_tuprs6.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611488_5a6mde.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611490_pywcwu.mp4"}]},"subtitles":{"srclang":"cs","label":"\u010desk\u00fd","src":"\/\/video.pmgstatic.com\/files\/subtitles\/167\/620\/167620078_k5g0vt.vtt","default":true,"kind":"subtitles"}}},{"sources":{"videoId":157819395,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517858_xs4ylo.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517860_g7g2yj.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517862_e99e4z.mp4"}]},"subtitles":{"srclang":"cs","label":"\u010desk\u00fd","src":"\/\/video.pmgstatic.com\/files\/subtitles\/167\/617\/167617192_au1rvj.vtt","default":true,"kind":"subtitles"}}}]}
26.bře.2024 - 00.35.21 [JsonRemap] "Id": to Id
26.bře.2024 - 00.35.21 [JsonRemap] "": to Name
26.bře.2024 - 00.35.21 [JsonRemap] "": to CreationDate
26.bře.2024 - 00.35.21 [JsonRemap] "CreationYear": to CreationYear
26.bře.2024 - 00.35.21 [JsonRemap] "": to EndDate
26.bře.2024 - 00.35.21 [JsonRemap] "": to ProductionLocation
26.bře.2024 - 00.35.21 [JsonRemap] "Overview": to Overview
26.bře.2024 - 00.35.21 [JsonRemap] "Rating": to Rating
26.bře.2024 - 00.35.21 [JsonRemap] - Input Does Not Contain ""
26.bře.2024 - 00.35.21 [JsonRemap] "PrimaryImage": to PrimaryImage
26.bře.2024 - 00.35.21 [JsonRemap] "PrimaryImages": to PrimaryImages
26.bře.2024 - 00.35.21 [JsonRemap] "": to Backdrop
26.bře.2024 - 00.35.21 [JsonRemap] "": to Backdrops
26.bře.2024 - 00.35.21 [JsonRemap] "": to Banner
26.bře.2024 - 00.35.21 [JsonRemap] "": to Logo
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Remapped Json: {"Id":{"string":"csfd-1002404"},"Imdb":"tt14230458","Rating":"8.2","Origin":["Irsko \/ Velk\u00e1 Brit\u00e1nie \/ USA","2023","141 min"],"CreationYear":"2023","Genre":"Sci-Fi@;@Komedie@;@Drama@;@Romantick\u00fd","Overview":"Od re\u017eis\u00e9ra Yorgose Lanthimose a producentky Emmy Stone p\u0159ich\u00e1z\u00ed neuv\u011b\u0159iteln\u00fd p\u0159\u00edb\u011bh o fantastick\u00e9m v\u00fdvoji Belly Baxter, mlad\u00e9 \u017eeny, kterou k \u017eivotu vr\u00e1til geni\u00e1ln\u00ed a nekonven\u010dn\u00ed v\u011bdec Dr. Godwin Baxter. Pod Baxterovou ochranou Bella tou\u017e\u00ed po pozn\u00e1n\u00ed. Hladov\u011bj\u00edc\u00ed po zku\u0161enostech, kter\u00e9 j\u00ed chyb\u00ed, ute\u010de s Duncanem Wedderburnem, mazan\u00fdm a zh\u00fdral\u00fdm pr\u00e1vn\u00edkem, do v\u00edru dobrodru\u017estv\u00ed nap\u0159\u00ed\u010d kontinenty. Nepodl\u00e9haj\u00edc p\u0159edsudk\u016fm sv\u00e9 doby se Bella zasazuje za rovnopr\u00e1vnost a svobodu.","PrimaryImage":"https:\/\/image.pmgstatic.com\/cache\/resized\/w1080\/files\/images\/film\/posters\/168\/416\/168416248_99popv.jpg","PrimaryImages":["https:\/\/image.pmgstatic.com\/cache\/resized\/w1080\/files\/images\/film\/posters\/168\/416\/168416248_99popv.jpg"],"Videos":[{"sources":{"videoId":157845463,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574273_91vvvc.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574275_nd8x8k.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574277_io2a0x.mp4"}]}}},{"sources":{"videoId":157821723,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611486_tuprs6.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611488_5a6mde.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611490_pywcwu.mp4"}]},"subtitles":{"srclang":"cs","label":"\u010desk\u00fd","src":"\/\/video.pmgstatic.com\/files\/subtitles\/167\/620\/167620078_k5g0vt.vtt","default":true,"kind":"subtitles"}}},{"sources":{"videoId":157819395,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517858_xs4ylo.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517860_g7g2yj.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517862_e99e4z.mp4"}]},"subtitles":{"srclang":"cs","label":"\u010desk\u00fd","src":"\/\/video.pmgstatic.com\/files\/subtitles\/167\/617\/167617192_au1rvj.vtt","default":true,"kind":"subtitles"}}}]}
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Remapped Json: {"Id":{"string":"csfd-1002404"},"Imdb":"tt14230458","Rating":"8.2","Origin":["Irsko \/ Velk\u00e1 Brit\u00e1nie \/ USA","2023","141 min"],"CreationYear":"2023","Genre":"Sci-Fi@;@Komedie@;@Drama@;@Romantick\u00fd","Overview":"Od re\u017eis\u00e9ra Yorgose Lanthimose a producentky Emmy Stone p\u0159ich\u00e1z\u00ed neuv\u011b\u0159iteln\u00fd p\u0159\u00edb\u011bh o fantastick\u00e9m v\u00fdvoji Belly Baxter, mlad\u00e9 \u017eeny, kterou k \u017eivotu vr\u00e1til geni\u00e1ln\u00ed a nekonven\u010dn\u00ed v\u011bdec Dr. Godwin Baxter. Pod Baxterovou ochranou Bella tou\u017e\u00ed po pozn\u00e1n\u00ed. Hladov\u011bj\u00edc\u00ed po zku\u0161enostech, kter\u00e9 j\u00ed chyb\u00ed, ute\u010de s Duncanem Wedderburnem, mazan\u00fdm a zh\u00fdral\u00fdm pr\u00e1vn\u00edkem, do v\u00edru dobrodru\u017estv\u00ed nap\u0159\u00ed\u010d kontinenty. Nepodl\u00e9haj\u00edc p\u0159edsudk\u016fm sv\u00e9 doby se Bella zasazuje za rovnopr\u00e1vnost a svobodu.","PrimaryImage":"https:\/\/image.pmgstatic.com\/cache\/resized\/w1080\/files\/images\/film\/posters\/168\/416\/168416248_99popv.jpg","PrimaryImages":["https:\/\/image.pmgstatic.com\/cache\/resized\/w1080\/files\/images\/film\/posters\/168\/416\/168416248_99popv.jpg"],"Videos":[{"sources":{"videoId":157845463,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574273_91vvvc.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574275_nd8x8k.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/845\/157845463\/168574277_io2a0x.mp4"}]}}},{"sources":{"videoId":157821723,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611486_tuprs6.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611488_5a6mde.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/821\/157821723\/167611490_pywcwu.mp4"}]},"subtitles":{"srclang":"cs","label":"\u010desk\u00fd","src":"\/\/video.pmgstatic.com\/files\/subtitles\/167\/620\/167620078_k5g0vt.vtt","default":true,"kind":"subtitles"}}},{"sources":{"videoId":157819395,"sources":{"1080p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517858_xs4ylo.mp4"}],"360p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517860_g7g2yj.mp4"}],"720p":[{"type":"video\/mp4","src":"\/\/video.pmgstatic.com\/files\/videos\/157\/819\/157819395\/167517862_e99e4z.mp4"}]},"subtitles":{"srclang":"cs","label":"\u010desk\u00fd","src":"\/\/video.pmgstatic.com\/files\/subtitles\/167\/617\/167617192_au1rvj.vtt","default":true,"kind":"subtitles"}}}]}
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Decoding the json.
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Json Decoded.
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Add Provider Ids
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Overview: Od režiséra Yorgose Lanthimose a producentky Emmy Stone přichází neuvěřitelný příběh o fantastickém vývoji Belly Baxter, mladé ženy, kterou k životu vrátil geniální a nekonvenční vědec Dr. Godwin Baxter. Pod Baxterovou ochranou Bella touží po poznání. Hladovějící po zkušenostech, které jí chybí, uteče s Duncanem Wedderburnem, mazaným a zhýralým právníkem, do víru dobrodružství napříč kontinenty. Nepodléhajíc předsudkům své doby se Bella zasazuje za rovnoprávnost a svobodu.
26.bře.2024 - 00.35.21 [Auto-GetMetadata] Rating: 8.2

 

Your api url https://server/csfd2/?Id=tt0848228

has an error - see image

 

 

Overwrite data is not an option you can put in because Emby chooses what is to used based on the GUI options.  Getmetadata returns the data to Emby.  So the option used has to be Refresh Metadata with Replace ALL in the user GUI.

The poster image in your JSON doesnt have "http://" so maybe try using the image type setting BasePath + Url and adding the only http:// there.

Screenshot2024-03-26at12-58-34Plugins.png.3f63560ea103f78882501eb7318c6943.png

I dont have time now to look into everything else for a few day , maybe I will have time thursday or friday

 

Anyway please bear with me, i am re-writing this plugin to be better and faster anyway.

 

 

Edited by mickle026
Link to comment
Share on other sites

mickle026
Posted (edited)

@hrohh

Please try this, its not the MyMovieApi, but a serperate plugin , one that is just for your API. The config file is in the zip.

The rest of the server string is blank, this one is only using provider keys.

I tested Identify and that works with IMDB key , I didnt try updating further than the results screen because I havent added a film to do it with yet.

Your API has error with "https://server/csfd2/?Id=csfd-1002404" or "https://server/csfd2/?Id=1002404", but works fine with IMDB as the ID.

And, YES if you want it to work from a newly added Movie the IMDB key will have to be retrieved before this plugin will work.  If you could look it up from your api by name & year then this plugin could be first in the order (But currently this one has name dissabled, MyMovieApi has name enabled)

Key names you are not currenty using in your JSON which can be used:

movieName // the movie name
TrailerURL { get; set; } // CSV string of trailerURLS - can be just one
Tagline //  A single line of text
movieTags { get; set; } // CSV string of tags - can be just one
movieGenres { get; set; } // CSV string of genres - can be just one
moviePremiereDate // string format
movieCollection // CSV string of Collections - can be just one

for this plugin to use them without any recompile, they have to be same name and case in the JSON.

 

Screenshot2024-03-26at15-24-48Movies.png.2220d3817c6b75f77cde4906658bcd9d.png

Screenshot2024-03-26at15-24-34Movies.png.1dc6531e4f31ab0a683c862fb28ea879.png

26.Mar.2024  -  15.33.34 [GetSearchResults/Identify] --------------------- [NEW IDENTIFY SEARCH] ---------------------
26.Mar.2024  -  15.33.34 [GetSearchResults/Identify] ServerBaseUrl: https://server/csfd2/?Id=
26.Mar.2024  -  15.33.34 [GetSearchResults/Identify] ServerQueryUrl: https://czechapi.000.pe/?Id=tt14230458
26.Mar.2024  -  15.33.36 [GetSearchResults/Identify] Name: 
26.Mar.2024  -  15.33.36 [GetSearchResults/Identify] Id: csfd-1002404
26.Mar.2024  -  15.33.36 [GetSearchResults/Identify] Overview: Od režiséra Yorgose Lanthimose a producentky Emmy Stone přichází neuvěřitelný příběh o fantastickém vývoji Belly Baxter, mladé ženy, kterou k životu vrátil geniální a nekonvenční vědec Dr. Godwin Baxter. Pod Baxterovou ochranou Bella touží po poznání. Hladovějící po zkušenostech, které jí chybí, uteče s Duncanem Wedderburnem, mazaným a zhýralým právníkem, do víru dobrodružství napříč kontinenty. Nepodléhajíc předsudkům své doby se Bella zasazuje za rovnoprávnost a svobodu.
26.Mar.2024  -  15.33.36 [GetSearchResults/Identify] PrimaryImage: https://image.pmgstatic.com/cache/resized/w1080/files/images/film/posters/168/416/168416248_99popv.jpg
26.Mar.2024  -  15.33.36 [GetSearchResults/Identify] Rating: 8.2
26.Mar.2024  -  15.33.36 [GetSearchResults/Identify] Adding: 
26.Mar.2024  -  15.33.36 [GetSearchResults/Identify] Returning results to emby core

 

 

 

Edited by GrimReaper
Update info and correct "Collections" in DLL - DLL recompiled
Link to comment
Share on other sites

hrohh

Hello sir,

thank you so much. I just realized, that API can be like that

https://czechapi.000.pe/?Id=14230458
https://czechapi.000.pe/?Id=tt14230458
https://czechapi.000.pe/?Id=1002404 - csfd ID in link https://www.csfd.cz/film/1002404

Now it is working with Name (required), Year is optional
https://czechapi.000.pe/?Name=Harry Potter a Kámen mudrců
https://czechapi.000.pe/?Name=Harry Potter a Kámen mudrců&Year=2001
https://czechapi.000.pe/?Name=Harry Potter and the Philosopher's Stone

For Series - like "The Gentlemen" from 2019 movie vs 2024 series
https://czechapi.000.pe/?Name=Gentlemani&Type=Series
vs
https://czechapi.000.pe/?Name=Gentlemani
but it fails
https://czechapi.000.pe/?Name=Gentlemani&Year=2024 => should be Series, but it is not.

It is not 100%, it depenes on search on csfd.cz. Tomorrow I will try your new plugin, thank you again sir!

Edited by GrimReaper
URLs appended
Link to comment
Share on other sites

hrohh
On 3/27/2024 at 11:02 AM, hrohh said:

Hello sir,

thank you so much. I just realized, that API can be like that

https://czechapi.000.pe/?Id=14230458
https://czechapi.000.pe/?Id=tt14230458
https://czechapi.000.pe/?Id=1002404 - csfd ID in link https://www.csfd.cz/film/1002404

Now it is working with Name (required), Year is optional
https://czechapi.000.pe/?Name=Harry Potter a Kámen mudrců
https://czechapi.000.pe/?Name=Harry Potter a Kámen mudrců&Year=2001
https://czechapi.000.pe/?Name=Harry Potter and the Philosopher's Stone

For Series - like "The Gentlemen" from 2019 movie vs 2024 series
https://czechapi.000.pe/?Name=Gentlemani&Type=Series
vs
https://czechapi.000.pe/?Name=Gentlemani
but it fails
https://czechapi.000.pe/?Name=Gentlemani&Year=2024 => should be Series, but it is not.

It is not 100%, it depenes on search on csfd.cz. I tried via php google search and now it is much better. Tomorrow I will try your new plugin, thank you again sir!

 

Edited by GrimReaper
URLs appended
Link to comment
Share on other sites

mickle026
Posted (edited)

Found a bad error in the previous build - it was using person instead of movie in the objects , it probably wouldnt work properly - this should

Also - re-enabled Name & Year with Id, so it will all work with your api

 

 

Edited by mickle026
Link to comment
Share on other sites

hrohh

Nice, thank you! I have to changes in 
MyMovieApi_hrohh.xml from

  <ServerBaseUrl>https://czechapi.000.pe/</ServerBaseUrl>

to

  <ServerBaseUrl>https://czechapi.000.pe/?</ServerBaseUrl>

Now it is working good. I want more from my API, so sometimes it is not working. Now I just add more images. Sorry for that.

Edited by GrimReaper
URLs appended
Link to comment
Share on other sites

hrohh

If I disabled all other scrapers, rating works ok. I appologize, it is field "CommunityRating", what i need.

Link to comment
Share on other sites

mickle026
Posted (edited)
On 3/27/2024 at 5:37 PM, hrohh said:

Nice, thank you! I have to changes in 
MyMovieApi_hrohh.xml from

  <ServerBaseUrl>https://server/csfd2/</ServerBaseUrl>

to

  <ServerBaseUrl>https://czechapi.000.pe/?</ServerBaseUrl>

Now it is working good. I want more from my API, so sometimes it is not working. Now I just add more images. Sorry for that.

Just a note, for the API Plugin to decode properly and be able to use all the JSON, no keyname cannot start with a number.

So:

"Videos": [
    {
      "videoId": 157847283,
      "sources": {
        "1080p": [
          {
            "type": "video/mp4",
            "src": "https://video.pmgstatic.com/files/videos/157/847/157847283/168660582_czdgho.mp4"
          }
        ],
        "360p": [
          {
            "type": "video/mp4",
            "src": "https://video.pmgstatic.com/files/videos/157/847/157847283/168660584_qkb4yj.mp4"
          }
        ],
        "720p": [
          {
            "type": "video/mp4",
            "src": "https://video.pmgstatic.com/files/videos/157/847/157847283/168660586_x3rbyt.mp4"
          }
        ]
      },
      "subtitles": {
        "srclang": "cs",
        "label": "český",
        "src": "//video.pmgstatic.com/files/subtitles/168/698/168698631_07oc4q.vtt",
        "default": true,
        "kind": "subtitles"
      }
    },

Here the C# class for API decode doesn't like , "1080p" "360p" "720p", etc.  It needs to start which an alpha character ABC etc ...

So for better import it should be like "Format_1080p" or "v1080p" (v for video)

I can ignore it of course but if you want to be able to use this then the Name cannot start with a Numneric value otherwise the compiler will give an "Invalid Token" error.

 

OK, last build tonight - off to work soon (night shift)

 

Now "Should" import your actors and directors (placeholders only - no images, that will be done by emby currently, but I can do this too if you want to use your own images)

Now will image search multiple Posters (Primary Images), your Primary Image & your PrimaryImages List - I tried harry potter and Philosophers stone but they were all the same image - so not sure if that me or the actual result - no time to check right now.

Changed Official Rating to Community Rating

 

 

Do you have a logo image you want to use for the plugin in the plugin section ?

Edited by GrimReaper
URLs appended
Link to comment
Share on other sites

hrohh
Quote

Just a note, for the API Plugin to decode properly and be able to use all the JSON, no keyname cannot start with a number.

Ok I rewrite json keys - there are "q1080p" etc.

I have idea, whole API I can move to free website (https://www.infinityfree.com/

So if you want, you can do official metadata plugin for "CSFD.cz".

But I have idea - CSFD is not good source for everything. I think, many users want only rating, overview, maybe trailer (which is sometimes in HD). Also tags ( in czech language ) are good, 

So I can API do with

https://refreshpixel.com/csfd2/?id=tt14230458&fields=rating,overview,trailer,tags

JSON will return only these fields, also your plugin will process only these fields. Rest will be processed by others metadatas plugin. Users can define in your xml file, or in admin UX (url field). What do you think?

Link to comment
Share on other sites

mickle026
Posted (edited)
On 3/28/2024 at 11:04 AM, hrohh said:

So I can API do with

https://server/csfd2/?id=tt14230458&fields=rating,overview,trailer,tags

JSON will return only these fields, also your plugin will process only these fields. Rest will be processed by others metadatas plugin. Users can define in your xml file, or in admin UX (url field). What do you think?

No Need for Fields in your Query, I can add checkboxes to enable / dissable what to import- so you can just get all of the json everytime.

Is this API built of the fly when searched or is it cached somewhere?

 

The same images returned in Poster searches was a build error, I found it and fixed it in the code - will post soon

 

Edited by GrimReaper
URL appended
Link to comment
Share on other sites

mickle026
Posted (edited)

Added support for:

Tags
Genres
Authors
Backdrops

Fixed Error with Poster Image searches

Added toggle option for metadata sections - I have noticed that I have missed the YEAR, but i will add that

 

You Have a good selection of Images!

Now you can dissable all metadata if you wish and just import the images

 

 

 

 

 

Untitled-1.thumb.png.69311868cbe299b0d5ff543c990e73c1.png

 

Untitled4.jpg

Edited by mickle026
  • Like 1
Link to comment
Share on other sites

hrohh

Ok, please, if it is possible, use API wihout parameter resolution. "hires" images are via php getimagesize, and it is superslow. Without parameter width and height is zero.

https://czechapi.000.pe/?name=harry potter a kámen mudrců&year=2001&image=resolution

vs

https://czechapi.000.pe/?name=harry potter a kámen mudrců&year=2001

Checkboxes are great! Thank you.

Edited by GrimReaper
URLs appended
Link to comment
Share on other sites

mickle026
Posted (edited)
On 3/28/2024 at 7:56 PM, hrohh said:

Ok, please, if it is possible, use API wihout parameter resolution. "hires" images are via php getimagesize, and it is superslow. Without parameter width and height is zero.

https://server/csfd2/?name=harry potter a kámen mudrců&year=2001&image=resolution

vs

https://server/csfd2/?name=harry potter a kámen mudrců&year=2001

Checkboxes are great! Thank you.

I am not using resolution at all.

I simply just get the JSON, then decode it. - Extract the text Data, then if needed download the image links

Decoding the JSON depends on the structure (which you keep changing! - LOL :) )

 

It depends on how your use the UI in Emby - here is how it works:

ALL of these methods are seperate, so to use two methods together it must contact the API server again because one doesnt have the others information.

GetMetadata is called on:

Library Scan
Refresh Metadata

- it depends whether ReplaceALL is selected or not - otherwise it will default to merge data - [This contacts the API and gets the JSON and may download images directly]

GetImages Is Called by Image Lookup via the various Image Search Methods - GetImageResponse will fetch any selected results- [This contacts the API and gets the JSON]

GetSearchResults is Called via Identify (Only what you fill in to the boxes is passe in to the search)
If you click on a result Poster Thumb then GetImageResponse is called which simply gets a thumbnail from the url in the result data.  Going further and Applying it calls GetMetadata - [This contacts the API and gets the JSON] - This is why the preview search image may be different from the image you actually get.

GetImageResponse simply fetches an image from an url - nothing else - ie the thumbnail in the selection verify screen within Identify

 

So most things only get the JSON once - then fetches Images seperately, GetSearchResults  will get the JSON more than once if you select an item to Apply its Data

When using an Image Search it gets and decodes JSON, looks for the URL then goes stright to that.  No other API requests are made except for the first one in each Import Method.

 

Each JSON request supports only the Name, Year and Provider Ids

 

 

 

 

Edited by GrimReaper
URLs appended
Link to comment
Share on other sites

hrohh

This is so great!

Sorry for changing API, Im 99% done. Now I have to do some only performance optimalization in php, no renaming keys in array anymore. Maybe some cache for images scrapper. Maybe some 10min cache for complete json in folder.

So thumb key with src/width/height is useful? Because images on csfd are sometimes very big (5000px). Thats why I add "thumb" array. For example

https://image.pmgstatic.com/files/images/film/photos/000/124/124541_301459.jpg

https://image.pmgstatic.com/files/images/film/photos/000/124/124541_301459.jpg

https://image.pmgstatic.com/files/images/film/photos/000/157/157884_547990.jpg

Thank you!

Edited by hrohh
Link to comment
Share on other sites

mickle026
2 minutes ago, hrohh said:

This is so great!

Sorry for changing API, Im 99% done. Now I have to do some only performance optimalization in php, no renaming keys in array anymore. Maybe some cache for images scrapper. Maybe some 10min cache for complete json in folder.

So thumb key with src/width/height is useful? Because images on csfd are sometimes very big (5000px). Thats why I add "thumb" array. For example

https://image.pmgstatic.com/files/images/film/photos/000/124/124541_301459.jpg

https://image.pmgstatic.com/files/images/film/photos/000/124/124541_301459.jpg

https://image.pmgstatic.com/files/images/film/photos/000/157/157884_547990.jpg

Thank you!

The thumbs is good , that means only thumbs will load in web dialogs (rather than fullsize), but the full size will download to the database.  That makes the dialogs as fast as they can be and keep memory usage of the browsers down.

  • Like 1
Link to comment
Share on other sites

mickle026
Posted (edited)

Build with Year and a few typos  corrected

 

Edited by mickle026
  • Like 1
Link to comment
Share on other sites

mickle026

I just wish I could code in php better to be able to improve my Adult Movie Api, its not SQL based its folder based, enumerating the directories is very slow.

Im still learning c# - self taught... , I've been doing plugins for over 2 years

Trying and trying - but I have got it now - LOL :)

Link to comment
Share on other sites

hrohh

Im testing all functions right now. Backdrops are awesome, trully! :)) I have a few observations

1) in PosterImage and BackdropImage -> What about , If I add thumb array for better performance? ☺️

2) In Configuration of plugin, Enable Logging checkbox not saved

3) Please, can you add checkboxes for Backdrop and Poster image also? Sometimes on CSFD.cz poster is garbage (watermark text on poster). So if it is possible, if I uncheck Poster or Backdrop and your plugin dont detect previous event "GetMetadata", it shows all image in modal ( GetImages ) , but if I add new movie to folder, this settings skip downloading poster from json. If it is not possible some easy, don't waste your time! I can do via GET parameter, in URL - return wihout PosterImage in json. Like that, it can work (I think :) ).

4) On movie screen, there is link "csfdid". What about, if I add key to json "Links" : { "title": "www.something.com", "another title" : ""www.something2.com" }. Like that, you can defining your own! 

5) Last thing, it is not standard, but better is lowercase all GET parameters in URL. I can do via PHP with redirect 302, but somehow emby dont download json - in logs shows timeout error. So I disabled redirecting in php scripts and now works ok.

6) I can do scripting for you. What is your webpage source? If you want, I can send you my API, it is not secret :) 

Link to comment
Share on other sites

hrohh

Do you have plan release your plugin as more universal? I think it is not  "hrohh" plugin, but more universal for php scrappers like me :)) I can give you PHP scripts. JSON should be standardized. 

Link to comment
Share on other sites

mickle026
Posted (edited)
On 28/03/2024 at 22:24, hrohh said:

Im testing all functions right now. Backdrops are awesome, trully! :)) I have a few observations

1) in PosterImage and BackdropImage -> What about , If I add thumb array for better performance? ☺️

2) In Configuration of plugin, Enable Logging checkbox not saved

3) Please, can you add checkboxes for Backdrop and Poster image also? Sometimes on CSFD.cz poster is garbage (watermark text on poster). So if it is possible, if I uncheck Poster or Backdrop and your plugin dont detect previous event "GetMetadata", it shows all image in modal ( GetImages ) , but if I add new movie to folder, this settings skip downloading poster from json. If it is not possible some easy, don't waste your time! I can do via GET parameter, in URL - return wihout PosterImage in json. Like that, it can work (I think :) ).

4) On movie screen, there is link "csfdid". What about, if I add key to json "Links" : { "title": "www.something.com", "another title" : ""www.something2.com" }. Like that, you can defining your own! 

5) Last thing, it is not standard, but better is lowercase all GET parameters in URL. I can do via PHP with redirect 302, but somehow emby dont download json - in logs shows timeout error. So I disabled redirecting in php scripts and now works ok.

6) I can do scripting for you. What is your webpage source? If you want, I can send you my API, it is not secret :) 

1, I am already loading thumbs for backdrops in web dialog

"BackdropImages":[{"thumb":{"src":"https:\/\/image.pmgstatic.com\/cache\/resized\/w663\/files\/images\/film\/photos\/159\/922\/159922046_660c9f.jpg","width":"663","height":"432"},"hires":{"src":"https:\/\/image.pmgstatic.com\/files\/images\/film\/photos\/159\/922\/159922046_660c9f.jpg","width":0,"height":0}}

2, I am aware and already fixed, it will default to "ON" anyway if not saved if not checked

 public bool EnableLogging { get; set; } = true;

3, Yes Sure - I can add checkboxes
 

I dont understand what is being asked here??:   However, GetMetadata and GetImages are seperate Tasks they do not communicate with each other.

and your plugin dont detect previous event "GetMetadata", it shows all image in modal ( GetImages ) , but if I add new movie to folder, this settings skip downloading poster from json. If it is not possible some easy, don't waste your time! I can do via GET parameter, in URL - return wihout PosterImage in json. Like that, it can work (I think :) ).

4,  The Emby team removed support for full web links, currently they are built via provider keys , where {0} is the Provider key "csfdid"

Key "csfd", value "1002404" would build :

ie https://www.csfd.cz/film/1002404

but you cannot do: Key "csfd", value "1002404,-chudacci/prehled/" becausae emby removes everything at the first "/", and it does not support {0} {1} etc for CSV values in the id

https://www.csfd.cz/film/{0}

5,  Not sure what this means, do you want "Name=" as "name=" ?

6,  I dont have webpage source currently for movies - only for people (XXX Actors), 

PHP for that is a simple drive listing and if Person Name appears in folderName retrieve datafile - then return the XML as JSON

My Actors are in one directory and only about 20,000 folder, its fast.

Actors\ActorName\Datafile

 

My ADM plugin is different, it calculates a direct link to my data file via the Movie Name from a MovieList it downloads.

However, My movies data is in nearly 550,000 folders but also in subfolders for drive access speed.  Its already on NVME.

In one folder its super slow

The 3 subfolders below are MD5 letters from the MovieName , so theres no more than 400 movie data folders in any subfolder

Movies\A\1\4\MovieName\Datafile

I would prefer php driven than Plugin driven.  Plugin driven is ok, but the load is on emby rather than the webserver

 

OK,

 

Fixed the Log file checkbox and added option to retrive images

Screenshot2024-03-28at23-34-22Plugins.png.e17b766b1d2b39a9ae3d9500ee5bc59c.png

 

 

Edited by mickle026
Link to comment
Share on other sites

mickle026
1 hour ago, hrohh said:

Do you have plan release your plugin as more universal? I think it is not  "hrohh" plugin, but more universal for php scrappers like me :)) I can give you PHP scripts. JSON should be standardized. 

Yes, I have been coding it in a way that it can be compiled with different config pages and a different emby registration guid.  I am stuck at the moment though because it wants to embed everything into both versions, but i will figure it out.

Link to comment
Share on other sites

hrohh

Sorry for my english.

Quote

1, I am already loading thumbs for backdrops in web dialog

Can I add array thumb also in PosterImage and BackdropImage ( without char S )? We have PosterImages and BackdropImages.
EDIT: I change API in PosterImage and BackdropImage keys, please look. Also I added "alt" key. If you can add text below image in web dialog / also size would be usefull (now there are width 0 and height 0, but I can add real numbers ).

Quote

2, I am aware and already fixed, it will default to "ON" anyway if not saved if not checked

Thank you!

Quote

I dont understand what is being asked here??:   However, GetMetadata and GetImages are seperate Tasks they do not communicate with each other.

If I disable checkbox Poster image, it dont show images in web dialog, which is not what I want. What I want is situation, when I add a new movie to Emby (or it find new folder), it will skip PosterImage from json API (and download Poster from others metadata scrapers), but If I open web dialog for images, I can choose Poster from json API.
If it is not possible, can you add Emby event parameter? I mean ?name=Potter&event=getmetadata
I can do some tweak via cache, for example, if second request is getimageresponse and getmetadata call was below 10s, it will skip PosterImage, PosterImages array.

Another increase speed solution would be event=getsearchresults. In JSON there wouldnt be BackdropImage, BackdropImages, which is superslow. Next call would be getmetadata (if I choose movie) and JSON will be again wihout PosterImage, PosterImages array. 

4) Hmm :( So it cannot be "CSFD.cz" instead "csfdid"?

5) Yes exactly!

6) For this quantity database MySQL/MariaDB should be selected. 550,000 are movies also in Emby database?

Edited by hrohh
Link to comment
Share on other sites

mickle026
14 minutes ago, hrohh said:

Sorry for my english.

Can I add array thumb also in PosterImage and BackdropImage ( without char S )? We have PosterImages and BackdropImages.
EDIT: I change API in PosterImage and BackdropImage keys, please look. Also I added "alt" key. If you can add text below image in web dialog / also size would be usefull (now there are width 0 and height 0, but I can add real numbers ).

Thank you!

If I disable checkbox Poster image, it dont show images in web dialog, which is not what I want. What I want is situation, when I add a new movie to Emby (or it find new folder), it will skip PosterImage from json API (and download Poster from others metadata scrapers), but If I open web dialog for images, I can choose Poster from json API.
If it is not possible, can you add Emby event parameter? I mean ?name=Potter&event=getmetadata
I can do some tweak via cache, for example, if second request is getimageresponse and getmetadata call was below 10s, it will skip PosterImage, PosterImages array.

Another increase speed solution would be event=getsearchresults. In JSON there wouldnt be BackdropImage, BackdropImages, which is superslow. Next call would be getmetadata (if I choose movie) and JSON will be again wihout PosterImage, PosterImages array. 

Quote

4) Hmm :( So it cannot be "CSFD.cz" instead "csfdid"?

5) Yes exactly!

6) For this quantity database MySQL/MariaDB should be selected. 550,000 are movies also in Emby database?

1, YES you can add PrimaryImageThumb or I can forget the PrimaryImage (no s) altogether and just take the first image from PrimaryImages, ie Url = ReturnedItem.PrimaryImages[0],

that is already there and has the thumbnail

Quote
"PrimaryImage": "https://image.pmgstatic.com/files/images/film/posters/000/001/1549_54f01f.jpg",
Quote
"PrimaryImages": [
    {
      "thumb": {
        "src": "https://image.pmgstatic.com/cache/resized/w663/files/images/film/posters/000/001/1578_glxvzj.jpg",
        "width": "663",
        "height": "936"
      },
      "hires": {
        "src": "https://image.pmgstatic.com/files/images/film/posters/000/001/1578_glxvzj.jpg",
        "width": 0,
        "height": 0
      }
    },

You CANNOT control this from the Plugin

Quote

What I want is situation, when I add a new movie to Emby (or it find new folder), it will skip PosterImage from json API (and download Poster from others metadata scrapers)

You have to set priority or dissable image fetching in Emby core library settings

You can move Image fetching down after TMDB whilst have metadata fetching before TMDB

 

This is the same as unchecking get Posters config option, if you edit the url or untick, its the same thing, or you can dissable Image fetcher in emby core library settings

Quote

I mean ?name=Potter&event=getmetadata

Core Config disables everything

Screenshot2024-03-29at01-06-32Library.png.57b3b80110b9bb33cef645d0b77bba06.png

Plugin config doesn't dissable backdrops

Screenshot2024-03-29at01-05-39Plugins.png.5df0f042d54d62beb1267157386ee4b4.png

but same as Image "Fetecher Settings"

Screenshot2024-03-29at01-09-01Library.png.8e5f1de96f11d85ecb409555f54f2800.png

 

 

librarysettings1.jpg.f3d36244b58c3bf96ffc24abdded6884.jpg

Quote

4) Hmm :( So it cannot be "CSFD.cz" instead "csfdid"?

 

4, Yes you can, but you cannot use non alphanumeric in the id (the Id: is put by emby core i cannot remove that).
This is for disply , it doesnt alter your JSON, that can stay the same
 

Screenshot2024-03-29at01-24-19Movies.png.35c52dcd267837ec954db6fdeb880590.png

. and it the Links it shows like this

Screenshot2024-03-29at01-27-00MediaServer.png.6645b4e9edbd0fc6285f88dbb89fdc12.png

 

6,  Everything is in my TEST server emby database.  I use emby to  manage it.  I can install MySQL or MariaDB, but have no clue how to use it.  I tried a long time ago to use MySQL with PhpMyAdmin and was successful but i dont remember how to use that either and dont have that now.  My server is TrueNas Core, only 1 Jail with PHP8.2 and Apache24.

It took a while but i managed to get that working.

 

 

Link to comment
Share on other sites

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...