@Dimitrij
Please, would you like to help me here?
I really would like to check this out.
Thanks.
Edited by Dimitrij, 28 December 2019 - 14:19.
Posted 28 December 2019 - 14:43
Dimitrij, Thank you very much.
I figured out that it had to be something about EPG (EPGcache) but I was not able find the correct classes/methods, very confusing.
The enigma2 API is very difficult to explore because there is not documentation and no comments in the sourcecode.
I would like to learn. Do you have any documents to study?
Edited by Qu@rk, 28 December 2019 - 14:47.
Posted 28 December 2019 - 15:02
I would like to learn. Do you have any documents to study?
https://github.com/OpenPLi/enigma2
Only by study .
GigaBlue UHD Quad 4K /Lunix3-4K/Solo 4K
Posted 28 December 2019 - 15:15
Thank you, of course that was my first source already. Very difficult to understand.
Of course your TimerEdit.py works fine.
Two points to consider if this should make it in any final release:
Warning "Conflict detection...":
The warning "Conflict detection disabled!" would be normally appended to the former short description.
With an extended desription it is possible that the warning is out of sight at the end of the description and cut off by the skin.
Suggestion: Add the warning in front of the description.
Description changed in EPG:
For timers occuring several days in the future it is possible that the short description (and ext. description) in the EPG changes.
So the short description stored in the timer is different from the short description of the EPG.
With german free-TV that happens quite often. Sometimes the description and ext. description changed/was updated only a couple of days before the timer event.
So it could be confusing for the user if the short description of the timer and EPG differs.
Btw, that could also be a reason why the autotimer search fails if the description is used for filters.
But that's another story.
It is not trivial to decide what to do with the changing description.
Would you like to show the actual timer state of the description field in TimerEdit screen or would you like to show the actual EPG information?
Or both descriptions if they differ, one marked with (EPG) and one marked with (Timer). That would be very technical solution but maybe good for analysis if for example autotimer fails.
Posted 28 December 2019 - 15:51
My suggestion of changes for different descriptions and if timer description is empty, "Conflict ..." warning in front of all:
I am not satisfied with the [Timer] and [EPG] solution. It is technically correct but I am not sure if it is too confusin for the user.
text = cur.description event = eEPGCache.getInstance().lookupEventId(cur.service_ref.ref, cur.eit) if event: ext_description = event.getExtendedDescription() short_description = event.getShortDescription() if text != short_description: if text and short_description: text = text + " [Timer]" + "\n" + short_description + " [EPG]" elif short_description: text = short_description if ext_description and ext_description != text: if text: text += "\n" + ext_description else: text = ext_description if not cur.conflict_detection: text = _("\nConflict detection disabled!") + text self["description"].setText(text)
Posted 28 December 2019 - 20:53
I dd id some thinking about the case of differing timer/EPG desriptions:
TimerEdit should always show the actual EPG information for short and ext. description.
Manually created timers will put the correct EPG information into the recording - so you get what you saw.
AutoTimer should update the description of already created timers (does it?) everytime it does a scan.
You know better whether if it already does, if this makes sense or is not suitable because of the search algorithm.
Anyway, for the user it is more useful to see always the actual EPG information in TimerEdit than possibly outdated descriptions.
Edited by Qu@rk, 28 December 2019 - 20:55.
Posted 29 December 2019 - 13:25
[TimerEdit] show extended description in timers list
GigaBlue UHD Quad 4K /Lunix3-4K/Solo 4K
Posted 29 December 2019 - 13:26
Merged.
Currently in use: VU+ Duo 4K (2xFBC S2), VU+ Solo 4K (1xFBC S2), uClan Usytm 4K Pro (S2+T2), Octagon SF8008 (S2+T2), Zgemma H9.2H (S2+T2)
Due to my bad health, I will not be very active at times and may be slow to respond. I will not read the forum or PM on a regular basis.
Many answers to your question can be found in our new and improved wiki.
Posted 29 December 2019 - 15:25
[TimerEdit] show extended description in timers list
But you yourself will have to prove the need for this patch on github.com.
Thanks. Sorry but I have no idea what you mean.
Neither have I experience with github nor an account. I thought we would discuss this here.
As mentioned: Placing the warning "Conflict detection disabled!" at the end of the description can make it invisible if the length of the description exceeds the size of space for it selected in the skin.
I suggested to put it at the beginning of the description to stay visible even with long descriptions.
But I do not know the relevance of this warning.
Edited by Qu@rk, 29 December 2019 - 15:30.
Posted 1 January 2020 - 15:35
[TimerEdit] show extended description in timers list
But you yourself will have to prove the need for this patch on github.com.
HAPPY NEW YEAR!
Appended (incl. new source file), a new, simpler solution of "TimerEdit.py", with a more logical appearance for the user while checking timers.
"\nConflict detection disabled!" at the beginning of the description to prevent invisibility with long description (cut off).
The removal of the "\n" in front of the warning text would lead to the necessity of an alteration of all .po-files (translations).
I left it as it was because I do not know the implications.
Dimitrij, please review and if possible alter the commit if you have no objections.
timer_description = cur.description text = _("Timer:") + " " + timer_description event = eEPGCache.getInstance().lookupEventId(cur.service_ref.ref, cur.eit) if event: ext_description = event.getExtendedDescription() short_description = event.getShortDescription() text += "\n" + _("EPG:") + " " + short_description if ext_description and ext_description != timer_description: text += "\n" + ext_description if not cur.conflict_detection: text = _("\nConflict detection disabled!") + "\n" + text self["description"].setText(text)
Edited by Qu@rk, 1 January 2020 - 15:39.
Posted 1 January 2020 - 17:29
I don't agree with that.
I use autotimer a lot, and quite often duplicate timers are created, due to differences in EPG descriptons or of old reruns I've already seen.
The only way to decide whether or not to disable the timer is to go out of the timer screen, go to the EPG, and check the descriptions manually. Which is a very time consuming action.
Currently in use: VU+ Duo 4K (2xFBC S2), VU+ Solo 4K (1xFBC S2), uClan Usytm 4K Pro (S2+T2), Octagon SF8008 (S2+T2), Zgemma H9.2H (S2+T2)
Due to my bad health, I will not be very active at times and may be slow to respond. I will not read the forum or PM on a regular basis.
Many answers to your question can be found in our new and improved wiki.
Posted 1 January 2020 - 18:10
I don't agree with that.
I use autotimer a lot, and quite often duplicate timers are created, due to differences in EPG descriptons or of old reruns I've already seen.
The only way to decide whether or not to disable the timer is to go out of the timer screen, go to the EPG, and check the descriptions manually. Which is a very time consuming action.
We have already done it.
[TimerEdit] show extended description in timers list
When timer_description does not match short_description(EPG) --> show timer_description and short_description
GigaBlue UHD Quad 4K /Lunix3-4K/Solo 4K
Posted 1 January 2020 - 18:19
Hmmm.... Have to double check then, just updated my boxes,
edit: ok, see it. In terms of layout not brillant, but it will do, turns out I was looking at fallback timers, which still behave different...
Currently in use: VU+ Duo 4K (2xFBC S2), VU+ Solo 4K (1xFBC S2), uClan Usytm 4K Pro (S2+T2), Octagon SF8008 (S2+T2), Zgemma H9.2H (S2+T2)
Due to my bad health, I will not be very active at times and may be slow to respond. I will not read the forum or PM on a regular basis.
Many answers to your question can be found in our new and improved wiki.
Posted 2 January 2020 - 10:07
My first solution was a draft suggestion open for discussion (as we do now).
The appended text markers [EPG] and [Timer] if descriptions are different are not optimal and would have to be changed anyway.
At the moment of timer creation the EPG can be different from the actual EPG a view days later. Happens in Germany all the time.
The user would have all the information he needs.
It would be absolutely no problem to show only both short_descriptions if they were different.
In my opinion the new version is clearer, more logical for the user, to show the timer information and the actual EPG.
It also clearer for the user, because the user always sees that there is information coming from the timer and information coming from the actual EPG (not included in the timer).
The new layout supports the logic, also if the short descriptions are empty, which also happens very often in Germany.
In the former version, altered by Dimitrij, the position of "Conflict detection disabled!" is still wrong, as mentioned many times (and commented).
If you think the former version was better, no problem, just change the markers [Timer] and [EPG] to _("Timer:") and _("EPG:") and put them at the beginning of the descriptions (better Layout).
And change the position of the message "Conflict detection...".
Edited by Qu@rk, 2 January 2020 - 10:09.
Posted 2 January 2020 - 12:53
I still strongly recommend my second solution with both descriptions (timer and EPG) always visible.
It is by far more informative for the user because it offers more information in a more logical and obvious way.
My first solution that has been prematurely committed is buggy and has a bad layout.
I do not want to be responsible for a buggy release.
Here the corrected version of my first solution:
text = cur.description event = eEPGCache.getInstance().lookupEventId(cur.service_ref.ref, cur.eit) if event: ext_description = event.getExtendedDescription() short_description = event.getShortDescription() if text != short_description: if text and short_description: text = _("Timer:") + " " + text + "\n" + _("EPG:") + " " + short_description elif short_description: text = short_description if ext_description and ext_description != text: if text: text += "\n" + ext_description else: text = ext_description if not cur.conflict_detection: text = _("\nConflict detection disabled!") + "\n" + text self["description"].setText(text)
Edited by Qu@rk, 2 January 2020 - 12:54.
Posted 2 January 2020 - 20:15
I don't see the discussion. But after update totday I see change. Is that intended ?My first solution was a draft suggestion open for discussion (as we do now).
The appended text markers [EPG] and [Timer] if descriptions are different are not optimal and would have to be changed anyway.
At the moment of timer creation the EPG can be different from the actual EPG a view days later. Happens in Germany all the time.
The user would have all the information he needs.
It would be absolutely no problem to show only both short_descriptions if they were different.
In my opinion the new version is clearer, more logical for the user, to show the timer information and the actual EPG.
It also clearer for the user, because the user always sees that there is information coming from the timer and information coming from the actual EPG (not included in the timer).
The new layout supports the logic, also if the short descriptions are empty, which also happens very often in Germany.
In the former version, altered by Dimitrij, the position of "Conflict detection disabled!" is still wrong, as mentioned many times (and commented).
If you think the former version was better, no problem, just change the markers [Timer] and [EPG] to _("Timer:") and _("EPG:") and put them at the beginning of the descriptions (better Layout).
And change the position of the message "Conflict detection...".
Edited by jort38, 2 January 2020 - 20:17.
Vu+ Ultimo 4K (4 TB HD, DVBS FSB, DVBC FBC & OpenPli 9),
Xtrend ET10000 (1 DVBS works via ethernet & OpenPli 9),
Xtrend ET10000 (DVBT2 & OpenPli 9, located in Thailand). Only latest stable releases.
Xtrend ET10000 (works via ethernet & OpenPli 9) and
Xtrend ET8000 (1 TB HD, 1 DVBT2 & works via ethernet & OpenPli 9)
0 members, 0 guests, 0 anonymous users