Skip to content
thezoggy edited this page Jun 7, 2015 · 10 revisions

Here is some random sb notes I have in various .txt files on my disk, putting them here so others can run with it if they want. some of these thoughts are from 4+ years ago that just never went anywhere.

utility page / health check page

  • compare tvdb id in scene exception and whats on tvdb.. locate mismatches -- PhoneShop example
  • option to disable scene_exceptions
  • disable logging? maybe a 'nas' mode -- disable logging / optimized displayShow / default to 'list' view for coming ep / etc
  • create autoprocesstv.cfg automatically?

history -

  • break up items by month, offer way to limit to X items.. by default limit to 50? 100?
  • group snatched/downloaded? make each thing a dual line.. top line is downloaded, bottom is snatched?
  • show file size / original name.. Snatched from _provider

maybe bold if its matched in the exception?

  tvdb: 193501    |   XIII (2011)
  rage: 27727     |   XIII: The Series 
  exception(s):
    "XIII", 
    "XIII 2011", 
    "XIII (2011)",
    "XIII The Series 2011", 
    "XIII The Series (2011)"

update libs:

dateutil                http://labix.org/python-dateutil
    current:    1.5 (and latest for python 2.x and the last, they moved to python 3.x only now)

gntp/growl              https://github.com/kfdm/gntp
    current:    0.1 (from 2009)
    latest:     1.0.2 (released Nov 2013)

httplib2                http://code.google.com/p/httplib2/
                        http://code.google.com/p/httplib2/source/browse/CHANGELOG
                        moved to: https://github.com/jcgregorio/httplib2
    current:    0.6.x (released Dec 2009) 
    latest:     0.8.x (released Mar 2013)

oauth2                  https://github.com/simplegeo/python-oauth2
    current:    from ~2009
    latest:     1.5 b211 (released 2011-12-13) -- pretty much dead project

pythontwitter           http://code.google.com/p/python-twitter/ | https://github.com/bear/python-twitter/
                        https://github.com/bear/python-twitter/blob/master/CHANGES
    current:    0.8-devel (from 2010-10-16 i think)
    latest:     1.0.2 - https://github.com/bear/python-twitter/tree/dae4282e95179bbac07e19f58e0f6f312e00df22 (latest python 2.5 compatible which still used OAuth2)
                SEE THIS FOR INFO: https://github.com/bear/python-twitter/issues/123
    latest:     1.1.0 (released Nov 2013) -- requires python 2.6+ due to using Requests

simplejson              https://github.com/simplejson/simplejson
                        https://github.com/simplejson/simplejson/blob/master/CHANGES.txt
    current:    2.0.9 (released 2009-02-18)
    latest:     3.3.1 (released Oct 2013)

socks (SocksiPy)        http://socksipy.sourceforge.net/
    current:    1.0
    latest:     1.0 (2006-10-25 ) -- source is documented/has more code than our version

tvdb_api                https://github.com/dbr/tvdb_api
    why do we have tvrage_api / tvnamer / tvdb_api all in the same folder?
    tvdb_api latest:     (commited on 2011-10-22)

Metadata notes:

pyTivo - http://pytivo.sourceforge.net/wiki/index.php/Metadata

MediaBrowser 1.x - specials go in 'Specials'
MediaBrowser 2.x - specials go in 'Season 0'
    - supports xbmc (legacy) images, no .nfo though
MediaBrowser 3.x - specials go in 'Specials' / 'Season 0' / 'Season 00'
    - supports xbmc12+ images, no .nfo though
    - https://github.com/MediaBrowser/MediaBrowser/wiki/Library-Structure

XBMC - http://wiki.xbmc.org/?title=Thumbnails
     - http://wiki.xbmc.org/index.php?title=NFO_files/TV_shows
     - http://wiki.xbmc.org/index.php?title=Add-on:VideoExtras
XBMC 12+ - http://wiki.xbmc.org/index.php?title=XBMC_v12_%28Frodo%29_FAQ#Local_images

--

modernizer? responsive design? redesign header to work for mobile and desktop.. design for desktop first. header for mobile... just sb icon? high dipi images?

yslow - work on reducing design for sub 1000 objects on the dom sprites - work to have a sprite for all sub 32px related images... reduce inline js when possible...

drop ie6/7.. move towards bs3

redesign displayShow first.

  • use css transforms?
  • show row info when selected.. full path ?
  • use css for widths to reduce calculations when possible

use bs3 table of content feature to jump to season sections? allow setting quality temp for wanted episodes specifically? mark as wanted.. mark as wanted w/quality..

failed ep handling... check to see if a newer version was posted within the last 1hr.. if so.. update previous nzb with it.

manual ep.. need to pass the argument to allow override duplicates.. since a lot of people use this to force refetch an updated nzb (above) which happens to have the same name...

fetching nzb/torrent calculate md5 for .nzb/.torrent .. use this to store unique value for release. note that the md5 hash is not to be used to compare globally.. but within the release set. thus if you get more than 1 ep of the same s#e#.quality.(rlsgroup) you can tell if its really a duplicate on our end.. to know to bypass trying..

