MediaBrowser.Plugins.VuPlus
MediaBrowser Vu+ Plugin
Plugin for MediaBrowser to allow it to view channels, browse epg, set and delete timers, play recordings etc.
Known Issues / Limitations
Genres are set to 'Unknown'. No Series related functionality. If paths are entered on the config page then remember to end them with a slash
Setup on Vu+ / Enigma2
Ensure openWebIf is installed and running - go into settings and make a note of them so they can be entered on the MediaBrowser Vu+ config page.
Setup on MediaBrowser server
Install Vu+ plugin and restart MediaBrowser server. Go to config page for Vu+ and amend default contents as follows (at a minimum, the first 3 must be entered):
Vu+ hostname or ip address: The host name (address) or ip address of your Vu+ receiver
Vu+ streaming port: The Streaming port of your Vu+ receiver eg. 8001 / 8002
Vu+ Web Interface port: The web Interface port of your receiver eg. 8000
Vu+ Web Interface username: The web Interface username of your receiver (optional) Vu+ Web Interface password: The web Interface password of your receiver (optional)
Use secure HTTP (HTTPS): Use HTTPS instead of HTTPS to connect to your receiver
Fetch Only one TV bouquet: Limit channels to only those contained within the specified TV Bouquet below (optional) Vu+ TVBouquet: The TV Bouquet to load channels for (optional - only required if 'Fetch Only one TV bouquet' set)
Zap before Channel switch (single tuner) Set if only one tuner within receiver to make tuner jump to channel
Fetch picons from webinterface: Set if you want to retrieve Picons from the web interface of the receiver Picons Path: The local location of your Picons (must end with appropriate slash) eg. C:\Picons\ (optional - only required if 'Fetch picons from webinterface' is not set)
Recording Path: The location to store your recordings on your receiver (must end with appropriate slash) eg. /hdd/movie/ (optional)
Enable VuPlus debug logging: Plugin Debugging
Local Jellyfin 10.11 integration
See integration changes and deployment. Internet EPG artwork, native channel preferences, optional Vu+ recordings provider; local version 6.1.0.0.
Kandydat 7.0.9 — stare wpisy kanałów po migracji, 23.10.2026
Odczyt metadanych LiveTvChannel potwierdził stare i nowe wpisy Pulsu/Pulsu 2 oraz stare wpisy WP i TVN24 po zmianie bukietów dekodera. GetChannelStream odświeża listę z dekodera i rozwiązuje zapamiętaną referencję przed zapem, rejestracją relay i wyznaczeniem SID do probe. Najpierw zachowuje dokładny aktualny wpis; potem dopuszcza jednoznaczną zmianę samego typu usługi DVB; migrację SID/TSID rozpoznaje tylko po unikalnej dokładnej nazwie odczytanej z historycznego kanału Enigma2. Brak dopasowania lub niejednoznaczność zachowuje poprzednie zachowanie. Nie zgadujemy HD/SD ani wariantów regionalnych. Natywny identyfikator kanału i preferencje użytkownika pozostają zachowane. Stary i nowy wpis wskazują ten sam adres relay, więc nie otwierają dwóch źródeł. Odczyt bukietu ma wspólny limit 5 s; niedostępny lub zawieszony OpenWebif zachowuje próbę odtwarzania oryginalnej referencji. Anulowanie przez klienta pozostaje obowiązujące.
102 kontrole .NET10 przeszły, w tym rzeczywiste GetChannelStream z atrapą OpenWebif i natywnej biblioteki: nowy SID 5105, wspólne metadane i jedno połączenie relay dla starego/nowego Pulsu, anulowanie bez dodatkowego połączenia. Build Release: 0 ostrzeżeń, 0 błędów. Restore korzystał z cache pakietów bez sieci; NuGetAudit wyłączono jedynie dla tego odtworzenia offline. Nie potwierdza to odbioru na zalogowanym urządzeniu.
Status na moment zapisu: 7.0.9 przygotowana, niewdrożona. W produkcji pozostaje 7.0.8. Nowa sesja Wydarzeń 24 rozpoczęta o 16:21:45 UTC dała poprawne serwerowe HLS (248 klatek 1080p / 9,88 s oraz 10,027 s audio). Restart wymagany do podmiany DLL czeka na zgodę dotyczącą tej aktywnej sesji. Osobny brak odkodowanego wyjścia CANAL+4K wymaga diagnostyki źródła ECM i nie jest naprawiany przez ten resolver. Nie zmieniono ustawień Jellyfina, wrapperów, plików Web ani konfiguracji dekodera.
7.0.9 wdrożona — 23.10.2026, 19:07 CEST
Po poleceniu użytkownika „Restart” wdrożono DLL o SHA256 8db3b3700ef417c591f2361e013e20c601052bd35bc124f449c899183950c986. Produkcja używa teraz 7.0.9.0, co potwierdził świeży log załadowania i publiczny health. Konfiguracja serwera/wtyczki, wrappery, moduł Web i 26 plików preferencji pozostały identyczne. Dwa aktywne nagrania dekodera zachowano; nie restartowano odbiornika. Backup: /var/lib/jellyfin/decoder-plugin-backups/plugin-only-20261023T170741733074Z; raport deployment-7.0.9-20261023.json. Poprzedni akapit opisuje etap przed zgodą i wdrożeniem. Obsługa automatycznej synchronizacji okresowej jest osobnym zadaniem; 7.0.9 sprawdza aktualne referencje przy odtwarzaniu.
7.0.10 — automatyczna synchronizacja, 23.10.2026
Na żądanie użytkownika domyślny harmonogram zadania wtyczki „Synchronizacja kanałów Enigma2” to start serwera i co 6 godzin. Dodano w ustawieniach wtyczki przełącznik automatycznej synchronizacji, domyślnie włączony. Godziny można zmienić w natywnych zadaniach zaplanowanych dla tego zadania. Nie zmieniamy globalnego harmonogramu Refresh Guide.
Zadanie pobiera bukiety z limitem30s i wykrywa zmiany referencji, nazw, kolejności, numerów lub adresów logo. Przy zmianie albo braku kanałów w natywnej bibliotece uruchamia przez ITaskManager istniejące natywne RefreshGuide (limit5min), dzięki czemu aktualizowana jest właściwa Telewizja i EPG. Nie otwiera strumieni ani nie zmienia tunerów. Pusta lista lub błąd odbiornika nie uruchamia odświeżenia. Gdy RefreshGuide już trwa, synchronizacja jest odkładana do kolejnego wyzwolenia. Lista bez zmian nie wymaga ponownego pełnego odświeżania przewodnika.
Przed natywnym odświeżeniem zapisuje własny checkpoint w data/decoder-integration/channel-sync.json: stare identyfikatory/ref/nazwy oraz natywne ulubione. Po jednoznacznej migracji aktualizuje natywne ulubione oraz ulubione/ukryte/kolejność we własnych preferencjach użytkowników. Aktualizacje plików preferencji używają tych samych blokad co edytor, zachowują aktualne ustawienia i usuwają duplikaty. Błąd/anulowanie pozostawia checkpoint do ponowienia również wtedy, gdy natywne zadanie usunęło już stare kanały. Bezpośrednich zapisów do bazy Jellyfina nie ma. Stan ostatniej kontroli/synchronizacji jest dostępny w administracyjnym DecoderIntegration/Status.
120 kontroli .NET10 przeszło: dokładnie6h/start, zmiany numerów i logo, migracja natywnych i własnych preferencji, rozdzielenie użytkowników, pusta lista, zajęty przewodnik, częściowa awaria i ponowienie, współbieżność, anulowanie oraz wyłączenie funkcji. Źródła ani nagrania produkcyjne nie były używane w tych testach. Stan przed wdrożeniem: produkcja7.0.9, kandydat7.0.10.