SageTV Community  

Go Back   SageTV Community > SageTV Development and Customizations > SageTV Customizations
Forum Rules FAQs Community Downloads Today's Posts Search

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.

Closed Thread
 
Thread Tools Search this Thread Display Modes
  #661  
Old 04-30-2009, 09:58 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Quote:
Originally Posted by Skirge01 View Post
I did read that part in the instructions multiple times, but I must be blind because I just don't see where the SJQ instructions or the JettySSL instructions explain how to set up multiple ports in JettyStarter.properties, based on the application which is using Jetty.

From the JettySSL instructions:


I have that single entry for jetty.ssl.port and it's set to 8443. Is this the right file to be editing for multiple applications? If so, I don't see where it explains how to add a second SSL port for a different application.
This is the right file to edit. As Peter_h suggested, you have nielm's web server configured and listening on port 8443 so you must change the port that Jetty is listening on. Based on what you've told us, going to port 8443 is hitting nielm's server, which is why the SJQ login is failing to load.

Stop Sage, change the port for Jetty from 8443 to something else, restart Sage, load SJQ.

Quote:
The only other thing I can think of is that the jetty.ssl.port setting is separate from the SSL port each application is using and there's another file for SJQ that I need to edit in order to let SJQ know to use this other port. If that's the case, the SJQ Guide reads:



This also doesn't say where to set a separate port for SJQ, yet the instructions read that at this point I should be able to bring up the SJQ login screen. Near the end of the SJQ instructions there is mention of sjqc.properties and setting a port, but I stopped at the above point in the instructions when the login screen didn't come up like it says it should have.
Apps don't (typically) use separate ports - SJQ certainly doesn't. The issue is that when visiting port 8443 you're hitting nielm's web server and not Jetty. Once you move Jetty to a new port then you should be fine. Ignore the sjqc.properties file, etc. until you can load the login page. The props file is for configuring the task client and has nothing to do with getting the server properly configured.

Quote:
Sorry for needing the hand-holding. As you can tell, I actually have read through all the instructions available and am following them in sequence. I'm clearly overlooking or misunderstanding something in the instructions.
Should just be a matter of moving the port that Jetty is running on.
__________________
Twitter: @ddb_db
Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive
Capture: 2 x Colossus
STB Controller: 1 x USB-UIRT
Software:Java 1.7.0_71; SageTV 7.1.9
Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter
Plugins: Too many to list now...
  #662  
Old 04-30-2009, 10:20 AM
Skirge01's Avatar
Skirge01 Skirge01 is offline
SageTVaholic
 
Join Date: Jun 2007
Location: New Jersey
Posts: 2,599
I think I just had that "ah-ha" moment! It sounds like nielm's webserver does not use Jetty for SSL, but something else. Is that correct? Therefore, I need to set jetty.ssl.port=8441 (or whatever else isn't being used) and keep nielm's webserver on 8443. Then, I want to use SJQ and the Mobile Web Interface, which--I believe--both use Jetty and thus would both be using 8441. That's what I ALSO thought wasn't allowed. However, it's that SJQ and the Mobile Web Interface CAN use SSL on 8441 via Jetty, but only nielm's webserver can't?

Wow! That was a mouthful!
  #663  
Old 04-30-2009, 10:23 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Yeah, you've got it figured out now...
__________________
Twitter: @ddb_db
Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive
Capture: 2 x Colossus
STB Controller: 1 x USB-UIRT
Software:Java 1.7.0_71; SageTV 7.1.9
Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter
Plugins: Too many to list now...
  #664  
Old 04-30-2009, 11:24 AM
Skirge01's Avatar
Skirge01 Skirge01 is offline
SageTVaholic
 
Join Date: Jun 2007
Location: New Jersey
Posts: 2,599
Thanks guys! Very much appreciated. It doesn't matter how much you work with computers or how much you think you know because there's always more to learn! I think they call that job security.
  #665  
Old 04-30-2009, 09:49 PM
Skirge01's Avatar
Skirge01 Skirge01 is offline
SageTVaholic
 
