SageTV Community  

Go Back   SageTV Community > SageTV Development and Customizations > SageTV Customizations

Notices

SageTV Customizations This forums is for discussing and sharing user-created modifications for the SageTV application created by using the SageTV Studio or through the use of external plugins. Use this forum to discuss customizations for SageTV version 6 and earlier, or for the SageTV3 UI.

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 02-12-2008, 11:37 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Plugin: SJQ v1.1.0RC1 Available - Testers Needed

Sage Job Queue is a daemon that allows you to process your media files based on a set of rules you define. For example, you can choose to run your commercial flagging software against very specific recordings while ignoring others. All rules are based on not only the name of the files, but the contents of the file as stored in the SageTV database.

After many Sunday morning coding sessions, I've now got the first release candidate for SJQ v1.1.0 ready for testing.

I've done a lot of testing myself, but I can't possibly cover it all so I'm hoping that any users of SJQ out there that are interested in having a configuration servlet will help me squash any remaining bugs in the servlet code.

The only change in v1.1.0RC1 compared to the latest stable version (1.0.1) is the addition of the web plugin compatible servlet. Features of the servlet include:
  • Configure all plugin options without needing to stop/restart SageTV
  • Create and edit your ruleset file via dynamic web form - no longed need to know ruleset syntax for creating rules!
  • View plugin log files via web
  • View complete history of all jobs completed by SJQ

Before upgrading to RC1 please backup your existing SJQ data. You should backup the following two files:
  • rules.sjq: Your current SJQ ruleset file
  • sjq.sqlite: The SJQ data store; stores the entire job history as completed by SJQ - you don't want to lose this to corruption

I've tested the db upgrade code along with writing of the ruleset file by the servlet and I haven't had any issues, but it doesn't mean they don't exist so please, please backup these data files before upgrading to any RC build - you've been warned.

With that out of the way, some notes about this RC build:
  • The rule editor is a bit ugly, I'm still working on some CSS changes for things like the 'Remove' buttons, etc. But I don't know how to fix things like the differing sizes of drop downs, which really makes things ugly so I'm open to suggestions from any web design gurus out there
  • Please see the online docs for the meaning of the various items in a rule

The RC build is only available from here - I didn't want to upload RC builds to the forums.

The online docs, including installation instructions for the servlet, are available here.

Please report any bugs in my bugzilla database or post a message to this thread.

Please post any feedback at all to this thread, including feature requests, etc.

Last edited by Slugger; 02-12-2008 at 02:28 PM. Reason: Add plugin description to top of post
Reply With Quote
  #2  
Old 02-12-2008, 02:05 PM
LJSSageUser LJSSageUser is offline
Sage Advanced User
 
Join Date: Aug 2005
Posts: 80
Quote:
Originally Posted by Slugger View Post
After many Sunday morning coding sessions, I've now got the first release candidate for SJQ v1.1.0 ready for testing.
Clearly intended only for the elite. This is a great piece of work, but I had to go all the way to the wiki to find out what it does.

Thanks for the work.
Reply With Quote
  #3  
Old 02-12-2008, 02:25 PM
JonTom JonTom is offline
Sage Aficionado
 
Join Date: Apr 2005
Location: Whistler BC
Posts: 413
Yeah, you might want to mention what this plugin actually does in your OP. Near the top...
__________________
Alpine Website Design
Reply With Quote
  #4  
Old 02-12-2008, 02:29 PM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Quote:
Originally Posted by JonTom View Post
Yeah, you might want to mention what this plugin actually does in your OP. Near the top...
Description added to OP... thanks.
Reply With Quote
  #5  
Old 02-13-2008, 12:46 AM
TechBill's Avatar
TechBill TechBill is offline
Sage Fanatic
 
Join Date: Aug 2007
Posts: 827
I have a question on this

Add slugger.sagetv.sjq.SageJobQueue as a loadable plugin in the appropriate .properties file by adding the class to the load_at_startup_runnable_classes list.


I do have this in my properties file

load_at_startup_runnable_classes=net.sf.sageplugins.webserver.StartServer

do I add "slugger.sagetv.sjq.SageJobQueue" to the same line with space or seperating with common or just create a new line underneath like this

load_at_startup_runnable_classes=net.sf.sageplugins.webserver.StartServer
load_at_startup_runnable_classes=slugger.sagetv.sjq.SageJobQueue

Or something like this?
load_at_startup_runnable_classes=net.sf.sageplugins.webserver.StartServer, slugger.sagetv.sjq.SageJobQueue

I tried both way and I am not able to get SJQ loaded, each time I go to the webserver it stated SJQ is not started or installed etc.



