Media Rover

Got a program that plays well with SABnzbd? Share it here!
wally007
Release Testers
Release Testers
Posts: 179
Joined: August 28th, 2009, 5:24 pm

Re: Media Rover

Post by wally007 »

kierse wrote:
wally007 wrote: ...it'd better if MR just ignored ONE source error and continued with other sources.
It's supposed to be doing that.  I'll have a look and get back to you
This is the feed that shows up in place of ALL old nzbmatrix rss links
http://rss.nzbmatrix.com/rss-moved.php

So if you have older nzbmatrix rss feed , you should be able to trigger same error i had.

User avatar
kierse
Sr. Member
Sr. Member
Posts: 254
Joined: March 5th, 2009, 11:59 pm
Location: Canada
Contact:

Re: Media Rover

Post by kierse »

wally007 wrote: This is the feed that shows up in place of ALL old nzbmatrix rss links
http://rss.nzbmatrix.com/rss-moved.php
Thanks, that helped reproduce the error
wally007 wrote: ...it'd better if MR just ignored ONE source error and continued with other sources
True, but it would likely make my life a living hell in the future ;).  This problem is slightly different than the previous one you and I have dealt with.  In the past, MR was crashing because one of the feeds was unavailable.  The solution was to update MR to trap connection errors and skip to the next source.  This new error is occurring because nzbmatrix isn't returning data formatted the way MR expects.  In this case, the solution is to have the source plugin verify the data and raise an error if something is amiss. 

I don't want to blindly trap any/all errors as this will hide code and other human errors and make things difficult to debug.  Let's see how this new level of data verification works and go from there.  I've pushed the updates to Github, give them a whirl and let me know if you run into any problems.

Kierse

User avatar
kierse
Sr. Member
Sr. Member
Posts: 254
Joined: March 5th, 2009, 11:59 pm
Location: Canada
Contact:

Re: Media Rover

Post by kierse »

Hi everyone,

I just pushed some code changes to Github that introduce some new functionality to Media Rover.  Here's a quick overview of the changes:

1) rewrote mediarover.py to be the single point of execution for all MR functionality.  From now on, running MR without any arguments will get you the following:

Code: Select all

Usage: mediarover.py [--version] [--help] COMMAND [ARGS]

Description: Media Rover is an automated TV download scheduler and catalogue maintainer

Available commands are:
   schedule       Process configured sources and schedule nzb's for download
   episode-sort   Sort downloaded episode
   set-quality    Register quality of series episodes on disk
   write-configs  Generate default configuration and logging files

See 'python mediarover.py COMMAND --help' for more information on a specific command.
Each available command has it's own set of command line options.  A complete description of a command and it's options can be found by running the following:

Code: Select all

> python mediarover.py COMMAND --help
For example, here is the help documentation for the 'write-configs' command:

Code: Select all

> python mediarover.py write-configs --help

Code: Select all

Usage: mediarover.py write-configs [options]

Description: generate default configuration and logging files

Options:
  -c /PATH/TO/CONFIG/DIR, --config=/PATH/TO/CONFIG/DIR
                        path to application configuration directory
  -h, --help            show this help message and exit

Examples:
   Generate default application config files:
     > python mediarover.py write-configs
	
   Generate default application config files, in a specific directory:
     > python mediarover.py write-configs --config /path/to/config/dir
2) removed episode_sort.py.  Keeping in line with the previous statement, episode sorting is now a function of the mediarover.py script.  Along with this change comes the ability to easily sort a downloaded episode manually.  Instead of having to provide the 7 arguments usually supplied by SABnzbd, a user can now manually sort a downloaded episode by providing the download path and (optionally) the episode quality.  One drawback to this change is that a shell script will now be required by everyone wishing to have SABnzbd automatically sort downloaded episodes (due to the new argument requirement).  I suspect most users already use the shell script to invoke MR so I don't think this will be too big of a problem.  The various shell script examples (in the scripts/ directory) have been updated to properly invoke MR using the new approach.

3) added ability to populate the metadata database with quality information for your existing episodes.  See

Code: Select all

> python mediarover.py set-quality --help
for details

I imagine there will be some bugs with these changes.  As always, please post here or create a support ticket in the Github issue tracker

Kierse

pilGrim
Full Member
Full Member
Posts: 116
Joined: January 9th, 2009, 7:28 pm
Location: Hong Kong, SAR China

Re: Media Rover

Post by pilGrim »