Join Date: Jun 2007
Location: New Jersey
Posts: 2,599
I've now got access to the SSL version of SJQ and the Mobile Web Interface. Again... thanks!

I'm having a problem with the connection to the client, though. I installed the sjqc-ntsvc-2.1.4.468 to my WHS box and continued through the user guide. I got to the point of checking the communication between the task client and the SJQ server and they apparently are not.

The service installed just fine. I changed the user for the service to the SageTV account I use for everything else. I also added this line because that's where I put the sjqc.properties file:

wrapper.app.parameter.2=C:\sjqc\sjqc_winntsvc\conf

I made sure that the properties file contains the hostname of my WHS box, the port I mentioned earlier, and the is_ssl is set to true.

I checked the log file and it says:

Code:
STATUS | wrapper  | 2009/04/30 23:25:53 | Launching a JVM...
INFO   | jvm 1    | 2009/04/30 23:25:53 | WrapperManager: Initializing...
INFO   | jvm 1    | 2009/04/30 23:25:53 | SJQ Task Client v2.1.4.468
INFO   | jvm 1    | 2009/04/30 23:25:53 | Using 'C:\sjqc\sjqc_winntsvc\conf' as location for configuration file...
INFO   | jvm 1    | 2009/04/30 23:25:53 | sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
INFO   | jvm 1    | 2009/04/30 23:30:53 | sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
INFO   | jvm 1    | 2009/04/30 23:35:53 | sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Clearly, that seems to point to a bad certificate, but I don't understand where to look or even what exactly is wrong. I searched for "certificate" and "certification" but came up empty-handed.
  #666  
Old 04-30-2009, 10:11 PM
jreichen's Avatar
jreichen jreichen is offline
Sage Icon
 
Join Date: Jul 2004
Posts: 1,192
You got it!

Jetty is just an embedded Java server listening on ports. Applications (MWI, SJQ, SRE, etc) are installed in Jetty and it will direct traffic to them.

Jetty wasn't around - or at least not as mature of a product, I'm not sure - when nielm wrote his web server. He embedded Tiny Java Web Server in his app. But only his app would run in the server, no other apps could be run in there.

When I wrote the Mobile Web Interface I wanted to separate the server from the application so any number of apps could run on it and it would hopefully be easier to set up. There are some other reasons I switched to Jetty but I won't bore you with them. Slugger, stuckless, shadeblue, etc. have done a great job of adopting it. Porting Nielm's server is a big task that I haven't had time for so unfortunately it still runs on its own port.
__________________
Server: Intel Core i5 760 Quad, Gigabyte GA-H57M-USB3, 4GB RAM, Gigabyte GeForce 210, 120GB SSD (OS), 1TB SATA, HD HomeRun.
Extender: STP-HD300, Harmony 550 Remote,
Netgear MCA1001 Ethernet over Coax.
SageTV: SageTV Server 7.1.8 on Ubuntu Linux 11.04, SageTV Placeshifter for Mac 6.6.2, SageTV Client 7.0.15 for Windows, Linux Placeshifter 7.1.8 on Server and Client
, Java 1.6.
Plugins: Jetty, Nielm's Web Server, Mobile Web Interface.

  #667  
Old 05-01-2009, 08:28 AM
Skirge01's Avatar
Skirge01 Skirge01 is offline
SageTVaholic
 
Join Date: Jun 2007
Location: New Jersey
Posts: 2,599
I did some further searching on the exception message I posted and some sites seem to indicate that it's an issue with the location of the certificate or possibly a password issue. My problem at this point is that I'm not sure if something else I screwed up is causing this or if this actually is the problem that needs to be addressed. Plus, I can't seem to comphrehend the solutions I'm finding.
  #668  
Old 05-01-2009, 08:45 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
The error is suggesting that the SSL certificate you've installed for Jetty is not trusted (i.e. self-signed). Is this the case? The Java URL class (used to connect to the server in the task client) will not allow a connection to a non-trusted SSL cert and self-signed certificates are not trusted by Java. An easy way to determine if this is the case is to load the SJQ web site in your browser. Does the browser give you a security warning about the SSL cert? If this is indeed the problem, you'll either have to install a trusted cert from a trusted CA or have the task client connect over the non-SSL port.

