←  [EN] Enduser support

Forums

»

Alternative Channels Saga, Part 2: OpenWeb...

macnuts's Photo macnuts 4 Aug 2012

At first glimpse, the OpenWebif does not support alternative channels at all.
[list]
[*]Zapping does not work.
[*]Epg cannot be displayed.
[*]No streaming.
[/list]
I managed to overcome those problems, but I am not sure if my solution does not break anything else. You are invited to test it. I tested it myself a bit and did not found any regression bugs, but who knows.

I tested streaming with VLC, this solution does not work for Windows Media Player for some reason. I did not test any other player.

As I am not a python expert, I describe below what I corrected, someone may find a better python-way maybe.

For the first two issues above, the problems are quotation marks in the alternative channel reference string:

1:134:1:0:0:0:0:0:0:0:FROM BOUQUET "alternatives.tvp1_hd.tv" ORDER BY bouquet

Those quotation marks ruin the generated html layout, so javascript onclick handlers are not invoked.
I corrected it by wrapping the 'ref' property with quote/unquote. The layout is OK, and both zapping and epg started to work. And those quote/unquote - that can break the code somewhere (although it seems to work well).

Next, after the epg started to work, I had to correct the picons code. I followed the lovely solution created by littlesat (great work, btw). I could not refer to the new alternatives tools directly as other images may lack it.

Streaming needed one step of redirection for "1:134:*" service references, I followed the pattern from Navigation::playService.

Regards.

Attached File  OpenWebif_patch_v_0_0.tar.gz   1.58KB   15 downloads
Quote

littlesat's Photo littlesat 4 Aug 2012

Wy didn't you use the new Tools.Alternative here... see the example in Picon.py? This reduces duplicate code anywhere were the alternatives stuff is buggy. I think in the same tool we coud add a function to get the best service reference.

But I cannot change the WebIf itself.... So someone else have to pick this up...
Edited by littlesat, 4 August 2012 - 09:02.
Quote

macnuts's Photo macnuts 4 Aug 2012

Next, after the epg started to work, I had to correct the picons code. I followed the lovely solution created by littlesat (great work, btw). I could not refer to the new alternatives tools directly as other images may lack it.


Wy didn't you use the new Tools.Alternative here... see the example in Picon.py? This reduces duplicate code anywhere were the alternatives stuff is buggy. I think in the same tool we coud add a function to get the best service reference.

But I cannot change the WebIf itself.... So someone else have to pick this up...


I love your new Tools.Alternative, but it is OpenPli specific, I am afraid. And OpenWebif is supposed to run on multiple images.

Regards.
Quote

littlesat's Photo littlesat 4 Aug 2012

I love your new Tools.Alternative, but it is OpenPli specific

Other images currently likely based on OpenPli can adapt it.... So I suggest this should not be the issue here. For the time being you can download it yourself from our sources. Open it on you browser so you see the code and click with the right mouse button on raw to download it.

I suggest there are still many places in Enigma2 where alternatives were not correctly covered....

But still the WebIf is E2Openplugins and not OpenPli....
Edited by littlesat, 4 August 2012 - 10:33.
Quote

macnuts's Photo macnuts 4 Aug 2012

Here comes better solution using Tools.Alternatives module... ;)

Note, that fix in stream.py changing group service reference into best playable one is temporary. When I correct the 8001 streaming problem, that fix will not be necessary (playing m3u file ends in streaming from 8001 port).

Regards.

Attached File  OpenWebif_patch_v_0_1.tar.gz   1.54KB   15 downloads
Edited by macnuts, 4 August 2012 - 14:46.
Quote

littlesat's Photo littlesat 4 Aug 2012

Please note I cannot commit that... The best what you can do is go to here: https://github.com/E2OpenPlugins and suggest your patch as improvement....
Quote

SpaceRat's Photo SpaceRat 22 Sep 2012

OpenWebIf is still unusable with Alternatives though obviously a fix exists ...
I have applied the patch above and it fixes a lot of the problems OpenWebIf has with Alternatives, but it breaks whenever something less important gets fixed (or broken) in OpenWebIf and there is a new version on the feed.
Quote

macnuts's Photo macnuts 22 Sep 2012

I'll try to produce proper patch that could be incorporated into webif project, but I've no time to do it yet...
Quote

SpaceRat's Photo SpaceRat 22 Sep 2012

I'll try to produce proper patch that could be incorporated into webif project,

That would be cool, because it's my top 2 annoyance in Enigma2.

Top 1: Freeze when accessing SMB shares after the server restarted
Top 2: No Alternatives in OpenWebIf
Top 3: No usable permanent timeshift
Quote

SpaceRat's Photo SpaceRat 23 Sep 2012

BTW: I noticed your patch doesn't fix the timers page of the OpenWebif (Can't edit/delete/toggle timers with recordings on channels with alternatives).
I played around with it a bit and was able to apply changes similar to yours and in the end was able to delete and toggle those timers. The only problem was in editing timers, because the changes lead to the web interface not recognizing the previous channel of the recording. When opening the edit dialog, they all appeared to be on the first channel of the bouquet. They were correctly saved when one manually re-adjusted the channel, but it was still some kind of annoyance left.
Quote