Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Поддержка версии 10.8.9.0 #15

Open
fewdji opened this issue Feb 12, 2023 · 23 comments
Open

Поддержка версии 10.8.9.0 #15

fewdji opened this issue Feb 12, 2023 · 23 comments

Comments

@fewdji
Copy link

fewdji commented Feb 12, 2023

Добрый день!
Можете добавить поддержку версии 10.8.9.0 ? На ней плагин отображается как "NotSupported" ?

@skrashevich
Copy link
Owner

skrashevich commented Feb 27, 2023

Версия плагина 10.8.9.2 должна работать. Если нет -- напишите, будем посмотреть

@p4vook
Copy link

p4vook commented Mar 29, 2023

Лично у меня не работает

jellyfin    | [14:41:38] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly KinopoiskUnofficialInfo.ApiClient, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null from /config/plugins/КиноПоиск_10.8.9.2/KinopoiskUnofficialInfo.ApiClient.dll
jellyfin    | [14:41:38] [ERR] [1] Emby.Server.Implementations.Plugins.PluginManager: Failed to load assembly /config/plugins/КиноПоиск_10.8.9.2/Jellyfin.Plugin.Kinopoisk.dll. This error occurs when a plugin references an incompatible version of one of the shared libraries. Disabling plugin.
jellyfin    | System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
jellyfin    | Could not load file or assembly 'Microsoft.Extensions.DependencyInjection.Abstractions, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.
jellyfin    | 
jellyfin    |    at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
jellyfin    |    at System.Reflection.Assembly.GetTypes()
jellyfin    |    at Emby.Server.Implementations.Plugins.PluginManager.LoadAssemblies()+MoveNext()
jellyfin    | System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Extensions.DependencyInjection.Abstractions, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.
jellyfin    | 
jellyfin    | File name: 'Microsoft.Extensions.DependencyInjection.Abstractions, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'

docker-compose, latest (10.8.9)

@mekatum
Copy link

mekatum commented Apr 30, 2023

Добрый день.
@skrashevich вы ещё занимаетесь поддержкой этого плагина?
jellyfin обновился до 10.8.10.0, плагин не поддерживается.

@GalayZloy
Copy link

Не работает. Жаль.

@skrashevich
Copy link
Owner

Не работает. Жаль.

Как именно не работает?

@GalayZloy
Copy link

Не работает. Жаль.

Как именно не работает?

Так же, как у автора темы. Пишет NotSupported

@skrashevich
Copy link
Owner

Так же, как у автора темы. Пишет NotSupported

Версия плагина 10.8.9.2 без проблем работает на всех современных версиях Jellyfin, включая 10.8.10 (последняя на момент написания данного сообщения)
У вас точно установлена последняя версия плагина из данного репозитория? Попробуйте удалить плагин, репозиторий и добавить заново

@p4vook
Copy link

p4vook commented Jun 14, 2023

Лично у меня всё та же ошибка (Jellyfin 10.8.10, проверил только что, установлена последняя версия)

jellyfin    | [21:25:17] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly KinopoiskUnofficialInfo.ApiClient, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null from /config/plugins/КиноПоиск_10.8.9.2/KinopoiskUnofficialInfo.ApiClient.dll
jellyfin    | [21:25:17] [ERR] [1] Emby.Server.Implementations.Plugins.PluginManager: Failed to load assembly /config/plugins/КиноПоиск_10.8.9.2/Jellyfin.Plugin.Kinopoisk.dll. This error occurs when a plugin references an incompatible version of one of the shared libraries. Disabling plugin.
jellyfin    | System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
jellyfin    | Could not load file or assembly 'Microsoft.Extensions.DependencyInjection.Abstractions, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.
jellyfin    | 
jellyfin    |    at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
jellyfin    |    at System.Reflection.Assembly.GetTypes()
jellyfin    |    at Emby.Server.Implementations.Plugins.PluginManager.LoadAssemblies()+MoveNext()
jellyfin    | System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Extensions.DependencyInjection.Abstractions, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.
jellyfin    | 
jellyfin    | File name: 'Microsoft.Extensions.DependencyInjection.Abstractions, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'

@skrashevich
Copy link
Owner

Лично у меня всё та же ошибка (Jellyfin 10.8.10, проверил только что, установлена последняя версия)