kierse wrote:
2) removed episode_sort.py.  Keeping in line with the previous statement, episode sorting is now a function of the mediarover.py script.  Along with this change comes the ability to easily sort a downloaded episode manually.  Instead of having to provide the 7 arguments usually supplied by SABnzbd, a user can now manually sort a downloaded episode by providing the download path and (optionally) the episode quality.  One drawback to this change is that a shell script will now be required by everyone wishing to have SABnzbd automatically sort downloaded episodes (due to the new argument requirement).  I suspect most users already use the shell script to invoke MR so I don't think this will be too big of a problem.  The various shell script examples (in the scripts/ directory) have been updated to properly invoke MR using the new approach.
Hi Kierse,

Is there a document that speaks to the differences between your episode_sort functionality over the SABnzbd sort rename functionality?  Main issue I have with SABnzbd is using ability to use multiple locations across different drives.  Media rover can watch multiple locations will it also place a show in the correct drive location when unpacked, renamed and moved?


Thanks for the hard work on this program!!

pilgrim

rollingeyeball
Release Testers
Release Testers
Posts: 183
Joined: January 30th, 2009, 12:26 pm

Re: Media Rover

Post by rollingeyeball »

Is there a document that speaks to the differences between your episode_sort functionality over the SABnzbd sort rename functionality?  Main issue I have with SABnzbd is using ability to use multiple locations across different drives.  Media rover can watch multiple locations will it also place a show in the correct drive location when unpacked, renamed and moved?
pilGrim, I can confirm MR does that :)

pilGrim
Full Member
Full Member
Posts: 116
Joined: January 9th, 2009, 7:28 pm
Location: Hong Kong, SAR China

Re: Media Rover

Post by pilGrim »

rollingeyeball wrote: pilGrim, I can confirm MR does that :)
Perfect!  Many thanks, that is a good enough reason for me to switch.

One more question, does the mediarover script also use the alias name when renaming?  that would make it perfect in my eyes, given my pain points.

pilgrim

User avatar
kierse
Sr. Member
Sr. Member
Posts: 254
Joined: March 5th, 2009, 11:59 pm
Location: Canada
Contact:

Re: Media Rover

Post by kierse »

Hey pilGrim,
pilGrim wrote: Is there a document that speaks to the differences between your episode_sort functionality over the SABnzbd sort rename functionality?  Main issue I have with SABnzbd is using ability to use multiple locations across different drives.  Media rover can watch multiple locations will it also place a show in the correct drive location when unpacked, renamed and moved?
MR tries to 'do the right thing' when it encounters a series with more than one location.  When sorting an episode, it first attempts to find an existing season folder within one of the series paths.  If it finds an existing folder, the episode will be sorted there.  If there is no existing season folder, MR attempts to create one and then place the episode in it.  In the situation when MR has to create the season folder (and the series has multiple paths), it will choose the first series path.  The series paths are ordered the same as the paths for tv_root in the config file.
pilGrim wrote: One more question, does the mediarover script also use the alias name when renaming?  that would make it perfect in my eyes, given my pain points.
I assume you are talking about series aliases here?  If MR matches a job title using a series alias, it renames the episode using the parent series name rather than the alias

Kierse

wally007
Release Testers
Release Testers
Posts: 179
Joined: August 28th, 2009, 5:24 pm

Re: Media Rover

Post by wally007 »

Hey kierse,

are there any new features in new release or its mostly under the hood work ?

pilGrim
Full Member
Full Member
Posts: 116
Joined: January 9th, 2009, 7:28 pm
Location: Hong Kong, SAR China

Re: Media Rover

Post by pilGrim »

kierse wrote: Hey pilGrim,

I assume you are talking about series aliases here?  If MR matches a job title using a series alias, it renames the episode using the parent series name rather than the alias

Kierse
Hi Kierse, yes I did not explain that well did I.  Based on your comment it sounds like it does what I want which is to name after parent name used on my hard drive.  so Mediarover will match based on child alias, send to queue for download and sort/rename script will ensure file is moved to correct drive location and will name after parent name used on my hard drive.

Dang... I waited way to long to figure this out as this is been my only issue with my system and it was an easy fix, just use your sort script!!

Many thanks!!

pilgrim

User avatar
kierse
Sr. Member
Sr. Member
Posts: 254
Joined: March 5th, 2009, 11:59 pm
Location: Canada
Contact:

Re: Media Rover

Post by kierse »

Hey wally007,
wally007 wrote: are there any new features in new release or its mostly under the hood work ?
The meat of this release was the ability to populate the database with quality information for your existing episodes.  The rest of the changes were cosmetic.  My next task is to tackle the ability to delay scheduling jobs.

