SageTV Community  

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

Notices

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.

Reply
 
Thread Tools Search this Thread Display Modes
  #301  
Old 10-25-2013, 01:16 PM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Go to the web ui, go to the status menu in the Schedules Direct options. Does it show that you have at least one headend registered?
__________________
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...
Reply With Quote
  #302  
Old 10-25-2013, 01:38 PM
mzup mzup is offline
Sage Advanced User
 
Join Date: Sep 2007
Posts: 169
It says Configured Headends.
a checkbox and ID Description written next to it.

Edit: Under Status it says I have no lineups configured but I have been using this for a long time.

Last edited by mzup; 10-25-2013 at 01:43 PM.
Reply With Quote
  #303  
Old 10-25-2013, 02:34 PM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Right, as was mentioned in the 0.5.0 notes, a data format change at SD requires uses to register their headends again.

Do that then the epg pull should work fine.
__________________
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...
Reply With Quote
  #304  
Old 10-25-2013, 05:13 PM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
I don't know whether it's a bug in 0.5, a bug in SD, or some corruption that's entered my system but, since upgrading to latest beta, my system is no longer picking up the programLanguage field for my foreign channels from the SD data download and my Airing filter, that previously automatically detected and corrects the program language on channels when it wasn't present and correct in the SD data is not being called at all. I did check the SD epg download, and the programLanguage field is present and correct in this download.
Reply With Quote
  #305  
Old 10-25-2013, 07:35 PM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Hmm... assuming the language data is in the .epg file then it's most likely something I need to fix in the plugin. There were alot of data format changes internally in this new SD API release so it's likely that even though the data is still in the .epg file, it might be a different location within an object such that my plugin code isn't finding it.

I will investigate this over the weekend.
__________________
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...
Reply With Quote
  #306  
Old 10-26-2013, 05:41 AM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
If it help, here's a copy of the lineup listing from the epg for one of the channels:

{
"affiliate": "Satellite",
"broadcaster": {
"city": "Beijing",
"country": "China",
"logo": {
"URL": "https://s3.amazonaws.com/schedulesdirect/images/9cc4d63256a4a8534be108a7b05cfc95.png",
"dimension": "180x135",
"md5": "n9/iLWEVcTo02Vs1PA4wJw",
"modified": "2013-10-03T02:57:30Z"
},
"state": "XX",
"zipcode": "80122"
},
"callsign": "CCTV4",
"language": "Mandarin",
"name": "CCTV4--China Central TV",
"stationID": 24248
},
Reply With Quote
  #307  
Old 10-26-2013, 07:02 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
So I'll need to see a scheduled airing for that channel plus the associated program entry. It needs to be a sample where you're expecting the language to be set, but it hasn't been.
__________________
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...
Reply With Quote
  #308  
Old 10-26-2013, 08:33 AM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
Here's the program entry:

{
"colorCode": "Color",
"descriptionLanguage": "English",
"genres": ["Variety"],
"md5": "8ozJJy0uBJ9W1qxLbu8K4g",
"originalAirDate": "2009-08-02",
"programID": "SH011756660000",
"showType": "Series",
"sourceType": "Local",
"titles": {
"title10": "Happy...",
"title120": "Happy Chinese"
}

and the airing entry:

{
"airDateTime": "2013-10-25T09:15:00Z",
"cc": true,
"duration": 900,
"md5": "8ozJJy0uBJ9W1qxLbu8K4g",
"programID": "SH011756660000",
"programLanguage": "Mandarin",
"stereo": true
},
}
Reply With Quote
  #309  
Old 10-26-2013, 09:17 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
That's what I thought... the descriptionLanguage="English", which I didn't expect in these cases (I made some changes to optimize the language lookup stuff).

So that's why the internal language isn't being set correctly. I'm stumped still as to why your filter script isn't working. Can you paste that in?

I'll have to think about how to handle the situation where a program description is in English, but the program doesn't air in English. I'll probably have to just ignore the "trick" I implemented and undo it.
__________________
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...
Reply With Quote
  #310  
Old 10-26-2013, 02:11 PM
wayner wayner is offline
SageTVaholic
 
