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
  #1  
Old 08-22-2012, 07:18 AM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
Potential SageTV Win 8 "Metro" app

I really liked cncb's Vista/Windows 7 Sidebar gadget as a simple means of keeping track of current and upcoming SageTV recordings and have come to miss this functionality with Microsoft's removal of sidebar support in the RTM version of Windows 8.

Therefore, in an attempt to replace at least some of this functionality and to gain experience developing "Metro" apps, I have decided to try and develop a "Metro" app that queries the SageTV server and provides a scrolling list of current and upcoming recordings with the ability select any recording on this list and obtain further information (description, actors/crew, season/episode, rating, high definition, channel, etc.) regarding that recording.

Whether or not I will be able to implement all the functionality that I'd like in this app, I don't know. Furthermore, given the current state of SageTV and the lack of information about its future, I recognize that one could question the wisdom of initiating a new development effort at this stage, especially one targeting Windows 8. Still, I'd like to keep my SageTV system going as long as possible (or at least until a better alternative comes along) and, to this end, would like to try and recover some of the functionality that I've lost. Moreover, even if this effort doesn't end up producing a widely used app, I figure that what I learn about developing Windows 8 "Metro" apps will be beneficial.

Currently, what I would like to know is:
  • Outside of my own personal use, is there any interest in this type of app?
  • If you are interested, are you able and willing to be a beta tester?

Please be aware that, given Microsoft's rules for Windows 8 apps, any beta tester would have to have their own licensed copy of Windows 8 RTM and a Microsoft developers license (required in order to sideload beta versions of the app prior to its release). In addition, the released version of the app would have to be submitted to and approved by Microsoft and distributed through their new Windows store, although it can be distributed as a "free" app.
Reply With Quote
  #2  
Old 08-22-2012, 11:26 AM
darcilicious's Avatar
darcilicious darcilicious is offline
Sage Icon
 
Join Date: Jul 2009
Location: Venus
Posts: 1,306
Yes, I would be interested in this "app". I won't be able to beta test unfortunately, given the requirements you posted
__________________
SageTV Server 7.1.x w/Gemstone and Plex Home Theater v1.0.10 w/PlexPass
HD-PVR w/v1.5.6 drivers / Hauppauge IR blaster / FiOS Extreme HD / Motorola QIP6200 / SPDIF+720p Fixed Output
on HP Media Center 8400F (Phenom 9500 QuadCore 2.2GHz, nVidia GeForce 8500 GT)
via Olevia 247TFHD/Onyko TX-SR606/Harmony 550/HP MediaSmart EX490 WHS w/12TB
Plex Media Server v0.9.9.5 on HP Touchsmart Envy 23 d16qd
Sonos Play:3, Connect / SimpleTV v2 / Roku 2 XS+Plex / iPhone 5 / iPad 2
Reply With Quote
  #3  
Old 08-22-2012, 12:11 PM
Spartan's Avatar
Spartan Spartan is offline
Sage Advanced User
 
Join Date: Nov 2007
Location: Michigan, USA
Posts: 109
Please put me on the list. I'm a Windows Phone developer, and although my dev license has now expired, I am likely going to renew it at some point. If possible, I'd also like to help out with the development (if I can).

-Matt
Reply With Quote
  #4  
Old 08-22-2012, 02:24 PM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
Quote:
Originally Posted by darcilicious View Post
Yes, I would be interested in this "app". I won't be able to beta test unfortunately, given the requirements you posted
I understand. While I can understand why Microsoft has locked down Windows 8 apps for security reasons, I think that requiring a developer's license in order to be able to sideload apps for testing purposes is going to make it difficult to find sufficient beta testers.
Reply With Quote
  #5  
Old 08-22-2012, 02:27 PM
darcilicious's Avatar
darcilicious darcilicious is offline
Sage Icon
 
Join Date: Jul 2009
Location: Venus
Posts: 1,306
What's a developer's license cost these days? Would subscribing to TechNet do the trick or ??
__________________
SageTV Server 7.1.x w/Gemstone and Plex Home Theater v1.0.10 w/PlexPass
HD-PVR w/v1.5.6 drivers / Hauppauge IR blaster / FiOS Extreme HD / Motorola QIP6200 / SPDIF+720p Fixed Output
on HP Media Center 8400F (Phenom 9500 QuadCore 2.2GHz, nVidia GeForce 8500 GT)
via Olevia 247TFHD/Onyko TX-SR606/Harmony 550/HP MediaSmart EX490 WHS w/12TB
Plex Media Server v0.9.9.5 on HP Touchsmart Envy 23 d16qd
Sonos Play:3, Connect / SimpleTV v2 / Roku 2 XS+Plex / iPhone 5 / iPad 2
Reply With Quote
  #6  