Using the non-SSL port for task clients should be ok since no sensitive data in transmitted between task client and server. Just be sure to restrict task client connections in the SJQ configuration (from the web).
__________________
Twitter: @ddb_db
Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive
Capture: 2 x Colossus
STB Controller: 1 x USB-UIRT
Software:Java 1.7.0_71; SageTV 7.1.9
Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter
Plugins: Too many to list now...
  #669  
Old 05-01-2009, 09:35 AM
Skirge01's Avatar
Skirge01 Skirge01 is offline
SageTVaholic
 
Join Date: Jun 2007
Location: New Jersey
Posts: 2,599
I created the certificate using keytool, as outlined in the Jetty instructions. I do, indeed, get security warnings in my browser regarding the certificate. If I do not use SSL between the client and the SJQ server, does that mean that I can't use SSL to connect to the SJQ server over the internet?
  #670  
Old 05-01-2009, 09:37 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Quote:
Originally Posted by Skirge01 View Post
I created the certificate using keytool, as outlined in the Jetty instructions. I do, indeed, get security warnings in my browser regarding the certificate. If I do not use SSL between the client and the SJQ server, does that mean that I can't use SSL to connect to the SJQ server over the internet?
No, you can continue to connect to the SJQ web site over SSL while using non-SSL for the task clients.
__________________
Twitter: @ddb_db
Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive
Capture: 2 x Colossus
STB Controller: 1 x USB-UIRT
Software:Java 1.7.0_71; SageTV 7.1.9
Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter
Plugins: Too many to list now...
  #671  
Old 05-01-2009, 08:34 PM
Skirge01's Avatar
Skirge01 Skirge01 is offline
SageTVaholic
 
Join Date: Jun 2007
Location: New Jersey
Posts: 2,599
Thanks for the hand-holding! Very much appreciated. I'm up and running and doing my first comskipping! Woo-hoo!
  #672  
Old 05-01-2009, 10:09 PM
Skirge01's Avatar
Skirge01 Skirge01 is offline
SageTVaholic
 
Join Date: Jun 2007
Location: New Jersey
Posts: 2,599
Ruleset Question(s)

Okay, my first Ruleset question. What I want to do is set up the server to run 3 COMSKIP threads on my quad core under normal circumstances, except between 7pm and 11pm. Between 7pm and 11pm, I want to run 4 COMSKIP threads, but at LOW CPU usage.

With what I learned, I got to this point:
Code:
# Comskip all scheduled recordings on "commercial" channels between 19:00 and 23:00
if [IsTV == true && IsScheduledRecording == true && ChannelName !% "HBO*|UHD|MAX*|MOMAX|STZ*|ENC*|SHO*|TMC*|HDNE*|PPV\\d+" && (TimeOfDay < "19:00" || TimeOfDay > "23:00") && FileExists != "%d%/%p%.edl"] {
   COMSKIP
}

# LOW Priority Comskip all scheduled recordings on "commercial" channels between 19:00 and 23:00
if [IsTV == true && IsScheduledRecording == true && ChannelName !% "HBO*|UHD|MAX*|MOMAX|STZ*|ENC*|SHO*|TMC*|HDNE*|PPV\\d+" && (TimeOfDay > "19:00" || TimeOfDay < "23:00") && FileExists != "%d%/%p%.edl"] {
   COMSKIPLOW
}
Sidenotes: I couldn't figure out how to combine MAXHD, MAXHDP, and MOMAX into a single option in the ChannelName parameter, since it didn't like *MAX*. I also didn't quite understand the PPV\\d+ option you demonstrated in the guide, but kept it anyway.

Back on track, I also have a matching COMSKIP which is set for NORMAL CPU usage and I have a COMSKIPLOW that's set for LOW CPU usage:
Code:
// Total number of process this client can run at once; default is 1 if not specified
:MAXPROCS 4