Join Date: Jan 2008
Location: Toronto, ON
Posts: 7,491
Hi Slugger - I haven't tried this yet since everything is still go with the main Sage EPG but I noticed this in post 1:
Quote:
In order to use more than one unique lineup within SageTV via this plugin, you must also have a sagetv-addons license. This is NOT the same as your SageTV server, client, or placeshifter license. See the link for details. If you only need one unique lineup then you may not need a license. A single lineup can be assigned to multiple input sources without the need for a plugin license. There are also other ways to remove the need for a license.
Is that license requirement still the case as didn't you nuke the sagetv-addons license recently?
__________________
New Server - Sage9 on unRAID 2xHD-PVR, HDHR for OTA
Old Server - Sage7 on Win7Pro-i660CPU with 4.6TB, HD-PVR, HDHR OTA, HVR-1850 OTA
Clients - 2xHD-300, 8xHD-200 Extenders, Client+2xPlaceshifter and a WHS which acts as a backup Sage server
Reply With Quote
  #311  
Old 10-26-2013, 02:17 PM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
The license requirement still exists in the code, but as long as you install the latest version of the license server plugin, then you automatically have the full license.

Really, any plugin (of mine) that says it's restricted by licensing can be ignored as long as you have the latest license server plugin installed. That license server update is what bypasses the licensing requirement (by just "saying yes" to anything that asks it about its licensing state).
__________________
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...
Reply With Quote
  #312  
Old 10-26-2013, 03:08 PM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
Quote:
Originally Posted by Slugger View Post
That's what I thought... the descriptionLanguage="English", which I didn't expect in these cases (I made some changes to optimize the language lookup stuff). So that's why the internal language isn't being set correctly.
In general, I've found that the descriptionLanguage always uses a Roman-style alphabet. It will match the programLanguage when the programLanguage also uses a Roman-style alphabet but not when the program language uses some other system such as character-based Asian languages.

Quote:
I'm stumped still as to why your filter script isn't working. Can you paste that in?
Here's the Airing Filter

// Required imports
import sagex.api.*
import org.apache.log4j.Level

// Set log level for the script
_log_.setLevel((Level) Level.INFO)

// Retrieve channel number for the Airing being processed
def chan = ChannelAPI.GetChannelForStationID(_src_.station.id.toInteger())
def channelNumber = ChannelAPI.GetChannelNumber(chan)

/*
* Determine if the Airing is on a French or Chinese channel
* French channel(s): 1771
* Chinese channel(s): 1795, 1796
* If the Airing is on one of these channels, check the broadcastLanguage and correct if necessary.
*/
if (channelNumber ==~ /1771|1795|1796/) {
switch (channelNumber) {
case ~/1771/: // French Channel
if(_src_.broadcastLanguage ==~ /French/) {
_src_.broadcastLanguage = "French"
_log_.error("Note: $channelNumber language changed to French")
}
break
case ~/1795|1796/: // Chinese Channel
if(_src_.broadcastLanguage ==~ /Mandarin|Chinese/) {
_src_.broadcastLanguage = "Mandarin"
_log_.error("Note: $channelNumber language changed to Mandarin")
}
break
default: // Should never get here
_log_.error("Error: $channelNumber being erroneously processed")
break
}
}
Reply With Quote
  #313  
Old 10-26-2013, 05:21 PM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Your filter basically says if the language is already set then set it again, so now I see why that's not working.

And I know why the internal code isn't working (for you, on the Chinese stations).

Am I right in assuming you want the language of every airing on those channels to be set? If so, then just remove the if conditions inside the switch statement, they shouldn't be necessary. By doing that, your filter basically says to set the language on all airings on those channels that match the outer regex, which is what I think you want.

Obviously, that filter shouldn't be necessary after I fix my bug, which I will try to fix tomorrow morning before football kicks off and then try to get the fix out early next week.
__________________
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...
Reply With Quote
  #314  
Old 10-27-2013, 05:56 AM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
You're right. I revised my airing filter when the program language was added to the SD download and and made an error when I revised it. It is supposed to say if the language is "not" set then set it but I apparently left on the "not" when I made the change. I didn't detect this before since the filter was not necessary as long as the correct language was being picked up from the SD download.

Edit: I believe I corrected the problem (I defined externalID and revised the case statement [see below]) and the Airing filter is still not being processed.

case ~/1771/: // French Channel
if (_src_.broadcastLanguage ==~ /French/) { // Already correct; print debug message and exit
_log_.debug("Skipping ExternalID: $externalID - Correct language already set")
return
}
// Set language to French
_src_.broadcastLanguage = "French"
break

Last edited by JerryB; 10-27-2013 at 06:19 AM. Reason: Add in code revision
Reply With Quote
  #315  
Old 10-27-2013, 07:07 AM
rkulagow's Avatar
rkulagow rkulagow is offline
Sage Advanced User
 