Old 08-22-2012, 02:49 PM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
Quote:
Originally Posted by Spartan View Post
Please put me on the list. I'm a Windows Phone developer, and although my dev license has now expired, I am likely going to renew it at some point. If possible, I'd also like to help out with the development (if I can).

-Matt
Great. Let me know when you have Windows 8 installed. You can get a one month (renewable) developer license for Windows 8 apps for free with a Microsoft/Windows live ID. That's the license I'm using since Microsoft is currently only accepting developer registrations for Windows 8 apps from companies. Once they open up the registrations to individuals, I'll register as a developer, at which point I should be able to get a developer license that's good for a year.

This app involves so many firsts for me that I'll take any help I can get. I spent days just figuring out initial layouts since, for Microsoft certification, the app has to run on a wide variety of screen sizes and resolutions in both portrait and landscape orientation. I had everything setup based on my development monitor only to find that some display elements didn't appear correctly, ie were cut off, on lower resolution screens, some didn't appear correctly when the app was snapped to the side of the screen, and others didn't appear correctly when the device was rotated from landscape to portrait mode.
Reply With Quote
  #7  
Old 08-22-2012, 03:08 PM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
Quote:
Originally Posted by darcilicious View Post
What's a developer's license cost these days? Would subscribing to TechNet do the trick or ??
Right now, Microsoft is so anxious to have people develop Windows 8 apps that they're giving away developers licenses that are good for 1 month, and renewable on a monthly basis, upon request, to anyone with a Microsoft ID. However, I don't know how long they'll continue to do this. They may stop, once the Windows Store is fully operational and begins to register individual developers. Currently, Microsoft is only allowing companies to register as developers and haven't indicated when they'll open registration up to individual software developers. You need to be a registered developer for the Windows 8 store in order to get developer license that lasts for more than one month.
Reply With Quote
  #8  
Old 08-22-2012, 05:42 PM
Denali Denali is offline
Sage Advanced User
 
Join Date: Aug 2008
Location: South Florida
Posts: 169
A bit of information, if your willing to except the security issues that caused Microsoft to remove it, SideBar can be re-installed in Windows 8. I've tired it in X86 Pro and it seems to work and has returned the SageTV gadget under Win 8.
http://forums.mydigitallife.info/thr...-32bit-Version
__________________
HTPC: Gigabyte GA-Z170XP-SLI, I7-6700, 16GB, Windows 10 Pro x64, Hauppauge HVR-1600, WinTV-dualHD, Colossus 2, Samsung 850 EVO 120GB, Seagate 3TB, WD 3TB, 3TB, 5TB, Java v1.8.0_231, SageTVx64 v9.2.1.826, Samsung UN60EH6003F, Dish ViP222K, ViewHD 1x2 HDMI Splitter.
Reply With Quote
  #9  
Old 08-26-2012, 09:45 AM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
Initial Screen Shots

Here are some of screen shots of what I've created so far.

Currently, the view that is initially displayed when you run the appis a summary of the number of recordings currently scheduled in 4 time periods (currently recording, within 24 hours, this week, and all). If there are no recordings scheduled within a time period then that time period is not displayed, eg currently recording in the screen shot.

If you click on one of these time periods, you open up the detail screen for that time period. This screen summarizes all the scheduled recordings within the selected time period on the left hand side and displays detailed information about a selected entry on the right hand side.

The final image is the apps Live Tile for the start screen. This tile can summarize the data for the next 3 scheduled recordings, assuming the app is or has recently been running. Ultimately, I'd like this tile to continually update irrespective of whether or not the main app is running but I haven't yet been able to figure out a way to accomplish this. Currently, the app sends the notification messages to the tile and this only occurs when the app is running.
Attached Images
File Type: jpg TVRecSchd_InitialDataView.jpg (84.1 KB, 311 views)
File Type: jpg TVRecSchd_DetailDataView.jpg (314.2 KB, 291 views)
File Type: jpg TVRecSchd_LiveTile.jpg (18.4 KB, 286 views)
Reply With Quote
  #10  
Old 08-28-2012, 09:23 PM
wayner wayner is offline
SageTVaholic
 
