|
SageTV v7 Customizations This forums is for discussing and sharing user-created modifications for the SageTV version 7 application created by using the SageTV Studio or through the use of external plugins. Use this forum to discuss plugins for SageTV version 7 and newer. |
|
Thread Tools | Search this Thread | Display Modes |
#61
|
||||
|
||||
I finally have the threading issue all sorted out. Thanks to all.
I did run into another Jetty issues that is unrelated to this particular issue. Over the last few days I noticed the UI would periodically become sluggish. I figured it was because I was messing the with jetty and somehow my threads were breaking it. Today the UI stopped working totally. After some debugging I found out that the C: drive (which is small, only 40GB) was completely full. The primary culprit was a lot of Jetty stuff in the WINDOWS\temp directory. I have put Jetty through its paces over the past few days frequently disabling, enabling, dropping in new .war files, uninstalling, installing, etc. so I'm not sure if that caused the temp directory to fill up. Is Jetty supposed to clean up these files or is it up to the users to periodically clean out the temp directory?
__________________
Sage Server: 8th gen Intel based system w/32GB RAM running Ubuntu Linux, HDHomeRun Prime with cable card for recording. Runs headless. Accessed via RD when necessary. Four HD-300 Extenders. |
#62
|
||||
|
||||
Quote:
Jetty will delete the directory when it is restarted from the plugin manager or when Sage is shut down - unless the directory existed when Jetty started.
__________________
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. |
#63
|
|||
|
|||
Big-time noob alert!!!
I am building a new Sage server. My intent is to start fresh with v7 (this machine will never have v6 installed at all). On my old (current) server, I have nielm's webserver (the old one), and I want to have a webserver (ability to access Sage through the internet) on the new machine, and it is my understanding (I think?) that this Jetty server is the "newer and better" way. It looks like, from the wiki in the OP of this thread, that all I have to do is install v7 and use the plug-in manager to add the Jetty web server. However, I feel like there must be something related to Jetty (non-Sage) that I have to install or having running on my server.... is that right? Or does the plug-in include/install all that stuff? Also, for nielm's old webserver, I had to have a web redirect (I used no-ip.com or whatever it's called)... am I correct that you don't need anything like this anymore, when using Jetty? (the wiki is not quite "for dummies" enough... ) In other words.... Keeping in mind that I have absolutely no understanding of what Jetty is or does, what will I need to do on my new server machine, in v7, to get the webserver working? (btw, if it matters, my new server will plenty of speed/memory, but will have WinXP pro 32 for now... I will install all the latest firmware and all, and I watch Sage exclusively via extenders, both HD100 and HD200.)
__________________
Server: AMD Athlon II x4 635 2.9GHz, 8 Gb RAM, Win 10 x64, Java 8, Gigabit network Drives: Several TB of internal SATA and external USB drives, no NAS or RAID or such... Software: SageTV v9x64, stock STV with ADM. Tuners: 4 tuners via (2) HDHomeruns (100% OTA, DIY antennas in the attic). Clients: Several HD300s, HD200s, even an old HD100, all on wired LAN. Latest firmware for each. |
#64
|
||||
|
||||
The plugin manager will handle the dependicies for you. Since it is a new server it makes it simpler. Install Jetty Webserver first. After the install choose installed plugins and you will have an option to configure the settings. Get that all configured and running first. Now you can choose to install the WebUI for Jetty or the Mobile WebUI for Jetty. Your choice of flavor-or both.
Gerry
__________________
Big Gerr _______ Server - WHS 2011: Sage 7.1.9 - 1 x HD Prime and 2 x HDHomeRun - Intel Atom D525 1.6 GHz, Acer Easystore, RAM 4 GB, 4 x 2TB hotswap drives, 1 x 2TB USB ext Clients: 2 x PC Clients, 1 x HD300, 2 x HD-200, 1 x HD-100 DEV Client: Win 7 Ultimate 64 bit - AMD 64 x2 6000+, Gigabyte GA-MA790GP-DS4H MB, RAM 4GB, HD OS:500GB, DATA:1 x 500GB, Pace RGN STB. |
#65
|
|||
|
|||
Quote:
1a) Are the settings anything that will confuse me? Is there a step-by-step through the settings anywhere, with screen shots and all? I think that's part of what is confusing me - I have not seen a page like that. I would at least like to see a listing of all the config options and what they all do. 2) When you install the web UI or mobile web UI, all that does is create some "behind the scenes" stuff on your PC (within Sage?) that creates the UI when you access from elsewhere, right? It doesn't really do anything in Sage that you see when you are using it on, say, and Extender, right? 2a) And the mobile one is just the same thing, but smaller for devices like iPhones? Thanks for the help!
__________________
Server: AMD Athlon II x4 635 2.9GHz, 8 Gb RAM, Win 10 x64, Java 8, Gigabit network Drives: Several TB of internal SATA and external USB drives, no NAS or RAID or such... Software: SageTV v9x64, stock STV with ADM. Tuners: 4 tuners via (2) HDHomeruns (100% OTA, DIY antennas in the attic). Clients: Several HD300s, HD200s, even an old HD100, all on wired LAN. Latest firmware for each. |
#66
|
||||
|
||||
Quote:
1a) wiki 2) Right. 2a) Right again. Check out the wiki for more info. The other interfaces wiki hasn't been updated yet for Sage 7. Reffering to the older info will give you an idea but it is easy enough to install thru the plugin manager for most default installs. Gerry
__________________
Big Gerr _______ Server - WHS 2011: Sage 7.1.9 - 1 x HD Prime and 2 x HDHomeRun - Intel Atom D525 1.6 GHz, Acer Easystore, RAM 4 GB, 4 x 2TB hotswap drives, 1 x 2TB USB ext Clients: 2 x PC Clients, 1 x HD300, 2 x HD-200, 1 x HD-100 DEV Client: Win 7 Ultimate 64 bit - AMD 64 x2 6000+, Gigabyte GA-MA790GP-DS4H MB, RAM 4GB, HD OS:500GB, DATA:1 x 500GB, Pace RGN STB. |
#67
|
|||
|
|||
The wiki is even more confusing for a noob - in fact, it's almost liable to scare some (like me) off. So rather than me running and hiding and not being able to use this, hopefully some kind soul here will spend a minute and help. The biggest question I have is, are there defaults in each of the configuration categories that will work without being changed? Assume I don’t want or need to change the default port on my server.
Some questions, per configuration categories: 1) User: What does this default to? Correct me if I am wrong, but it sounds like I have to change it in order for the Automatic UPnP connection to work? Can I make it whatever I want or does it have to match the computer name or network name or such? 2) Enable SSL: This is completely scary for a noob. The link to the Jetty SSL wiki is more confusing than helpful to someone who doesn’t know the lingo. It also appears that you need to have a domain name… or is this something that the other options here (Automatic UPnP config) will give me? Help? 3) HTTP Port: Will this default to something that should work? If not, what will this be? 4) HTTPS Port: It says “(i)t is only displayed if the Enable SSL property is set to True.” Since I’m confused about #2 above, well… I’m confused about this. Do you choose either HTTP or HTTPS (with #2), or can you have both? See… I really am a noob. 5) Web Server Address: Sounds like I want to use the “Locator Id method” and this will be filled in automatically, right? Anything else tricky here? 6) Encrypted Web Server Address: Again, is this something that will be filled with a default and I shouldn’t have to mess with it? 7) Internet Connection: Is it best to leave this as “Automatic UPnP Configuration”, if I just have a standard home network? What are reasons to use automatic or not use it? 8) External HTTP Port: If I have the internet connection set to Automatic UPnP Configuration, will this be filled in automatically? 9) External HTTPS Port: Same question as #8, but also my last question from #4. Sorry, I know this is a lot of confusion, but this is the kind of stuff that I think should be explained in the wiki or the “setup instructions” at a “for dummies” level - and unfortunately, this particular plugin seems to be aimed at much more technically-knowledgeable people.
__________________
Server: AMD Athlon II x4 635 2.9GHz, 8 Gb RAM, Win 10 x64, Java 8, Gigabit network Drives: Several TB of internal SATA and external USB drives, no NAS or RAID or such... Software: SageTV v9x64, stock STV with ADM. Tuners: 4 tuners via (2) HDHomeruns (100% OTA, DIY antennas in the attic). Clients: Several HD300s, HD200s, even an old HD100, all on wired LAN. Latest firmware for each. Last edited by pjpjpjpj; 06-17-2010 at 07:33 PM. |
#68
|
||||
|
||||
What Sage "stuff" is available to a Servlet?
I have a Servlet that spawns a thread. Within the thread I want to use stuckless' sagex.api to do various things but it seems like most of the Sage "environment" is not accessible.
For example, I wrote a really simple test case to get the MediaFiles: Code:
Object[] O = MediaFileAPI.GetMediaFiles(); if (O==null) System.out.println("NO MEDIAFILES!"); else System.out.println("FOUND MEDIAFILES " + O.length); Am I doing something wrong or are most of the sagex.api's not usable from within a Jetty Servlet?
__________________
Sage Server: 8th gen Intel based system w/32GB RAM running Ubuntu Linux, HDHomeRun Prime with cable card for recording. Runs headless. Accessed via RD when necessary. Four HD-300 Extenders. |
#69
|
||||
|
||||
Partial answer to my own question: Many of the Sage APIs will not work from within a Jetty servlet.
Now to figure out how to get around this
__________________
Sage Server: 8th gen Intel based system w/32GB RAM running Ubuntu Linux, HDHomeRun Prime with cable card for recording. Runs headless. Accessed via RD when necessary. Four HD-300 Extenders. |
#70
|
||||||||
|
||||||||
Quote:
Quote:
Quote:
Also note that in order for port mapping to work on your router (the UPnP stuff), that port can't be used for anything else, which could include mappings to other computers on your network or the router's remote admin feature (usually disabled by default). If 8080 is mapped to something else (and assuming you want to keep that as the port for Jetty), you either need to change the router setting or go to Jetty's configuration options and use 'Automatic UPnP Configuration with Port Selection' and change the external port number to something else. Note that not all routers support mapping one port number to another. Quote:
Quote:
Quote:
Quote:
Quote:
There was discussion a couple months ago about an effort to help developers with documentation but unfortunately it seems to have stalled. I'd love to see it gain traction and would be willing to support anyone creating documentation.
__________________
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. |
#71
|
||||
|
||||
Quote:
__________________
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. |
#72
|
||||
|
||||
Quote:
Quote:
Out of curiousity, are you running this in a test servlet inside of a SageTV environment, or in a test servlet outside of the sagetv environment. The sagex-apis have 2 modes. The primary mode is is an "embedded" mode which call the native sage apis directly and the second mode is a "remote" mode where the apis are proxied to a remote sagetv server. Typically you don't set he mode, since the sagex-apis will "know" if they are running inside a sagetv environment or not.
__________________
Batch Metadata Tools (User Guides) - SageTV App (Android) - SageTV Plex Channel - My Other Android Apps - sagex-api wrappers - Google+ - Phoenix Renamer Downloads SageTV V9 | Android MiniClient |
#73
|
||||
|
||||
Sean,
I am sure the APIs work, because the web interface must use them all over the place. I'll be darned if I can figure out what I am doing wrong. I'm running the APIs locally. I have Sage, Jetty and my servlet running on a Linux server. My servlet code is attached. If I put the test code in the servlet it returns a null. If I put the test code inside a thread spawned by the "standard plugin" interface it works just fine. You'll probably think my java code is childish but go easy on me, I've only been using java for a few months
__________________
Sage Server: 8th gen Intel based system w/32GB RAM running Ubuntu Linux, HDHomeRun Prime with cable card for recording. Runs headless. Accessed via RD when necessary. Four HD-300 Extenders. |
#74
|
|||
|
|||
Quote:
I decided to install Jetty from scratch after I got this problem. Everything installs and I can run the Jetty config, I just can't connect using the server address/port. I can connect to the SageTV Web Interface addin with no problem, though. I've also ran the duplicate jar cleaner and it didnt find anything. I can't see anything in the log that jumps out and I'm not sure where to go from here: |
#75
|
||||
|
||||
According to your log, you have a JARs\nielm_sagewebserver.jar file so most likely you're not running nielm's web interface in Jetty. If that's the case, make sure the two web servers aren't on the same port.
The port number for nielm's web server when running in its own web server (TJWS, as opposed to Jetty) is specified in your Sage properties file on the line nielm/webserver/port. Compare that with your setting in the Jetty plugin config screen. If they're the same you'll need to change one or the other.
__________________
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. |
#76
|
|||
|
|||
Yeah, I run that webserver on port 8080 and Jetty on 8500.
|
#77
|
|||
|
|||
Nevermind, guys. I went ahead and reinstalled windows from scratch. After getting everything installed, Jetty works just fine now.
|
#78
|
|||
|
|||
Help please I can't get this new version of Jetty to work. I just get "Firefox can't establish a connection to the server at host:8082." as though the Jetty server isn't running.
What I've tried so far... I used to have Sage v6 with the old Jetty plugin, which was upgraded to v7, jetty still worked after the upgrade. I upgraded to the new version using the plugin manager and I got the issue above, I tried cleaning the JARs and reinstalling Jetty to no avail. I have since re-installed Sage v7 from scratch copying over Wiz.bin, frq file .properties etc to make sure there was nothing old left over and then tried installing Jetty again - same problem. The Sage server has more than one NIC and I remember there being some problem in the old version where I needed to set the listen address as it defaulted to the NIC that is inaccessible from the LAN. I've tried this in the new version of Jetty by setting jetty.host to the nic's IP (removed because it's a real world IP) in sage.properties as follows: jetty/jetty.configfiles=false jetty/jetty.home=F\:\\SageTV\\SageTV\\jetty jetty/jetty.host=x.x.x.x<<NIC IP>> jetty/jetty.log.level=DEBUG jetty/jetty.logs=F\:\\SageTV\\SageTV\\jetty\\logs jetty/jetty.port=8082 jetty/jetty.ssl.port=8443 (I found this setting in jetty.xml: <Set name="host"><Property name="jetty.host" /></Set> ) This makes no difference, will this even work as I'm expecting? Thing is I can't see anything useful in the logs, I've got debug logging enabled and logging in jetty (tried VERBOSE as well as debug) Relevant bits of log file below, (I can post the full log if it's helpful) Code:
Tue 7/27 20:56:35.228 user.dir2=F:\SageTV\SageTV Tue 7/27 20:56:35.239 classpath=F:\SageTV\SageTV\Sage.jar;F:\SageTV\SageTV\xerces.jar;F:\SageTV\SageTV\plugin.jar;F:\SageTV\SageTV\;;JARs\ant-1.6.5.jar;JARs\commons-jxpath-1.1.jar;JARs\core-3.1.1.jar;JARs\jcifs-1.1.6.jar;JARs\jdic.jar;JARs\jetty-6.1.19.jar;JARs\jetty-ajp-6.1.19.jar;JARs\jetty-rewrite-handler-6.1.19.jar;JARs\jetty-sslengine-6.1.19.jar;JARs\jetty-starter.jar;JARs\jetty-util-6.1.19.jar;JARs\jsp-2.1-jetty-6.1.19.jar;JARs\jsp-2.1.jar;JARs\jsp-api-2.1.jar;JARs\sagex-api.jar;JARs\sbbi-upnplib-1.0.3.jar;JARs\servlet-api-2.5-6.1.19.jar;JARs\vecmath.jar <<snip>> Tue 7/27 20:57:08.896 Loading all core plugins... Tue 7/27 20:57:08.897 StorageDeviceDetector started... Tue 7/27 20:57:08.855 CorePluginManager is checking plugin: sagex-api type: Library version: 7.0.12.0 by: stuckless Tue 7/27 20:57:08.855 CorePluginManager is checking plugin: jetty type: Standard version: 2.0.1.19 by: jreichen Tue 7/27 20:57:08.856 Plugin jetty is enabled, try to load it from class: sagex.jetty.starter.JettyPlugin Tue 7/27 20:57:08.902 Using default logging, since log4j is not in the classpath. Tue 7/27 20:57:08.954 LOADED PLUGINS=[SageTVPlugin[jetty state=Enabled name=Jetty Web Server version=2.0.1.19 type=Standard desc=The Jetty Web Server Plugin provides a platform for SageTV web application plugins. Currently available web applications can manage SageTV recordings from desktop or mobile web browsers, manage fanart and metadata, provide remote web services for SageTV, configure batch job processing, and more. The plugin consists of two parts. The first part is Jetty, a 3rd-party Java web server from Mortbay Consulting that can be embedded in a Java program such as SageTV. The second part is a set of plugin classes created by the author that interact with SageTV to start, stop, and configure the Jetty web server. author=jreichen screenshots=[http://sageplugins.sourceforge.net/s...TVWebApps.png] videos=null modified=5/31/2010 installed=7/27/2010 resPath=jetty webpages=[http://forums.sagetv.com/forums/showthread.php?t=48818, http://tools.assembla.com/sageplugins/wiki/Jetty, http://jetty.codehaus.org/jetty/] implementation=sagex.jetty.starter.JettyPlugin desktopOnly=false OS=Win,Linux,Mac dependencies=[PluginDependency[SageTV minVer=7.0.8 type=Core], PluginDependency[sagex-api minVer=7.0.9.0 type=Plugin], PluginDependency[Java minVer=1.5 type=JVM]] packages=null], SageTVPlugin[sagex-api state=Failed name=sagex-api - SageTV API Extensions version=7.0.12.0 type=Library desc=SageTV API Wrappers with Remote API capabilities author=stuckless screenshots=null videos=null modified=7/18/2010 installed=7/27/2010 resPath=sagex-api webpages=[http://forums.sagetv.com/forums/showthread.php?t=36044] implementation= desktopOnly=false OS=Win,Linux,Mac dependencies=null packages=null]] Tue 7/27 20:57:08.965 Increased StringBuffer pool to size=1 Tue 7/27 20:57:08.970 Starting all core plugins... Tue 7/27 20:57:08.970 Moving starting of plugin Jetty Web Server to after sagex-api - SageTV API Extensions because of its dependency on it. Tue 7/27 20:57:08.970 Calling start on plugin: Jetty Web Server Tue 7/27 20:57:09.096 Checking to see if the plugin repository file needs to be updated... Tue 7/27 20:57:09.203 Done starting core plugins. Tue 7/27 20:57:09.209 Starting UPnP NAT Manager... Tue 7/27 20:57:09.601 Local plugin repository file's checksum matches server's, no need to download a new one. Tue 7/27 20:57:09.603 Analyzing plugin repository XML file... Tue 7/27 20:57:09.672 Done processing plugin repository XML file repositoryVersion=1.0.418 Any ideas what I can try from here? |
#79
|
||||
|
||||
Quote:
Before we get much further into your other questions about IPs, I think I see the problem. Make sure Sage is shut down, then in Sage.properties, change Code:
jetty/jetty.configfiles=false Code:
jetty/jetty.configfiles="F\:\\SageTV\\SageTV\\jetty\\etc\\jetty.xml" Quote:
__________________
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. Last edited by jreichen; 07-28-2010 at 09:33 PM. Reason: Fix backslash before xml file |
#80
|
|||
|
|||
Quote:
To further test I removed the jetty.host property and restarted sage, this works too. The jetty.host property does work though as setting it to 127.0.0.1 only allows local access. Many thanks for the help Jason. |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Plugin: SageTV Web Interface V2 for Jetty | jreichen | SageTV Customizations | 256 | 02-09-2014 08:05 AM |
Plugin: Jetty Starter 1.6 | jreichen | SageTV Customizations | 122 | 09-07-2012 06:48 PM |
error message with web server plugin | edgley | SageTV Customizations | 3 | 01-15-2006 11:32 AM |
Sage Web Server and existing web server compatibilty? | Brent94Z | SageTV Customizations | 6 | 01-18-2005 11:29 AM |