Join Date: Feb 2013
Posts: 157
If this is better suited for the server side (so that anyone who also has the same channel will get the same benefit), then please send me the stationID and the override language (so that all programs will get the language set)
Reply With Quote
  #316  
Old 10-27-2013, 07:09 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
I believe the language is already set on all the airings on these channels. The issue is that the Sage plugin isn't processing the language value properly in this new release. I thought I was being smart with some fancy optimizations to the routine, instead I broke it.
__________________
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...
Reply With Quote
  #317  
Old 10-27-2013, 01:46 PM
rkulagow's Avatar
rkulagow rkulagow is offline
Sage Advanced User
 
Join Date: Feb 2013
Posts: 157
Understood. At this time I only have a few examples of stations which need overrides, so if there are more then people should let me know so that I can make the adjustments server-side.

Thanks!
Reply With Quote
  #318  
Old 10-28-2013, 06:56 AM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
I think I know why my Airing filter is not being called. Unfortunately, it raises another issue. It appears that while updated SDEPG data are being downloaded, these data are not being processed and incorporated in SageTV. I noticed this when I realized that my SageTV listing only had a few days of data left even though SD had reported more recent data being available and an examination of the sdepg download file confirmed that this file contained the more recent data. I tried deleting my headends and then adding them back just in case something got messed up when I added them back following the upgrade and that didn't fix the problem. Do you have any idea what could be causing this or what I should try next? Thanks.
Reply With Quote
  #319  
Old 10-28-2013, 07:39 AM
Slugger Slugger is offline
SageTVaholic
 
Join Date: Mar 2007
Location: Kingston, ON
Posts: 4,008
Any errors in the sdepg.log file? That's always the place to start when things aren't working as expected.
__________________
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...
Reply With Quote
  #320  
Old 10-28-2013, 08:00 AM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
Quote:
Originally Posted by Slugger View Post
Any errors in the sdepg.log file? That's always the place to start when things aren't working as expected.
That was the first thing I checked but I there were no errors, only warnings, and nothing that I could tell that indicated what is going on, see below.