Kierse

bischoff
Newbie
Newbie
Posts: 2
Joined: June 16th, 2010, 11:32 am

Re: Media Rover

Post by bischoff »

Hi all,

first of all; i am extremely thankful that i have discovered this wonderful addon. It is absolutely fantastic.

However, I have one small issue at hand. The episode sorting fails when I download a daily show with a different filename structure than the normal (sXeX). I get the following error:

Code: Select all

Traceback (most recent call last):
  File "XXXXXXXX", line 114, in sort
    _process_download(config, options, args)
  File "XXXXXXXX", line 287, in _process_download
    episode = Episode.new_from_string(job)
  File "XXXXXXXX", line 81, in new_from_string
    year = p['year'], month = p['month'], day = p['day'], title = p['title'])
  File "XXXXXXXX", line 271, in __init__
    raise MissingParameterError("missing episode series name")
MissingParameterError: missing episode series name
Any advice on how to fix this issue?

User avatar
kierse
Sr. Member
Sr. Member
Posts: 254
Joined: March 5th, 2009, 11:59 pm
Location: Canada
Contact:

Re: Media Rover

Post by kierse »

Hi bischoff,
bischoff wrote: The episode sorting fails when I download a daily show with a different filename structure than the normal (sXeX).
From the error message, it looks like MR wasn't able to identify the series name when it was parsing the nzb report title.  Did you manually schedule this nzb for download or did the MR scheduling script schedule it?  There's no reason why MR shouldn't be able to download daily episodes named with a season and episode number (sXXeXX) so I'm unsure why it's failing.  Without more logging data I don't think I can help.  Can you send me your sorting log?

Kierse

p.s. there has been some major changes since the latest release (0.4.1), specifically in the code responsible for identifying and parsing report titles.  It's quite possible this problem has been fixed.  You might want to consider upgrading to the latest development code.  Don't worry, it's quite stable :)

bischoff
Newbie
Newbie
Posts: 2
Joined: June 16th, 2010, 11:32 am

Re: Media Rover

Post by bischoff »

kierse wrote: Hi bischoff,
bischoff wrote: The episode sorting fails when I download a daily show with a different filename structure than the normal (sXeX).
From the error message, it looks like MR wasn't able to identify the series name when it was parsing the nzb report title.  Did you manually schedule this nzb for download or did the MR scheduling script schedule it?  There's no reason why MR shouldn't be able to download daily episodes named with a season and episode number (sXXeXX) so I'm unsure why it's failing.  Without more logging data I don't think I can help.  Can you send me your sorting log?

Kierse

p.s. there has been some major changes since the latest release (0.4.1), specifically in the code responsible for identifying and parsing report titles.  It's quite possible this problem has been fixed.  You might want to consider upgrading to the latest development code.  Don't worry, it's quite stable :)
Sorry for not being 100% clear on my post, but I meant that there was no SxxExx structure in the filename. It is listed with the date and year instead of SxxExx :-) I'm sending you the sorting log now, and will try the latest development code when I get home later. Thanks!

avatarr
Newbie
Newbie
Posts: 29
Joined: April 17th, 2010, 9:46 pm

Script Errors

Post by avatarr »

I just noticed today (not sure how long this has been going on) that the post-processing script from within SAB is giving an error:

Code: Select all

           Traceback (most recent call last):
  File "/sabnzbd/scripts/episodesort.py", line 29, in <module>
    from mediarover.scripts.sabnzbd import episode
ImportError: No module named mediarover.scripts.sabnzbd
My logs show this happening as far back as from when I installed mediarover. It doesn't seem to be affecting the sorting (as best as I can tell). Being an anal person, however, seeing the error bothers me. Am I doing something wrong? I can't really make heads / tails of the error.

Thanks in advance. Also, apologies for my n00bness. :)

User avatar
kierse
Sr. Member
Sr. Member
Posts: 254
Joined: March 5th, 2009, 11:59 pm
Location: Canada
Contact:

Re: Media Rover

Post by kierse »

Hey bischoff,
bischoff wrote: Sorry for not being 100% clear on my post, but I meant that there was no SxxExx structure in the filename. It is listed with the date and year instead of SxxExx :-) I'm sending you the sorting log now, and will try the latest development code when I get home later. Thanks!
Thanks for sending the logging output, I'll have a look and see if I can figure out whats going on.  In the mean time, I would suggest downloading/installing the latest code base in the dev branch.  It's been pretty stable for some time and I'll be releasing 0.5.0 in the next few days / week.

I'll let you know what I find

Kierse

Post Reply