COMSKIP {
   // Total number of COMSKIP tasks this client can run at once;
   // if larger than MAXPROCS then the value is reset to equal MAXPROCS;
   // if not specified then default of 1 is used;
   // set to 0 for no limit (limited only by MAXPROCS setting);
   // set to negative number to temporarily disable execution of this task type by this client
   :MAX 3

   // CPU priority to be used for this task process; one of LOW, NORMAL, HIGH (case sensitive)
   :CPU "NORMAL"   // Default is NORMAL if not specified

   "C:/comskip/comskip.exe \"%c%\""
}

COMSKIPLOW {
   // Total number of COMSKIPLOW tasks this client can run at once;
   // if larger than MAXPROCS then the value is reset to equal MAXPROCS;
   // if not specified then default of 1 is used;
   // set to 0 for no limit (limited only by MAXPROCS setting);
   // set to negative number to temporarily disable execution of this task type by this client
   :MAX 4

   // CPU priority to be used for this task process; one of LOW, NORMAL, HIGH (case sensitive)
   :CPU "LOW"   // Default is NORMAL if not specified

   "C:/comskip/comskip.exe \"%c%\""
}
The issue that I believe will happen with this is that the time at which the creation of the task is issued will determine which COMSKIP is specified in the task. However, queued tasks may not run between the 7pm-11pm timeframe, thereby causing the task to run at the incorrect CPU usage.

I won't ask the dumb question of whether there's a way to do what I want, since I'm quite certain there is based on the level of customization you built into this. But, would you be able to help me create such a thing?

Thanks in advance! This SJQ is unreal!
  #673  
Old 05-02-2009, 10:34 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Quote:
Originally Posted by Skirge01 View Post
Okay, my first Ruleset question. What I want to do is set up the server to run 3 COMSKIP threads on my quad core under normal circumstances, except between 7pm and 11pm. Between 7pm and 11pm, I want to run 4 COMSKIP threads, but at LOW CPU usage.

With what I learned, I got to this point:
Code:
# Comskip all scheduled recordings on "commercial" channels between 19:00 and 23:00
if [IsTV == true && IsScheduledRecording == true && ChannelName !% "HBO*|UHD|MAX*|MOMAX|STZ*|ENC*|SHO*|TMC*|HDNE*|PPV\\d+" && (TimeOfDay < "19:00" || TimeOfDay > "23:00") && FileExists != "%d%/%p%.edl"] {
   COMSKIP
}

# LOW Priority Comskip all scheduled recordings on "commercial" channels between 19:00 and 23:00
if [IsTV == true && IsScheduledRecording == true && ChannelName !% "HBO*|UHD|MAX*|MOMAX|STZ*|ENC*|SHO*|TMC*|HDNE*|PPV\\d+" && (TimeOfDay > "19:00" || TimeOfDay < "23:00") && FileExists != "%d%/%p%.edl"] {
   COMSKIPLOW
}
Sidenotes: I couldn't figure out how to combine MAXHD, MAXHDP, and MOMAX into a single option in the ChannelName parameter, since it didn't like *MAX*. I also didn't quite understand the PPV\\d+ option you demonstrated in the guide, but kept it anyway.
Two things. First, your regular expressions are incorrect. HBO* means "HB followed by zero or more Os". What you probably meant was HBO.* which means, "HBO followed by zero or more characters." You will want to familiarize yourself with regular expressions to avoid incorrect results with the QueueLoader. Second, PPV\d+ means "PPV followed by one or more numbers" (so strings like "PPV1", "PPV3" and "PPV17" would all match that regular expression). You have to use a double backslash because you need to escape the backslash inside double quoted strings so that's why you end up with the "PPV\\d+" in the ruleset. Again, this is all dealt with in the Javadocs for regular expressions available here.

Quote:
Back on track, I also have a matching COMSKIP which is set for NORMAL CPU usage and I have a COMSKIPLOW that's set for LOW CPU usage:
Code:
// Total number of process this client can run at once; default is 1 if not specified
:MAXPROCS 4