2013-10-28 08:33:54,124 INFO [ProgramGenerator]: Processed show generators in 11ms
2013-10-28 08:33:59,283 WARN [Plugin]: Missing PluginProperty: sdepg/grabberHeap
2013-10-28 08:33:59,313 WARN [Plugin]: Missing PluginProperty: sdepg/sdjsonThreads
2013-10-28 08:33:59,313 WARN [Plugin]: Missing PluginProperty: sdepg/sdjsonUrl
2013-10-28 08:33:59,313 WARN [Plugin]: Missing PluginProperty: sdepg/grabberLogLvl
2013-10-28 08:33:59,313 WARN [Plugin]: Missing PluginProperty: sdepg/sdjsonProgChunk
2013-10-28 08:33:59,313 WARN [Plugin]: Missing PluginProperty: sdepg/sdjsonSchedChunk
2013-10-28 08:33:59,403 WARN [Plugin]: Missing PluginProperty: sdepg/cacheTTL
2013-10-28 08:35:09,515 INFO [ProgramGenerator]: Processed show generators in 1ms
2013-10-28 08:35:09,553 INFO [EpgDownloader]: [C:\Program Files (x86)\Java\jre7\bin\java, -Xmx512m, -jar, P:\SageTV\SageTV\plugins\sdepg\tools\sdjson.jar, --username, *****, --password, *****, --user-agent, sagetv-sdepg/0.0.5.0 (Windows 8 x86 6.2), --max-threads, 200, --url, https://data2.schedulesdirect.org, --grabber-log-level, INFO, grab, --target, P:\SageTV\SageTV\plugins\sdepg\sdjson.epg, --max-prog-chunk, 50000, --max-sched-chunk, 1000, --ignore-stations, P:\SageTV\SageTV\plugins\sdepg\ignore.txt]
2013-10-28 08:36:32,030 INFO [EPGImportPluginSchedulesDirect]: Performed EPG download in 82515ms
2013-10-28 08:36:32,585 INFO [ChannelGenerator]: Processed channel generators in 3ms
2013-10-28 08:36:32,586 INFO [EPGImportPluginSchedulesDirect]: Performed channel processing in 556ms
2013-10-28 08:36:32,971 INFO [EPGImportPluginSchedulesDirect]: Performed lineup map configuration in 385ms
2013-10-28 08:37:34,396 INFO [ProgramGenerator]: Processed show generators in 1ms
2013-10-28 08:37:34,405 INFO [EpgDownloader]: [C:\Program Files (x86)\Java\jre7\bin\java, -Xmx512m, -jar, P:\SageTV\SageTV\plugins\sdepg\tools\sdjson.jar, --username, *****, --password, *****, --user-agent, sagetv-sdepg/0.0.5.0 (Windows 8 x86 6.2), --max-threads, 200, --url, https://data2.schedulesdirect.org, --grabber-log-level, INFO, grab, --target, P:\SageTV\SageTV\plugins\sdepg\sdjson.epg, --max-prog-chunk, 50000, --max-sched-chunk, 1000, --ignore-stations, P:\SageTV\SageTV\plugins\sdepg\ignore.txt]
2013-10-28 08:37:35,947 INFO [EPGImportPluginSchedulesDirect]: Performed EPG download in 1551ms
2013-10-28 08:37:36,100 INFO [ChannelGenerator]: Processed channel generators in 1ms
2013-10-28 08:37:36,100 INFO [EPGImportPluginSchedulesDirect]: Performed channel processing in 153ms
2013-10-28 08:37:36,355 INFO [EPGImportPluginSchedulesDirect]: Performed lineup map configuration in 255ms
2013-10-28 08:38:46,798 INFO [ProgramGenerator]: Processed show generators in 0ms
2013-10-28 08:38:46,807 INFO [EpgDownloader]: [C:\Program Files (x86)\Java\jre7\bin\java, -Xmx512m, -jar, P:\SageTV\SageTV\plugins\sdepg\tools\sdjson.jar, --username, *****, --password, *****, --user-agent, sagetv-sdepg/0.0.5.0 (Windows 8 x86 6.2), --max-threads, 200, --url, https://data2.schedulesdirect.org, --grabber-log-level, INFO, grab, --target, P:\SageTV\SageTV\plugins\sdepg\sdjson.epg, --max-prog-chunk, 50000, --max-sched-chunk, 1000, --ignore-stations, P:\SageTV\SageTV\plugins\sdepg\ignore.txt]
2013-10-28 08:38:48,403 INFO [EPGImportPluginSchedulesDirect]: Performed EPG download in 1605ms
2013-10-28 08:38:48,605 INFO [ChannelGenerator]: Processed channel generators in 0ms
2013-10-28 08:38:48,605 INFO [EPGImportPluginSchedulesDirect]: Performed channel processing in 201ms
2013-10-28 08:38:48,905 INFO [EPGImportPluginSchedulesDirect]: Performed lineup map configuration in 300ms
2013-10-28 08:39:49,918 INFO [ProgramGenerator]: Processed show generators in 0ms
2013-10-28 08:39:49,926 INFO [EpgDownloader]: [C:\Program Files (x86)\Java\jre7\bin\java, -Xmx512m, -jar, P:\SageTV\SageTV\plugins\sdepg\tools\sdjson.jar, --username, *****, --password, *****, --user-agent, sagetv-sdepg/0.0.5.0 (Windows 8 x86 6.2), --max-threads, 200, --url, https://data2.schedulesdirect.org, --grabber-log-level, INFO, grab, --target, P:\SageTV\SageTV\plugins\sdepg\sdjson.epg, --max-prog-chunk, 50000, --max-sched-chunk, 1000, --ignore-stations, P:\SageTV\SageTV\plugins\sdepg\ignore.txt]
2013-10-28 08:39:51,504 INFO [EPGImportPluginSchedulesDirect]: Performed EPG download in 1586ms
2013-10-28 08:39:51,929 INFO [ChannelGenerator]: Processed channel generators in 0ms
2013-10-28 08:39:51,929 INFO [EPGImportPluginSchedulesDirect]: Performed channel processing in 424ms
2013-10-28 08:39:52,165 INFO [EPGImportPluginSchedulesDirect]: Performed lineup map configuration in 236ms
Reply With Quote
Reply


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: Schedules Direct EPG Source for SageTV OSS Slugger SageTV v9 Customizations 89 10-11-2016 07:31 AM
Schedules Direct Plugin Issue rickgillyon SageTV v9 Customizations 20 09-25-2016 12:03 PM
Schedules Direct plugin not compatible Damstas SageTV Github Development 20 09-21-2015 05:10 AM
Schedules Direct EPG Plugin: Call for private beta testers Slugger SageTV v7 Customizations 11 01-19-2013 11:59 AM
Schedules Direct EPG Plugin PoC Completed Slugger SageTV EPG Service 71 12-04-2011 12:12 PM


All times are GMT -6. The time now is 03:21 AM.


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