our current way we do notifications seems to be very inefficient.. check on other methods.. push instead of pull? if i have two browser tabs open with the page, only one gets the notice.. need to make sure all get it. so we dont have a rogue tab/app getting them instead..

redo the coming ep page.. the list view is good at a glance.. configure missing rollover? the banner/poster view is showing its age. also could offer a calendar view?

need to make an airline brochure setup guide? branching guide.. once you have sb installed and can get to the ui...

	usenet 			-			 torrents
	/ | \							/ \
sabnzbd - nzbget - other		utorrent - other
  / \

sabToSickberad - other

backup feature? make archive/folder? 'sb-backup-yyyy-mm-dd' which contains /.db, /.ini, autoprocesstv/.cfg, cache/ auto configure sab (only works if stuff isnt previously set?)? auto generate proper autoprocesstv.cfg using .ini (detect if existing file is there, abort if so). set sab scripts folder (if not set). set category 'tv' with folder 'tv' with script 'sabToSickbeard' (if tv category not there) - discard samples? cleanup list?

upgrade tvdb lib.. support dvd ordering per show (ex firefly)... doesnt change search or anything.. just changes which dataset we use. thus change in edit show.. treat like 'language'.. regen metadata. could extend this to do absolute as well (anime)...

footer.. we do several sql queries to generate that data.. see if it can be optimized. also maybe lazyload it? update during notifications update?

we generate so much noise for logs... look at reducing this so that our size limits can retain actual useful data.. logging in generally is a huge mess and we really need a pass through to cleanup how its done and whats meaningful. can reduce two lines to one.. can reduce the lengthy ones as well to something a little more concise. if user has no search providers.. exit out. why waste the time and energy to go through the whole routine over and over...
log viewer -- auto protect user, borrow from cp on the 'hidden' vars to obfuscate/hide

need to state we only support sab 0.7.x, nzbget 10.x. force people to update or be left behind. since were only supporting newer browsers.. lets try and extend this towards other things that overall means for a better experience/features. not saying we should only support bleeding edge.. but why should the mass suffer because of a few.

offer nas switch on startup to try and make things a little more lightweight where we can.. ease up on timers / not be so aggressive with logging?

adaptive updating with tvdb? since now we know when we last updated.. maybe try and be smarter on how often / which ones take the longest / etc. sort by last update date (oldest on top), sort by episode count (lowest), sort by (airdate year), newer generally means more frequent updates..

handle when tvdbid changes.. make tvrage lookup a bit more strict.. and fallback to name if tvrage id query returns 0 matches (should help handle when nn sites have wrong tvrage id matched). -- would be nice to have a way to query a nn site to see what would match for show x to test against.. without having to add show and do mock query and checking logs.

our test set has very vague data.. which works for specific scenarios. example, where the show name really doesnt matter.. having a generic one works as thats not where the test is really focusing on.. maybe quality for example. but we should have specific test data with real data entries.. like problematic shows (tvrage lookups / naming / quality / etc). nashville / hawaii five-0 / cops? etc.

add some intelligence to our s#e#.. we know how many seasons a show should have.. also note that some shows now use a YYYY method. Pawn Stars for example.

downloader - add to navigation? (one option for them all)

dashboard - show stacked progress bar for each status / show total bar under it for all ep / break down downloads using highwinds graph to show activity?

suppress issues with nn providers until we cant update the rss feed for 2 hours (warning -> error), gives providers a chance to do maint. if user only has one nn provider.. then always use error

sidecard file: .showsettings store require/ignore words (tags), local exceptions?

nzbvortex integration

--

add exclude from notifications per show (allow people to manage what they care/dont care about - or just disable temp when backlogging)

select count(*) from history where date >= (select strftime('%Y%m%d%H%M%S', 'now', 'start of year'))
select count(*) from history where date >= (select strftime('%Y%m%d%H%M%S', 'now', 'start of month'))
select count(*) from history where date >= (select strftime('%Y%m%d%H%M%S', 'now', '-30 days'))

snatched:

select count(*) from history where action % 100 = 2 AND date >= (select strftime('%Y%m%d%H%M%S', 'now', 'start of year'))

downloaded:

select count(*) from history where action % 100 = 4 AND date >= (select strftime('%Y%m%d%H%M%S', 'now', 'start of year'))

plot history:

http://www.highcharts.com/stock/demo/basic-line

  • proper all time vs this year
  • most popular day/month for download/snatches
  • most common release group
  • 'hits' by provider

--

sql to show how many downloads per provider in user's history:

sqlite> select provider, count(provider) from history where action % 100 == 2 group by provider order by -count(provider);

--

tvrage throttles? User 'api_user' has exceeded the 'max_user_connections' resource (current value: 400)

--

http://www.notebookcheck.net/Review-HTC-Windows-Phone-8X-Smartphone.84286.0.html

nice looking progress bar with text

https://sprint.ly/

nice bg texture, nice ui in the ss

https://developers.google.com/octane/benchmark#gameboyemulator

