Difference between revisions of "Schedchk"

From hummy.tv Wiki
Jump to: navigation, search
m (intermediate save)
m (add missEPG description)
Line 9: Line 9:
 
Since Pointless is one of our favourite shows I was provoked into resurrecting the Schedchk idea and finally it is now ready for a wider audience though there may still be a few rough edges.
 
Since Pointless is one of our favourite shows I was provoked into resurrecting the Schedchk idea and finally it is now ready for a wider audience though there may still be a few rough edges.
  
 +
The program relies on the epg being kept up-to-date to allow it to find alternative showings of programmes and, especially wih last minute changes, that can't be relied upon and sometimes there are no alternate showings so it will not be infallible but hopefully it will help you avoid some missed recordings,
  
 
I have found several different categories of potential errors in the schedule and these are listed below with examples of how they can occur and action schedchk takes when attempting to fix them.
 
I have found several different categories of potential errors in the schedule and these are listed below with examples of how they can occur and action schedchk takes when attempting to fix them.
 
__TOC__  
 
__TOC__  
 
== Failure Categories ==
 
== Failure Categories ==
 +
=== EPG changes ===
 +
The most basic form of schedule change is when the broadcaster changes the start time, duration or scheduled episode (CRID change).
 +
Usually the humax is quite good at spotting these changes but sometimes it doesn't immediately.
 +
 +
Schedchk will resolve this type of error by updating the schedule entry with the new details.
 +
 +
Checking for this type of problem can be by-passed by specifying the -noEPGchg option in settings or on the command line
 +
 +
=== Missing EPG entry ===
 +
Sometimes the event-id associated with a programme changes and the Humax is not good at resolving these, on occasion it can get very confused resulting in it scheduling two episodes of the same series at the same time!
 +
[[File:Schedchk-duplicateepisode.png|frameless|right|Duplicate episode]]
 +