Thanks
Bill
__________________
HTPC System
GIGABYTE GA-MA69GM-S2H AM2 AMD 690G HDMI // AMD Athlon 64 X2 6000+ Windsor 3.0GHz // G.SKILL 6GB (2 x 2GB) 240-Pin DDR2 SDRAM DDR // Hauppauge Colossus HD-PVR // Hauppauge Colossus HD-PVR // Seagate ST3750640AS 750GB SATA-300 16MB // DVD R/W - SAMSUNG Black
Media Extenders
HD300
HTPC Software
Windows 7 Professional 64bits // SageTV 7.1.x // Java 1.7.x

Last edited by TechBill; 02-13-2008 at 01:00 AM.
Reply With Quote
  #6  
Old 02-13-2008, 01:21 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Quote:
Originally Posted by TechBill View Post
I have a question on this

Add slugger.sagetv.sjq.SageJobQueue as a loadable plugin in the appropriate .properties file by adding the class to the load_at_startup_runnable_classes list.


I do have this in my properties file

load_at_startup_runnable_classes=net.sf.sageplugins.webserver.StartServer

do I add "slugger.sagetv.sjq.SageJobQueue" to the same line with space or seperating with common or just create a new line underneath like this

load_at_startup_runnable_classes=net.sf.sageplugins.webserver.StartServer
load_at_startup_runnable_classes=slugger.sagetv.sjq.SageJobQueue

Or something like this?
load_at_startup_runnable_classes=net.sf.sageplugins.webserver.StartServer, slugger.sagetv.sjq.SageJobQueue

I tried both way and I am not able to get SJQ loaded, each time I go to the webserver it stated SJQ is not started or installed etc.



Thanks
Bill
Put it on the same line separated by a semicolon. Be sure there are no extra spaces at the end of the line or between the semicolon, etc. as this will cause problems with SageTV loading the classes.
Reply With Quote
  #7  
Old 02-20-2008, 07:50 PM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
v1.1.0RC2 now available. Again, the RC builds are only available from my server and will disappear once v1.1.0 is released. All stable versions are available from the SageTV forums download area.

Fixed in this build:

Code:
* Bug 44: Handle case where there is no ruleset file available at plugin startup
Reply With Quote
  #8  
Old 02-24-2008, 08:53 PM
bluenote bluenote is offline
Sage Aficionado
 
Join Date: Nov 2004
Location: Vancouver, canada
Posts: 336
This is a great addon. I've been wanting something like this for ages. The only downside is having to carry webserver to run it (which, while great, I don't have a current use for atm.)

One thing that I'd love to be able to do (and maybe I already can?) is wait until files are X days old. This is going to be used for transcoding, and there's a lot of shows that I watch right away, and so don't make sense to be converted. Is there a way to do that?

Cory
Reply With Quote
  #9  
Old 02-24-2008, 09:40 PM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Quote:
Originally Posted by cnovak View Post
This is a great addon. I've been wanting something like this for ages. The only downside is having to carry webserver to run it (which, while great, I don't have a current use for atm.)

One thing that I'd love to be able to do (and maybe I already can?) is wait until files are X days old. This is going to be used for transcoding, and there's a lot of shows that I watch right away, and so don't make sense to be converted. Is there a way to do that?

Cory

You do not need the web server to run the plugin. Without the servlet, you simply have to write the ruleset file yourself. See the online docs for details on how to do that.

I've added a test to check the age of a recording to my todo list; look for it in the next build.
Reply With Quote
  #10  
Old 02-25-2008, 09:25 PM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Quote:
Originally Posted by Slugger View Post
You do not need the web server to run the plugin. Without the servlet, you simply have to write the ruleset file yourself. See the online docs for details on how to do that.

I've added a test to check the age of a recording to my todo list; look for it in the next build.
v1.1.0RC3 is now available.

Changes in this build:

Code:
* Bug 45: Add new test 'Age' that allows testing against the age of media files
The numbers you specify for the age of a media file must look like this:

nx where n is a positive integer (digits only) and x is one of the following letters:

S: seconds
M: minutes
H: hours
D: days
O: mOnths
Y: years

So to create a test that ensures the media object is more than 3 days old use the following:

> Age: 3D

To ensure the media object is at least 5 months old:

!< Age: 5O

* Not less than 5 months is equivalent to greater than or equal to 5 months

If using the servlet to setup your rules just be sure to follow the format for the numbers. Failure to follow the format will cause an exception, which in turn means the test will always return false and therefore your rule will always return false.
Reply With Quote
  #11  
Old 02-25-2008, 09:59 PM
bluenote bluenote is offline
Sage Aficionado
 
Join Date: Nov 2004
Location: Vancouver, canada
Posts: 336
Thanks slugger, I'll be trying this out tomorrow!
Reply With Quote
  #12  
Old 04-11-2008, 07:22 PM
bcjenkins bcjenkins is offline
SageTVaholic
 
Join Date: Jan 2006
Posts: 3,760
Is there anything in SJQ which prevents java 1.5 from being ok? Not an issue if it hasn't been tested, but don't want to bother if it won't work.