Join Date: Jan 2008
Location: Toronto, ON
Posts: 7,491
Looks good - can it be customizable the way that the old one was so that you can put the info you want. I guess this is mainly applicable to the Live Tile - I would also like to see free disk space, for example and Epiosde names.
__________________
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
  #11  
Old 08-29-2012, 05:37 AM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
I'm not trying to duplicate the SageTV gadget. That's cncb's product and code. I don't want to end up playing Samsung to cncb's Apple

For now, I'm just trying to replace some of the functionality from the gadget that I lost with the removal of gadget support in Windows 8. The first release of my app, assuming I get that far, will only summarizing the recording schedule. If there is sufficient interest, then I may add other features in later versions of the app.

It is doubtful that the Live tile will ever display free disk space or episode names. This is a limitation of Live Tiles as currently implemented by Microsoft. Specifically, there is a very small of display options (pictures and lines of text) for Live Tiles. I chose the option that permits displaying the most information (no picture, a Title line and 3 lines of text). Since I sometimes record 3 shows simultaneously, I'm not going to dedicate one of those text lines to free disk space and there just isn't enough character space in a text line to include recording time, show title, and show episode. You'll need to go to the detail screen if you want specific episode information.
Reply With Quote
  #12  
Old 08-29-2012, 06:48 AM
Spartan's Avatar
Spartan Spartan is offline
Sage Advanced User
 
Join Date: Nov 2007
Location: Michigan, USA
Posts: 109
Quote:
Originally Posted by JerryB View Post
Great. Let me know when you have Windows 8 installed. You can get a one month (renewable) developer license for Windows 8 apps for free with a Microsoft/Windows live ID. That's the license I'm using since Microsoft is currently only accepting developer registrations for Windows 8 apps from companies. Once they open up the registrations to individuals, I'll register as a developer, at which point I should be able to get a developer license that's good for a year.

This app involves so many firsts for me that I'll take any help I can get. I spent days just figuring out initial layouts since, for Microsoft certification, the app has to run on a wide variety of screen sizes and resolutions in both portrait and landscape orientation. I had everything setup based on my development monitor only to find that some display elements didn't appear correctly, ie were cut off, on lower resolution screens, some didn't appear correctly when the app was snapped to the side of the screen, and others didn't appear correctly when the device was rotated from landscape to portrait mode.
I've had Windows 8 installed since the CTP & the RC, & now have the RTM verison on my MacBook. Lemme know whatever I can do to help.

Is the code in a shared repository at all? I'd love to get my hands on it!
Reply With Quote
  #13  
Old 08-29-2012, 09:07 AM
darcilicious's Avatar
darcilicious darcilicious is offline
Sage Icon
 
Join Date: Jul 2009
Location: Venus
Posts: 1,306
I'll admit it -- I'd like a more detail view as the default. Right now, the other widget tells me what and when is going to be recording, for the next X number of recordings. This is really really useful at-a-glance info. Compared to only knowing that there are "X recordings" in the next 24 hours, and "Y recordings" in the next week -- I'm always going to want the more detailed view...

Just my $0.02 worth
__________________
SageTV Server 7.1.x w/Gemstone and Plex Home Theater v1.0.10 w/PlexPass
HD-PVR w/v1.5.6 drivers / Hauppauge IR blaster / FiOS Extreme HD / Motorola QIP6200 / SPDIF+720p Fixed Output
on HP Media Center 8400F (Phenom 9500 QuadCore 2.2GHz, nVidia GeForce 8500 GT)
via Olevia 247TFHD/Onyko TX-SR606/Harmony 550/HP MediaSmart EX490 WHS w/12TB
Plex Media Server v0.9.9.5 on HP Touchsmart Envy 23 d16qd
Sonos Play:3, Connect / SimpleTV v2 / Roku 2 XS+Plex / iPhone 5 / iPad 2
Reply With Quote
  #14  
Old 08-29-2012, 10:19 AM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
Quote:
Originally Posted by darcilicious View Post
I'll admit it -- I'd like a more detail view as the default. Right now, the other widget tells me what and when is going to be recording, for the next X number of recordings.
Just to be clear. Are you saying that you'd like to get rid of the first "summary" page and just have the second "detail" screen? Remember that currently the Live Tile information may not be up to date since this tile only gets refreshed when the main program is running and Windows 8 can shut down a Metro app at any time when it needs memory. Does anyone else have any thoughts or comments about eliminating the summary page and just providing detail information on all scheduled recordings?
Reply With Quote
  #15  