COMSKIP {
   // Total number of COMSKIP tasks this client can run at once;
   // if larger than MAXPROCS then the value is reset to equal MAXPROCS;
   // if not specified then default of 1 is used;
   // set to 0 for no limit (limited only by MAXPROCS setting);
   // set to negative number to temporarily disable execution of this task type by this client
   :MAX 3

   // CPU priority to be used for this task process; one of LOW, NORMAL, HIGH (case sensitive)
   :CPU "NORMAL"   // Default is NORMAL if not specified

   "C:/comskip/comskip.exe \"%c%\""
}

COMSKIPLOW {
   // Total number of COMSKIPLOW tasks this client can run at once;
   // if larger than MAXPROCS then the value is reset to equal MAXPROCS;
   // if not specified then default of 1 is used;
   // set to 0 for no limit (limited only by MAXPROCS setting);
   // set to negative number to temporarily disable execution of this task type by this client
   :MAX 4

   // CPU priority to be used for this task process; one of LOW, NORMAL, HIGH (case sensitive)
   :CPU "LOW"   // Default is NORMAL if not specified

   "C:/comskip/comskip.exe \"%c%\""
}
The issue that I believe will happen with this is that the time at which the creation of the task is issued will determine which COMSKIP is specified in the task. However, queued tasks may not run between the 7pm-11pm timeframe, thereby causing the task to run at the incorrect CPU usage.

I won't ask the dumb question of whether there's a way to do what I want, since I'm quite certain there is based on the level of customization you built into this. But, would you be able to help me create such a thing?

Thanks in advance! This SJQ is unreal!
Not a dumb question because the way you describe it is the way it works. The time at which the task is queued will determine which comskip is selected. There is no way to reset it based on the time the task is assigned to a client. However, it's unlikely a task will be queued for much longer than a few mins in most cases unless you have way more tuners that are constantly recording than CPUs.