nice submenu / footer

http://windows.microsoft.com/en-us/windows/products

decent submenu, changes on pages, nice font

http://www.jodymickey.com/post/49800930506/a-little-extra-for-twitter-bootstrap-badges

text in badge, makes it look nice.. works well for quality tags....

https://coveralls.io/builds/411493

background color #FCF9EF
text: #354A57

https://wrapbootstrap.com/themes

buttons for the < > on the displayShow page:

.browse_tools .pages {
    float: right;
    height: 20px;
    margin: 10px 10px 0 0;
    overflow: hidden;
    text-align: right;
    width: 200px;
}
.browse_tools .pages .next {
    background: url("//s3.amazonaws.com/wrapbootstrap/live/imgs/pagination.png") no-repeat scroll -20px -20px #FFFFFF;
    display: block;
    float: right;
    height: 20px;
    width: 20px;
}
.browse_tools .pages .prev {
    background: url("//s3.amazonaws.com/wrapbootstrap/live/imgs/pagination.png") no-repeat scroll 0 -20px #FFFFFF;
    display: block;
    float: right;
    height: 20px;
    margin-left: 8px;
    margin-right: 6px;
    width: 20px;
}
.browse_tools .pages .next:hover, .browse_tools .pages .next_on {
    background-position: -20px 0;
}
.browse_tools .pages .prev:hover, .browse_tools .pages .prev_on {
    background-position: 0 0;
}
.browse_tools .pages .next_off, .browse_tools .pages .next_off:hover {
    background-position: -20px -40px !important;
}
.browse_tools .pages .prev_off, .browse_tools .pages .prev_off:hover {
    background-position: 0 -40px !important;
}

--

so much random css/html/notes..

.progress { border-radius: 0; height: 45px; }
.progress-bar {min-width: 75px;}
.progress-bar-unaired { background-color: #888; }
.progress-bar-snatched { background-color: #6E6CFF; }

<br>

<div class="progress">
  <div class="progress-bar progress-bar-snatched">
  <div>###</div>
    Snatched
  </div>
  <div class="progress-bar progress-bar-warning" style="width: 20%">
    <div>###</div>
    Ignored
  </div>
  <div class="progress-bar progress-bar-danger" style="width: 10%;">
    <div>###</div>
    Archived
  </div>
  <div class="progress-bar progress-bar-info" style="width: 0%;">
    <div>###</div>
    Skipped
  </div>
  <div class="progress-bar progress-bar-success" style="width: 35%">
    <span class="sr-only">35% Complete (success)</span>
    <div>###</div>
    Downloaded
  </div>
  <div class="progress-bar progress-bar-unaired">
    <div>###</div>
    Unaired
  </div>

</div>
new notifiers:
  SuperToasty -- https://github.com/midgetspy/Sick-Beard/pull/507
    -- need to close the old one: https://github.com/midgetspy/Sick-Beard/pull/205
  notnot -- https://github.com/midgetspy/Sick-Beard/pull/573
  Dlesk -- https://github.com/midgetspy/Sick-Beard/pull/680
  LiveNotifier -- https://github.com/midgetspy/Sick-Beard/pull/400
  extra_scripts -- https://github.com/midgetspy/Sick-Beard/pull/604

update notifiers:
  Trakt basic auth -- https://github.com/midgetspy/Sick-Beard/pull/506
  Trakt collection deletion -- https://github.com/midgetspy/Sick-Beard/pull/315
  Pushover config sound and device -- https://github.com/midgetspy/Sick-Beard/pull/779
  Twitter mention -- https://github.com/midgetspy/Sick-Beard/pull/781
  Twitter direct message and mention -- https://github.com/midgetspy/Sick-Beard/pull/676
  Plex expand test -- https://github.com/midgetspy/Sick-Beard/pull/612

  Send notice when SB update available -- https://github.com/midgetspy/Sick-Beard/pull/253

https://www.blossom.co/

ff-kievit-sc-web-pro-1
.white-stripe { background: url("/static/img/global/whitesand-bg.png") repeat scroll 0 0 #fcfdfe; border-bottom: 1px solid #dbdcde; }
#content-wrapper { background: url("/static/img/global/sand-bg.png") repeat scroll 0 0 #f9f9f7; width: 100%; }
#footer #footer-content .footer-column h5.footer-column-title { color: #505050; font-size: 16px; font-weight: 400; margin-bottom: 10px; }

soft light tan

background-color: #EFEAE1
color: #66595C
font: 16px/1.7 "Helvetica Neue",Helvetica,arial,freesans,clean,sans-serif

long filename test (126 chars):

CNN.Special.Report.The.500.Million.Dollar.Question.Who.Pulled.off.the.Greatest.Art.Heist.in.Bostons.History.720p.HDTV.x264-W4F

MB3 Notifier:

https://github.com/MediaBrowser/MediaBrowser/wiki/Locating-the-Server

https://github.com/thezoggy/Sick-Beard/commit/5399bb6e27e2a2c4f31abcbedc999741df376fff