Changes to the event-id can occur when a programme is moved another channel (e.g. Pointless moving from BBC1_>2), when a programme is added to the schedule (ITV assigned new event-ids to all programmes following the Queen's recent broadcasts), a different episode is scheduled (e.g, the duplicate example above) or if a programme is cancelled and replaced by something else.
 +
 +
Schedchk attempts to resolve this type of error by searching for another showing of the same programme (by event CRID) elsewhere in the EPG and if another showing (that doesn't cause a conflict) can be found, it will schedule that showing instead. 
 +
If there are no matches by event-crid it will look for a programme of the same name scheduled for the same time in case the Broadcaster has changed event-id, event-CRID and series-CRID and scheduled an episode from a different series of the programme.
 +
If duplicate episodes occur it will delete the episode that no longer appears in the EPG.
 +
 +
Checking for this type of problem can be by-passed by specifying the -noMissEPG option in settings or on the command line
 +
 +
=== Missing EPG entry ===
 
== Other controls ==
 
== Other controls ==
 
== Schedchk setting ==
 
== Schedchk setting ==
 +
<pre>
 +
schedchk = Check for recording schedule issues and attempt to fix them
 +
 +
schedchk -h            = produce this help
 +
schedchk -rsv          = scan the recording schedule
 +
 +
Options      Default (unless changed in Settings)
 +
-thresh      36  = Don't check for problems more than x hrs away from start
 +
-d          0    = Produce more detailed output
 +
-test        n    = Don't make updates
 +
-noAuto      n    = Don't run regularly as part of Auto-Processing
 +
-noAlert    n    = Don't generate webif alert messages for changes made
 +
-noConflict  n    = Don't check for conflicts
 +
-noUnsched  n    = Don't check for episodes missing from schedule
 +
-noSCRID    n    = Don't check for series CRID changes
 +
-no1off      n    = Don't check for episodes scheduled as one off programmes
 +
-noNotRec    n    = Don't check for failures to record
 +
-recWait    300  = Don't assume recording failed until x seconds late starting
 +
-noMissEPG  n    = Don't resolve missing epg entries
 +
-noEPGchg    n    = Don't resolve epg time/ duration/ event crid changes
 +
-noSplit    n    = Don't resolve repeated split recordings
 +
-noInplace  n    = Update reservation by skipping & 1-off rather than inplace
 +
 +
Note: Options are not case sensitive
 +
 +
</pre>
 
== fmtrsv - Format a rsv.db table entry ==
 
== fmtrsv - Format a rsv.db table entry ==
 
== Other Stuff ==
 
== Other Stuff ==
=== Change history ===  
+
=== Change history ===
=== Acknowledgements ===
 
 
{|border=1,
 
{|border=1,
 
| '''Date'''||'''Version'''||'''Author'''||'''Description'''
 
| '''Date'''||'''Version'''||'''Author'''||'''Description'''
Line 24: Line 70:
 
|2020-05-xx ||schedchk 0.1,0-0|| mymsman || Intial Version
 
|2020-05-xx ||schedchk 0.1,0-0|| mymsman || Intial Version
 
* All new!
 
* All new!
|)
+
|}
 
=== Acknowledgements ===
 
=== Acknowledgements ===
 
+
;af123:For providing the cf framework that underlies everything and who's code I have copied and hacked.
 +
;/df:For investigating the problems with Split recordings and writing the rsv set method
 +
;everbody else:Who has assisted through the forums
 
=== Future Enhancements ===  
 
=== Future Enhancements ===  
 
* Detect and reschedule recordings active at time of crash
 
* Detect and reschedule recordings active at time of crash
 
* Improve Series CRID change detection to reduce false positive's
 
* Improve Series CRID change detection to reduce false positive's

Revision as of 15:52, 24 May 2020

Schedchk48.png
DRAFT Schedchk - Check and fix the Humax recording schedule DRAFT

Introduction

While it is "only telly" it can be extremely annoying when we find that a programme we had scheduled to record fails to record correctly. Some failures can be attributed to user errors but a considerable numbers of problems are attributable to the broadcasters and problems in the Humax software not anticipating the ever more creative ways the broadcasters find to make life complicated!

The origins of schedchk go back several years to a forum postwhere I proposed the idea of automatically detecting when programmes were delayed or moved to another channel (e.g. BBC One -> BBC Two) because of overrunning sporting events or breaking news events. Nothing much happened at that time since Wimbledon only last two weeks and other last minute programme changes are by their nature unpredictable making testing difficult.

However now we live in Interesting Times the unpredictable has become routine, every day the BBC1 showing of Pointless is moved to BBC2 to make way for the Corona Virus Daily Update. One might think that after this long the BBC would take the hint and schedule Pointless on BBC2 but no they persist in scheduling it on BBC1 and only update the schedules 3-72 hours in advance! Since Pointless is one of our favourite shows I was provoked into resurrecting the Schedchk idea and finally it is now ready for a wider audience though there may still be a few rough edges.

The program relies on the epg being kept up-to-date to allow it to find alternative showings of programmes and, especially wih last minute changes, that can't be relied upon and sometimes there are no alternate showings so it will not be infallible but hopefully it will help you avoid some missed recordings,

I have found several different categories of potential errors in the schedule and these are listed below with examples of how they can occur and action schedchk takes when attempting to fix them.

Failure Categories

EPG changes

The most basic form of schedule change is when the broadcaster changes the start time, duration or scheduled episode (CRID change). Usually the humax is quite good at spotting these changes but sometimes it doesn't immediately.

Schedchk will resolve this type of error by updating the schedule entry with the new details.

Checking for this type of problem can be by-passed by specifying the -noEPGchg option in settings or on the command line

Missing EPG entry

Sometimes the event-id associated with a programme changes and the Humax is not good at resolving these, on occasion it can get very confused resulting in it scheduling two episodes of the same series at the same time!

Duplicate episode

Changes to the event-id can occur when a programme is moved another channel (e.g. Pointless moving from BBC1_>2), when a programme is added to the schedule (ITV assigned new event-ids to all programmes following the Queen's recent broadcasts), a different episode is scheduled (e.g, the duplicate example above) or if a programme is cancelled and replaced by something else.

Schedchk attempts to resolve this type of error by searching for another showing of the same programme (by event CRID) elsewhere in the EPG and if another showing (that doesn't cause a conflict) can be found, it will schedule that showing instead. If there are no matches by event-crid it will look for a programme of the same name scheduled for the same time in case the Broadcaster has changed event-id, event-CRID and series-CRID and scheduled an episode from a different series of the programme. If duplicate episodes occur it will delete the episode that no longer appears in the EPG.

Checking for this type of problem can be by-passed by specifying the -noMissEPG option in settings or on the command line

Missing EPG entry

Other controls

Schedchk setting

schedchk = Check for recording schedule issues and attempt to fix them

schedchk -h            = produce this help
schedchk -rsv          = scan the recording schedule

Options      Default (unless changed in Settings)
-thresh      36   = Don't check for problems more than x hrs away from start
-d           0    = Produce more detailed output
-test        n    = Don't make updates
-noAuto      n    = Don't run regularly as part of Auto-Processing
-noAlert     n    = Don't generate webif alert messages for changes made
-noConflict  n    = Don't check for conflicts
-noUnsched   n    = Don't check for episodes missing from schedule
-noSCRID     n    = Don't check for series CRID changes
-no1off      n    = Don't check for episodes scheduled as one off programmes
-noNotRec    n    = Don't check for failures to record
-recWait     300  = Don't assume recording failed until x seconds late starting
-noMissEPG   n    = Don't resolve missing epg entries
-noEPGchg    n    = Don't resolve epg time/ duration/ event crid changes
-noSplit     n    = Don't resolve repeated split recordings
-noInplace   n    = Update reservation by skipping & 1-off rather than inplace

Note: Options are not case sensitive

fmtrsv - Format a rsv.db table entry

Other Stuff

Change history

Date Version Author Description
2020-05-xx schedchk 0.1,0-0 mymsman Intial Version
  • All new!

Acknowledgements

af123
For providing the cf framework that underlies everything and who's code I have copied and hacked.
/df
For investigating the problems with Split recordings and writing the rsv set method
everbody else
Who has assisted through the forums

Future Enhancements

  • Detect and reschedule recordings active at time of crash
  • Improve Series CRID change detection to reduce false positive's