Old 08-29-2012, 10:38 AM
darcilicious's Avatar
darcilicious darcilicious is offline
Sage Icon
 
Join Date: Jul 2009
Location: Venus
Posts: 1,306
Quote:
Originally Posted by JerryB View Post
Just to be clear. Are you saying that you'd like to get rid of the first "summary" page and just have the second "detail" screen?
That's my preference... but others may want something else


Quote:
Remember that currently the Live Tile information may not be up to date since this tile only gets refreshed when the main program is running and Windows 8 can shut down a Metro app at any time when it needs memory.
Hmmm... so there's no way to set an "update schedule" interval (like the current widget)? Any way to manually force it without the main program running?

I only ask because I haven't played with Win8 for any length of time yet but it might be time to
__________________
SageTV Server 7.1.x w/Gemstone and Plex Home Theater v1.0.10 w/PlexPass
HD-PVR w/v1.5.6 drivers / Hauppauge IR blaster / FiOS Extreme HD / Motorola QIP6200 / SPDIF+720p Fixed Output
on HP Media Center 8400F (Phenom 9500 QuadCore 2.2GHz, nVidia GeForce 8500 GT)
via Olevia 247TFHD/Onyko TX-SR606/Harmony 550/HP MediaSmart EX490 WHS w/12TB
Plex Media Server v0.9.9.5 on HP Touchsmart Envy 23 d16qd
Sonos Play:3, Connect / SimpleTV v2 / Roku 2 XS+Plex / iPhone 5 / iPad 2
Reply With Quote
  #16  
Old 08-29-2012, 03:34 PM
Tiki's Avatar
Tiki Tiki is offline
Sage Icon
 
Join Date: Feb 2005
Location: Southwest Florida, USA
Posts: 2,009
Quote:
Originally Posted by JerryB View Post
I'm not trying to duplicate the SageTV gadget. That's cncb's product and code. I don't want to end up playing Samsung to cncb's Apple

For now, I'm just trying to replace some of the functionality from the gadget that I lost with the removal of gadget support in Windows 8. The first release of my app, assuming I get that far, will only summarizing the recording schedule. If there is sufficient interest, then I may add other features in later versions of the app.

It is doubtful that the Live tile will ever display free disk space or episode names. This is a limitation of Live Tiles as currently implemented by Microsoft. Specifically, there is a very small of display options (pictures and lines of text) for Live Tiles. I chose the option that permits displaying the most information (no picture, a Title line and 3 lines of text). Since I sometimes record 3 shows simultaneously, I'm not going to dedicate one of those text lines to free disk space and there just isn't enough character space in a text line to include recording time, show title, and show episode. You'll need to go to the detail screen if you want specific episode information.
After seeing your posts, I decided to take a look at the msdn website for more info on live tiles in Win8. It looks like Microsoft has established some very firm guidelines that really limit what you can do (not necessarily a bad thing). You must use one of their pre-defined templates, and can't just arbitrarily choose how big to make the tile, how many lines of text, or what font to use.

Based on this, I can see why it is difficult to show all the things that some people might be interested in seeing. One possible solution you may wish to consider is something called "secondary tiles". This would allow you to create additional tiles with more specialized information. They are still limited to most of the same constraints as the regular tiles, but it would allow you to display additional content. A possible example would be to show a secondary tile with the 3 most recent recordings.

Some other ideas you might consider would be to use a badge with a number that shows the number of recordings currently in progress. Or, a badge with a new message glyph to indicate if there are any new system messages from Sage.

Anyway, just thought I would throw some ideas out there. The screenshots you posted earlier look like a nice start.
__________________
Server: Ryzen 2400G with integrated graphics, ASRock X470 Taichi Motherboard, HDMI output to Vizio 1080p LCD, Win10-64Bit (Professional), 16GB RAM
Capture Devices (7 tuners): Colossus (x1), HDHR Prime (x2)
,USBUIRT (multi-zone)
Source:
Comcast/Xfinity X1 Cable
Primary Client: Server Other Clients: (1) HD200, (1) HD300
Retired Equipment: MediaMVP, PVR150 (x2), PVR150MCE,
HDHR, HVR-2250, HD-PVR
Reply With Quote
  #17  
Old 08-29-2012, 08:16 PM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
Quote:
Originally Posted by darcilicious View Post
Hmmm... so there's no way to set an "update schedule" interval (like the current widget)? Any way to manually force it without the main program running?
My goal was and still is to have the Live Tile continually updated without requiring the Recording Schedule App to be running in the background. Unfortunately, I haven't yet been able to figure out a way to do this. Perhaps someone who is more familiar with web development can help out. If not, I'm going to keep trying to see if I can figure out a way.