This works as designed and won't be changed. If this is an ongoing issue then you could clear the queued tasks and rerun the QueueLoader at 7pm daily and again at 11pm, doing so would change the comskip task being used as needed. Though I have no plans on implementing such a feature in the SJQ core, you could script such a feature with a little work. The basic idea would be to write a script that does the following:
  • Login/authenticate with the SJQ server
  • Load the URL to clear the active queue
  • Load the URL to manually run the QueueLoader (after you've successfully cleared the queue)

If you write this script then you just need to trigger it at 7pm and 11pm daily then you'll be set.
__________________
Twitter: @ddb_db
Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive
Capture: 2 x Colossus
STB Controller: 1 x USB-UIRT
Software:Java 1.7.0_71; SageTV 7.1.9
Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter
Plugins: Too many to list now...
  #674  
Old 05-02-2009, 12:32 PM
Skirge01's Avatar
Skirge01 Skirge01 is offline
SageTVaholic
 
Join Date: Jun 2007
Location: New Jersey
Posts: 2,599
Thanks, Slugger. I appreciate you taking the time to help me out. I'll be sure to read that Java document to get some further understanding. I think I'm going to skip the 7pm-11pm timeframe for any processing, rather than go for any sort of scripting like you described. Seems like too much work for just that tiny bit of extra processing.
  #675  
Old 05-05-2009, 12:11 PM
zetronboy zetronboy is offline
Sage User
 
Join Date: Aug 2007
Location: Seattle area
Posts: 31
NT Service issue

The client seems to be working fine but I have an issue when using the client service instead.
The show analyzer jobs are not using my global settings and its causing SA to not output the needed EDL files. The SA log file shows the task is getting run but there are no EDL files. SA is not runing with my settings, I do not see the icon in the status tray that I normally see.
SA works fine if I drag-n-drop a show onto the exe. I tested my client COMSKIP command by pasting it on the command line as a test (with UNC MPG inserted in path) and it worked fine.
Here is the client config file:
Code:
#Auto generated by SJQC 
 #Sun May 03 16:52:42 PDT 2009
 port=8081
 host=sagetv
 is_ssl=false
Here is the server config Wraper.conf:
Code:
#********************************************************************
# Wrapper License Properties (Ignored by Community Edition)
#********************************************************************
# Include file problems can be debugged by removing the first '#'
#  from the following line:
##include.debug
#include ../conf/wrapper-license.conf

#********************************************************************
# Wrapper Java Properties
#********************************************************************
# Java Application
wrapper.java.command=java

# Java Main class.  This class must implement the WrapperListener interface
#  or guarantee that the WrapperManager class is initialized.  Helper
#  classes are provided to do this for you.  See the Integration section
#  of the documentation for details.
wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp

# Java Classpath (include wrapper.jar)  Add class path elements as
#  needed starting from 1
wrapper.java.classpath.1=../lib/wrappertest.jar
wrapper.java.classpath.2=../lib/wrapper.jar
wrapper.java.classpath.3=sjqc.jar
wrapper.java.classpath.4=json.jar

# Java Library Path (location of Wrapper.DLL or libwrapper.so)
wrapper.java.library.path.1=../lib

# Java Additional Parameters
#wrapper.java.additional.1=

# Initial Java Heap Size (in MB)
#wrapper.java.initmemory=3

# Maximum Java Heap Size (in MB)
#wrapper.java.maxmemory=64

# Application parameters.  Add parameters as needed starting from 1
wrapper.app.parameter.1=com.google.code.sagetvaddons.sjqc.TaskClient
wrapper.app.parameter.2=c:/SJQC/

#********************************************************************
# Wrapper Logging Properties
#********************************************************************
# Format of output for the console.  (See docs for formats)
wrapper.console.format=PM

# Log Level for console output.  (See docs for log levels)
wrapper.console.loglevel=INFO

# Log file to use for wrapper output logging.
wrapper.logfile=../logs/wrapper.log

# Format of output for the log file.  (See docs for formats)
wrapper.logfile.format=LPTM

# Log Level for log file output.  (See docs for log levels)
wrapper.logfile.loglevel=INFO

# Maximum size that the log file will be allowed to grow to before
#  the log is rolled. Size is specified in bytes.  The default value
#  of 0, disables log rolling.  May abbreviate with the 'k' (kb) or
#  'm' (mb) suffix.  For example: 10m = 10 megabytes.
wrapper.logfile.maxsize=10m

# Maximum number of rolled log files which will be allowed before old
#  files are deleted.  The default value of 0 implies no limit.
wrapper.logfile.maxfiles=12

# Log Level for sys/event log output.  (See docs for log levels)
wrapper.syslog.loglevel=NONE

#********************************************************************
# Wrapper Windows Properties
#********************************************************************
# Title to use when running as a console
wrapper.console.title=SJQ Task Client for Windows

#********************************************************************
# Wrapper Windows NT/2000/XP Service Properties
#********************************************************************
# WARNING - Do not modify any of these properties when an application
#  using this configuration file has been installed as a service.
#  Please uninstall the service before modifying this section.  The
#  service can then be reinstalled.

# Name of the service
wrapper.ntservice.name=SJQTaskClient

# Display name of the service
wrapper.ntservice.displayname=SJQ Task Client for Windows

# Description of the service
wrapper.ntservice.description=A task client for the SJQ SageTV plugin

# Service dependencies.  Add dependencies as needed starting from 1
wrapper.ntservice.dependency.1=

# Mode in which the service is installed.  AUTO_START or DEMAND_START
wrapper.ntservice.starttype=AUTO_START

# Allow the service to interact with the desktop.
wrapper.ntservice.interactive=false
Here is part of the server log:
Code:
STATUS | wrapper  | 2009/05/01 23:05:09 | Launching a JVM...
INFO   | jvm 1    | 2009/05/01 23:05:09 | WrapperManager: Initializing...
INFO   | jvm 1    | 2009/05/01 23:05:09 | SJQ Task Client v2.1.3.420
INFO   | jvm 1    | 2009/05/01 23:05:09 | Using 'c:/SJQC/' as location for configuration file...
STATUS | wrapper  | 2009/05/03 12:11:33 | <-- Wrapper Stopped
STATUS | wrapper  | 2009/05/03 12:20:00 | --> Wrapper Started as Service
STATUS | wrapper  | 2009/05/03 12:20:00 | Java Service Wrapper Community Edition 3.3.1
STATUS | wrapper  | 2009/05/03 12:20:00 |   Copyright (C) 1999-2008 Tanuki Software, Inc.  All Rights Reserved.
STATUS | wrapper  | 2009/05/03 12:20:00 |     http://wrapper.tanukisoftware.org
STATUS | wrapper  | 2009/05/03 12:20:00 | 
STATUS | wrapper  | 2009/05/03 12:20:00 | Launching a JVM...
INFO   | jvm 1    | 2009/05/03 12:20:01 | WrapperManager: Initializing...
INFO   | jvm 1    | 2009/05/03 12:20:01 | SJQ Task Client v2.1.3.420
INFO   | jvm 1    | 2009/05/03 12:20:01 | Using 'c:/SJQC/' as location for configuration file...
STATUS | wrapper  | 2009/05/03 16:52:30 | <-- Wrapper Stopped
The service files are in a different folder than the stand-alone client but the date on sjqc.jar is the same, mar28,09. That might just be the day I extracted the files though. I copied the JAR from the client folder to the service bin directory and it did not help.
Im running the latest SageMC 6.39a41 and SageTV 6.5.13 in stand-alone mode.
__________________
SageTV 6.6.2 and SageMC on WinXP
2Gb Ram, Athlon 1800+
AverMedia A180, Duet
SJQ, MovieTimes, NetFlilx plugins
  #676  
Old 05-05-2009, 02:29 PM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Best guess is that you'll have to explicitly point to the SA config file in your SJQ command line. From what you say, it seems SJQ is starting SA just fine so it's just a matter of ensuring that all the proper parameters are being passed into SA when called from SJQ.
__________________
Twitter: @ddb_db
Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive
Capture: 2 x Colossus
STB Controller: 1 x USB-UIRT
Software:Java 1.7.0_71; SageTV 7.1.9
Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter
Plugins: Too many to list now...
  #677  
Old 05-05-2009, 09:39 PM
zetronboy zetronboy is offline
Sage User
 
Join Date: Aug 2007
Location: Seattle area
Posts: 31
Specify INI in Command

I tried that. Here is my client config:

Code:
COMSKIP {
   "C:/program files/Dragon Global/ShowAnalyzer/ShowAnalyzer.exe \"%c%\" -ini \"C:\\program files\\Dragon Global\\ShowAnalyzer\\Settings\\global.ini\""
}
I also tried pointing it toward Default.ini but no help. The settings I need are in global.ini that specify CPU priority and generated config files.

Is there some debug I can use to get more info?
Is there a way to specify a working directory for the COMSKIP job?
Maybe I should run a batch file to accomplish this?
__________________
SageTV 6.6.2 and SageMC on WinXP
2Gb Ram, Athlon 1800+
AverMedia A180, Duet
SJQ, MovieTimes, NetFlilx plugins
  #678  
Old 05-06-2009, 05:52 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Take a look at the task logs for a task that ran (click on a completed task and view the log). The first line will show the complete command line that was executed. Make sure your command args were passed in properly. Currently there is no option to specify the working dir. Yes, perhaps a batch file will help with the issues.
__________________
Twitter: @ddb_db
Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive
Capture: 2 x Colossus
STB Controller: 1 x USB-UIRT
Software:Java 1.7.0_71; SageTV 7.1.9
Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter
Plugins: Too many to list now...
  #679  
Old 05-06-2009, 07:23 AM
nyplayer nyplayer is offline
SageTVaholic
 
Join Date: Sep 2005
Posts: 4,997
Quote:
Originally Posted by zetronboy View Post
I tried that. Here is my client config:

Code:
COMSKIP {
   "C:/program files/Dragon Global/ShowAnalyzer/ShowAnalyzer.exe \"%c%\" -ini \"C:\\program files\\Dragon Global\\ShowAnalyzer\\Settings\\global.ini\""
}
I also tried pointing it toward Default.ini but no help. The settings I need are in global.ini that specify CPU priority and generated config files.

Is there some debug I can use to get more info?
Is there a way to specify a working directory for the COMSKIP job?
Maybe I should run a batch file to accomplish this?
Use a batchfile and run that. See Below.



showanalyzer.bat
cd "C:\program files\Dragon Global\ShowAnalyzer\"
c:
start /b /w /belownormal ShowAnalyzer.exe "%~f1"

your client rule should look similar to this.
SHOWANALYZER {
:CPU BELOWNORMAL
:MAX 2
"S:\\mysagelocal\\ShowAnalyzer.bat \"%c%\""
}
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct.
  #680  
Old 05-06-2009, 01:17 PM
nyplayer nyplayer is offline
SageTVaholic
 
Join Date: Sep 2005
Posts: 4,997
Slugger,

I have a ruleset that checks if someone is viewing media but It appears that even if a client is viewing media it still passes the test. Does it have to be viewing the file I am running a test for or does this apply to all media viewing.

Code:
//Ok To Reboot
if [IsSomethingRecording == "false" && IsActivelyRecording == "false" && IsArchived == "true" && IsManualRecord == "true" && IsViewingMedia == "false" && TranscodeQueueSize < "1"&& TimeUntilNextRecording > "15M" && FileExists == "c:\\oktoreboot.txt" && Title == "Not Recording"]{
    :PRIORITY 110
      OKTOREBOOT
}
I am watching a show on a client.. I did a test see below.

2009/05/06 12:23:04.640 Line 83: Evaluating 'IsSomethingRecording == "false"' == true
2009/05/06 12:23:04.640 Line 83: Evaluating 'IsActivelyRecording == "false"' == true
2009/05/06 12:23:04.640 Line 83: Evaluating 'IsArchived == "true"' == true
2009/05/06 12:23:04.640 Line 83: Evaluating 'IsManualRecord == "true"' == true
2009/05/06 12:23:04.640 Line 83: Evaluating 'IsViewingMedia == "false"' == true
2009/05/06 12:23:04.640 Line 83: Evaluating 'TranscodeQueueSize < "1"' == true
2009/05/06 12:23:04.640 Line 83: Evaluating 'TimeUntilNextRecording > "15M"' == true
2009/05/06 12:23:04.640 MediaVar '%s%' == 'NotRecording'
2009/05/06 12:23:04.640 MediaVar '%y%' == ''
2009/05/06 12:23:04.640 MediaVar '%c%' == 'M:\importuncm\NotRecording-NotRecording-2211154-0.mpg'
2009/05/06 12:23:04.640 MediaVar '%d%' == 'M:\importuncm'
2009/05/06 12:23:04.640 MediaVar '%f%' == 'NotRecording-NotRecording-2211154-0.mpg'
2009/05/06 12:23:04.640 MediaVar '%e%' == 'mpg'
2009/05/06 12:23:04.640 MediaVar '%p%' == 'NotRecording-NotRecording-2211154-0'
2009/05/06 12:23:04.640 MediaVar '%t%' == 'Not Recording'
2009/05/06 12:23:04.640 Line 83: Evaluating 'FileExists == "c:\oktoreboot.txt"' == false
2009/05/06 12:23:04.640 Line 83: Evaluating 'Title == "Not Recording"' == true
__________________
Channels DVR UBUNTU Server 2 Primes 3 Connects TVE SageTV Docker with input from Channels DVR XMLTV and M3U VIA Opendct.

Last edited by nyplayer; 05-06-2009 at 01:26 PM.
Closed Thread


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

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
Plugin: Sage Job Queue (SJQ) v3 Slugger SageTV Customizations 1355 07-25-2013 07:44 AM
Sage Job Queue (SJQ) new release notifications Slugger Customization Announcements 3 12-17-2009 09:59 AM
Sage Job Queue Completed tasks problem raffmanlt SageTV Customizations 2 08-18-2009 07:34 PM
Comskip Monitor VS Sage Job Queue SJQ personalt SageTV Customizations 6 03-02-2009 10:27 AM
Plugin: SJQ v1.1.0RC1 Available - Testers Needed Slugger SageTV Customizations 35 04-21-2008 08:12 AM


All times are GMT -6. The time now is 04:14 PM.


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