When I run 1.6 I have to restart SageTV frequently.

B
__________________
Running SageTV on unRAID via Docker
Tuning handled by HDHR3-6CC-3X2 using OpenDCT
Reply With Quote
  #13  
Old 04-12-2008, 09:35 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Quote:
Originally Posted by bcjenkins View Post
Is there anything in SJQ which prevents java 1.5 from being ok? Not an issue if it hasn't been tested, but don't want to bother if it won't work.

When I run 1.6 I have to restart SageTV frequently.

B
Unfortunately, I use parts of the java.io.File API that are only available in
JRE6 so SJQ will only build and run under JRE6.
Reply With Quote
  #14  
Old 04-19-2008, 08:30 AM
perfessor101 perfessor101 is offline
Sage Advanced User
 
Join Date: Nov 2003
Location: Vancouver, British Columbia, Canada
Posts: 242
Is there a way to have SJQ not launch a process if there will be a recording starting

Hello,
I was curious is there a way to have SJQ not launch a process if there will be a recording starting?

Ideally I would like to have SJQ not launch processes if recordings will be starting within a configurable amount of time ... I wasn't sure if I saw this option in the list (It may be lack of sleep).

Eventually it might be cool if SJQ had the ability to keep track of the time to complete a task (ETA / minutes per gigabyte on average?) so that it would launch jobs based on when it estimates there will be enough time to complete the task before a recording starts. (I think I'm dreaming already)

Thanks for your time,
Bobby
__________________
SageTV Server: Windows 7 64Bit, Phenom II X6 1090T, Asus M4A89GTD-PRO/USB3 (AM3), ATI Radeon HD 4290, 2 x KHX1600C9D3/4GX, 4 x HD-PVR2 Gaming, , 4 x 320GB recording drives, 2 x USB-UIRT, SageTV Server Beta
SageTV Client & 2 x HD-300 Extender.
40.8TB unRaid 6.6.5 media server
Reply With Quote
  #15  
Old 04-20-2008, 05:15 PM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Quote:
Originally Posted by perfessor101 View Post
Hello,
I was curious is there a way to have SJQ not launch a process if there will be a recording starting?

Ideally I would like to have SJQ not launch processes if recordings will be starting within a configurable amount of time ... I wasn't sure if I saw this option in the list (It may be lack of sleep).
This currently isn't in SJQ, but doesn't seem like a bad idea.

Quote:
Originally Posted by perfessor101 View Post
Eventually it might be cool if SJQ had the ability to keep track of the time to complete a task (ETA / minutes per gigabyte on average?) so that it would launch jobs based on when it estimates there will be enough time to complete the task before a recording starts. (I think I'm dreaming already)

Thanks for your time,
Bobby
This one seems like it would require a little more work and I don't really see this one surfacing to the top of my todo list in the immediate future. With that said, feel free to add it to the feature request list on the project page. I just moved my plugins (SJQ and SRE) into SourceForge so please go ahead and add a feature request so at least I'll be reminded of it. I'd actually appreciate adding both items into the feature tracker in SourceForge since these things tend to get lost otherwise as the threads get larger.
Reply With Quote
  #16  
Old 04-21-2008, 08:12 AM
perfessor101 perfessor101 is offline
Sage Advanced User
 
Join Date: Nov 2003
Location: Vancouver, British Columbia, Canada
Posts: 242
The first one would definately help

The first one would definitely help ...

I checked my logs and found that most times showanalyzer or videoredo quick stream fix take less than 7 minutes for 1 hour of video

the second one I knew was sorta dreaming ... and if I had that Quad core right now ...


Bobby
__________________
SageTV Server: Windows 7 64Bit, Phenom II X6 1090T, Asus M4A89GTD-PRO/USB3 (AM3), ATI Radeon HD 4290, 2 x KHX1600C9D3/4GX, 4 x HD-PVR2 Gaming, , 4 x 320GB recording drives, 2 x USB-UIRT, SageTV Server Beta
SageTV Client & 2 x HD-300 Extender.
40.8TB unRaid 6.6.5 media server
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Any interest in a plugin to support/control the Sony XL1B firewire DVD changer? TerryMathews SageTV Customizations 74 07-21-2011 02:24 PM
MediaPlayer Plugin/STV Import: Winamp Media Player Plugin deria SageTV Customizations 447 12-11-2010 07:38 PM
STV Import: Weather Monitor deria SageTV Customizations 35 08-23-2006 08:15 PM
zaptoit plugin with SageTV 2.2.8 gregoir SageTV Canada 5 05-25-2006 11:23 PM
XMLTV Plugin not working with V4 mobby SageTV EPG Service 11 12-02-2005 12:45 PM


All times are GMT -6. The time now is 05:42 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Copyright 2003-2005 SageTV, LLC. All rights reserved.