Basically there are 2 ways to update a Live tile. One way is for the app to notify the Tile to update its display via what Microsoft calls notification extensions. This method requires the app to be running in order to create and send the notification to the tile. This is the method I'm currently using. The other is by having the Tile intermittently poll a website for the information as a background process. Ideally, this is the method I'd like to use since it doesn't require the app to be running. Unfortunately, this method requires that the website respond to the polling by returning a file that contains all the necessary information to update the Tile is a very specific format and I haven't been able to figure out how to call the SageTV server in a way that returns only the required information to update the tile in the required format.
Reply With Quote
  #18  
Old 08-29-2012, 08:25 PM
JerryB JerryB is offline
Sage Aficionado
 
Join Date: Aug 2008
Posts: 273
Quote:
Originally Posted by Tiki View Post
After seeing your posts, I decided to take a look at the msdn website for more info on live tiles in Win8. It looks like Microsoft has established some very firm guidelines that really limit what you can do (not necessarily a bad thing). You must use one of their pre-defined templates, and can't just arbitrarily choose how big to make the tile, how many lines of text, or what font to use.

Based on this, I can see why it is difficult to show all the things that some people might be interested in seeing. One possible solution you may wish to consider is something called "secondary tiles". This would allow you to create additional tiles with more specialized information. They are still limited to most of the same constraints as the regular tiles, but it would allow you to display additional content. A possible example would be to show a secondary tile with the 3 most recent recordings.

Some other ideas you might consider would be to use a badge with a number that shows the number of recordings currently in progress. Or, a badge with a new message glyph to indicate if there are any new system messages from Sage.
I agree, secondary tiles and badges are potential options to display a little more information but the amount of information that can be displayed is still going to be very limited given Microsoft's limitations regarding tile size, lines of text, and font. In any event, this extra information is only useful if I can update the Live tile when the app is not running and so far, I've not been able to figure out a way to do this.
Reply With Quote
  #19  
Old 08-30-2012, 06:23 AM
BobPhoenix BobPhoenix is offline
SageTVaholic
 
Join Date: Oct 2004
Posts: 3,152
Quote:
Originally Posted by JerryB View Post
Unfortunately, this method requires that the website respond to the polling by returning a file that contains all the necessary information to update the Tile is a very specific format and I haven't been able to figure out how to call the SageTV server in a way that returns only the required information to update the tile in the required format.
Brute force method maybe? Write your own java class that you communicate with. Then you can return whatever you want from SageTV you just build a "General" type SageTV plugin.
Reply With Quote
  #20  
Old 08-30-2012, 06:53 AM
stuckless's Avatar
stuckless stuckless is offline
SageTVaholic
 
Join Date: Oct 2007
Location: London, Ontario, Canada
Posts: 9,713
FYI.... the sagex-apis provide a REST interface to the sagetv apis. So, if you can invoke any sagetv api call and return the data as json or xml from the server.

To use the sagex-apis, you need to have the sagex-services plugin installed and if you do, then you can, can test it out by pointing your browser to...

http://server:8080/sagex/api

You should get a help page with some information on how to invoke the api.

And, on a side note, the sagex-apis, is what is used in the new google fibre/sagetv product... although I hear that they may be replacing sagex with their own service api at some point.

sagex-api also allows your to publish your own services to the server in a javascript file and then you can call those services remotes. The Plex plugin uses this feature, if I recall. This feature is handy because you may want to do something a little more complex and it's faster to grab a bunch of files on the server, process then, and then send back the results instead of doing it on the client. The services javascript is like "storage procedures".
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
Are plugins: "Ortus MQ" & "SageTV H2 Mobile Database" needed? mkanet SageTV Customizations 2 12-06-2010 06:56 AM
"Backdrops" "SageTV" "Covers" folders - what's creating them mp328 Sage My Movies 4 09-20-2010 05:31 PM
Potential to make many people happy... "My Movies" for SageTV? vvulture SageTV Customizations 116 04-27-2009 04:53 PM
Can anyone customize for me a Sagetv import for "movie now" "news now" .. menus thenewguy1979 SageMC Custom Interface 9 09-18-2008 02:41 PM
Potential bug in "Keep at Most" field in Favorites Manager jeremydmiller SageTV Software 9 03-19-2005 05:46 PM


All times are GMT -6. The time now is 07:03 PM.


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