Какая ОС и архитектура?

@p4vook
Copy link

p4vook commented Jun 14, 2023

Linux (Ubuntu 22.04.2, arm64)

@skrashevich
Copy link
Owner

Linux, arm64

Вот тут и проблема. Плагин собирается у меня под x86_64
Не помню уже почему мне пришлось жёстко указывать рантайм под конкретную платформу. Сейчас попробую пересобрать под обе архитектуры

@p4vook
Copy link

p4vook commented Jun 14, 2023

Действительно, как-то я даже не подумал, что проблема может быть в архитектуре.

Версия 10.8.9.3 не заработала, ошибка та же:

jellyfin    | [22:18:15] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly KinopoiskUnofficialInfo.ApiClient, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null from /config/plugins/КиноПоиск_10.8.9.3/KinopoiskUnofficialInfo.ApiClient.dll
jellyfin    | [22:18:15] [ERR] [1] Emby.Server.Implementations.Plugins.PluginManager: Failed to load assembly /config/plugins/КиноПоиск_10.8.9.3/Jellyfin.Plugin.Kinopoisk.dll. This error occurs when a plugin references an incompatible version of one of the shared libraries. Disabling plugin.
jellyfin    | System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
jellyfin    | Could not load file or assembly 'Microsoft.Extensions.DependencyInjection.Abstractions, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.
jellyfin    | 
jellyfin    |    at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
jellyfin    |    at System.Reflection.Assembly.GetTypes()
jellyfin    |    at Emby.Server.Implementations.Plugins.PluginManager.LoadAssemblies()+MoveNext()
jellyfin    | System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Extensions.DependencyInjection.Abstractions, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.
jellyfin    | 
jellyfin    | File name: 'Microsoft.Extensions.DependencyInjection.Abstractions, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'

UPD: FYI плагин Reports работает, хоть его бинарник внешне ничем не отличается от данного плагина (PE32 executable (DLL) (console) Intel 80386 Mono/.Net assembly, for MS Windows). Не очень понятно, где искать проблему.

@GalayZloy
Copy link

Версия плагина 10.8.9.2 без проблем работает на всех современных версиях Jellyfin, включая 10.8.10 (последняя на момент написания данного сообщения)
У вас точно установлена последняя версия плагина из данного репозитория? Попробуйте удалить плагин, репозиторий и добавить заново

Сделал переустановку и теперь работает (тестировал только на фильмах, сериалы не проверял). Почему с первого раза не завелся, не понятно, но имейте в виду.

Спасибо автору!

@skrashevich
Copy link
Owner

А у вас, случаем, не 10.8.9.4 установилась и заработала?

@GalayZloy
Copy link

А у вас, случаем, не 10.8.9.4 установилась и заработала?

Сейчас установилась версия 10.8.9.3.
10.8.9.4 у меня такой не отображается.

@GalayZloy
Copy link

Сериалы тоже распознаются, только почему-то название серий пишется как название файла. В остальном все супер.

@vsenn
Copy link

vsenn commented Jun 19, 2023

У меня 10.8.9.3 на последней версии Jellyfin в Docker выдаёт ошибку SSL сертификата. Буду благодарен, если поможете победить.
ссылка

Provider КиноПоиск failed to retrieve search results
System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
 ---> System.Security.Authentication.AuthenticationException: The remote certificate is invalid according to the validation procedure: RemoteCertificateNameMismatch, RemoteCertificateChainErrors

@vsenn
Copy link

vsenn commented Jun 19, 2023

Оказалось, что и плагин TMDB тоже ругается на SSL сертификат в логах

[ERR] [57] MediaBrowser.Providers.TV.SeriesMetadataService: Error in TheMovieDb
System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
 ---> System.Security.Authentication.AuthenticationException: The remote certificate is invalid according to the validation procedure: RemoteCertificateNameMismatch, RemoteCertificateChainErrors

Похоже на проблему с корневым сертификатом на Docker образе. Из того, что удалость найти, то чтобы обойти эти ошибки необходимо либо отключить проверку сертификата в коде плагина или понизить уровень безопасности до единички.

@skrashevich
Copy link
Owner

@vsenn какой образ контейнера вы используете?
Введите docker exec -it <название_вашего_контейнера_jellyfin> curl -v 'https://kinopoiskapiunofficial.tech/' и покажите результат

@KozlovAV
Copy link

Добрый день.
Не работает загрузка данных о видео.
После того, как выбрано видео из предложенных в поиске распознования, ничего не происходит.
В логе идет ругань, что не может найти сайт st.kp.yandex.net.
Сайт внутри докера резолвится в адрес 213.180.199.9 (см второй лог).

Сервер запущен через докер композ: image: linuxserver/jellyfin:10.8.10
Версия плагина 10.8.9.3 (в GUI отображается как 1.0.0.0. ? ) Адрес plugin: https://raw.githubusercontent.com/skrashevich/jellyfin-plugin-kinopoisk/master/dist/manifest.json

Лог докера:

jellyfin    | [13:35:50] [INF] [10] Jellyfin.Api.Controllers.ItemLookupController: Setting provider id's to item 02779365-fe9d-0cc7-54c7-5da0da7ebdfb-Madagascar.Escape.2.Africa.WEB-DL.KION: {"kinopoisk":"161066"}
jellyfin    | [13:36:11] [INF] [11] Emby.Server.Implementations.Session.SessionWebSocketListener: Sending ForceKeepAlive message to 1 inactive WebSockets.
jellyfin    | [13:36:23] [INF] [39] Emby.Server.Implementations.Session.SessionWebSocketListener: Lost 1 WebSockets.
jellyfin    | [13:37:13] [ERR] [33] MediaBrowser.Providers.Movies.MovieMetadataService: Error in КиноПоиск
jellyfin    | System.Net.Http.HttpRequestException: Name or service not known (st.kp.yandex.net:443)
jellyfin    |  ---> System.Net.Sockets.SocketException (0xFFFDFFFF): Name or service not known
jellyfin    |    at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
jellyfin    |    at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token)
jellyfin    |    at System.Net.Sockets.Socket.<ConnectAsync>g__WaitForConnectWithCancellation|277_0(A
![Screenshot from 2023-07-28 14-02-44](https://github.com/skrashevich/jellyfin-plugin-kinopoisk/assets/25077209/4ef81a21-5769-47ee-abb4-12475527b075)
waitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken)
jellyfin    |    at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken)
jellyfin    |    --- End of inner exception stack trace ---
jellyfin    |    at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken)
jellyfin    |    at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
jellyfin    |    at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
jellyfin    |    at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(HttpRequestMessage request)
jellyfin    |    at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken)
jellyfin    |    at System.Net.Http.HttpConnectionPool.GetHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
jellyfin    |    at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
jellyfin    |    at System.Net.Http.DiagnosticsHandler.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
jellyfin    |    at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
jellyfin    |    at Jellyfin.Plugin.Kinopoisk.RemoteImageUrlSanitizer.SanitizeRemoteImageUrl(String url)
jellyfin    |    at Jellyfin.Plugin.Kinopoisk.MetadataProviders.BaseVideoMetadataProvider`2.<>c__DisplayClass7_0.<<SanitizeEmptyImagePersonInfos>b__1>d.MoveNext()
jellyfin    | --- End of stack trace from previous location ---
jellyfin    |    at Jellyfin.Plugin.Kinopoisk.MetadataProviders.BaseVideoMetadataProvider`2.SanitizeEmptyImagePersonInfos(IEnumerable`1 images)
jellyfin    |    at Jellyfin.Plugin.Kinopoisk.MetadataProviders.BaseVideoMetadataProvider`2.GetMetadata(TLookupInfoType info, CancellationToken cancellationToken)

Доступ к сайту в докере:

root@nas:~/dockers/jellifin# docker exec -it jellyfin /bin/bash
root@4d558e456656:/# curl -v https://st.kp.yandex.net
*   Trying 213.180.199.9:443...
* Connected to st.kp.yandex.net (213.180.199.9) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
*  CAfile: /etc/ssl/certs/ca-certificates.crt
*  CApath: /etc/ssl/certs
* TLSv1.0 (OUT), TLS header, Certificate Status (22):
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS header, Certificate Status (22):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS header, Finished (20):
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* TLSv1.3 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* TLSv1.3 (IN), TLS handshake, Finished (20):
* TLSv1.2 (OUT), TLS header, Finished (20):
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
* TLSv1.3 (OUT), TLS handshake, FinishBinary output can mess up your ed (20):
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: C=RU; ST=Moscow; L=Moscow; O=Yandex LLC; CN=*.kinopoisk.ru
*  start date: Jun  7 21:01:33 2023 GMT
*  expire date: Dec  6 20:59:59 2023 GMT
*  subjectAltName: host "st.kp.yandex.net" matched cert's "*.kp.yandex.net"
*  issuer: C=BE; O=GlobalSign nv-sa; CN=GlobalSign RSA OV SSL CA 2018
*  SSL certificate verify ok.
* Using HTTP2, server supports multiplexing
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
* Using Stream ID: 1 (easy handle 0x560bf2935e90)
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
> GET / HTTP/2
> Host: st.kp.yandex.net
> user-agent: curl/7.81.0
> accept: */*
>
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* old SSL session ID is stale, removing
* TLSv1.2 (IN), TLS header, Supplemental data (23):
* Connection state changed (MAX_CONCURRENT_STREAMS == 128)!
* TLSv1.2 (OUT), TLS header, Supplemental data (23):
* TLSv1.2 (IN), TLS header, Supplemental data (23):
< HTTP/2 403
< vary: Accept-Encoding
< date: Fri, 28 Jul 2023 10:52:59 GMT
< nel: {"report_to": "network-errors", "max_age": 600, "success_fraction": 0.001, "failure_fraction": 0.01}
< set-cookie: _yasc=34gUSVRwvKgm1V8tRiCmdmezA1DRAHyimXshi60xknT/HrDlOuQDZRDi1X8=; domain=.yandex.net; path=/; expires=Mon, 25 Jul 2033 10:52:59 GMT; secure
< x-request-id: 1690541579109957-9188933567388399309
< report-to: {"group": "network-errors", "max_age": 600, "endpoints": [ { "url": "https://dr.yandex.net/s3_nel?datacenter=SAS"}]}
< content-encoding: gzip
< content-type: text/html
< strict-transport-security: max-age=31536000
<
Warning: Binary output can mess up your terminal. Use "--output -" to tell
Warning: curl to output it to your terminal anyway, or consider "--output
Warning: <FILE>" to save to a file.
* Failure writing output to destination
* stopped the pause stream!
* Connection #0 to host st.kp.yandex.net left intact
root@4d558e456656:/#

@KozlovAV
Copy link

KozlovAV commented Jul 28, 2023

В дополнение к вышесказанному

Внутри докер контейнера добавил в /etc/hosts записи на

213.180.199.9 st.kp.yandex.net
194.190.152.179 kinopoiskapiunofficial.tech

И заработало как надо. т.е. проблема в резолве имен внутри программы, если она внутри контейнера.
Из терминала внутри контейнера все резолвится нормально...

Но список доменных имен, которые нужны не понятен...
Например, понадобился еще один.. Их, конечно, можно так прописать в контейнере... но, если есть возможность поправить внутри программы, будет здорово

[2023-07-28 20:39:30.214 +03:00] [ERR] [99] MediaBrowser.Providers.Movies.MovieMetadataService: Error in "КиноПоиск"
System.Net.Http.HttpRequestException: Name or service not known (avatars.mds.yandex.net:443)
 ---> System.Net.Sockets.SocketException (0xFFFDFFFF): Name or service not known
   at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)

@Sa1mon1
Copy link

Sa1mon1 commented Nov 1, 2023

Наблюдается та же проблема с сертификатом, как указали выше (сообщение vsenn), Jellyfin установлен из приложений сообщества Synology, версия 10.8.10. Решения проблемы не нашел. Доступ через https проблему не решил. @skrashevich, если еще занимаетесь поддержкой плагина, не подскажите решения проблемы?

@skrashevich
Copy link
Owner

Наблюдается та же проблема с сертификатом, как указали выше (сообщение vsenn), Jellyfin установлен из приложений сообщества Synology, версия 10.8.10. Решения проблемы не нашел. Доступ через https проблему не решил. @skrashevich, если еще занимаетесь поддержкой плагина, не подскажите решения проблемы?

Странная фигня. Я посмотрю в ближайшее время причину и обновлю плагин

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants