latest stable versions: v150827 (changelog)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

luisrosario


My Latest Replies (From Various Topics)

Viewing 25 replies - 1 through 25 (of 48 total)
Author Replies
Author Replies
Posted: Tuesday Jul 2nd, 2013 at 12:54 pm #52904

Is there a way to do this? I’m realizing that the keys are browser specific. So if I wanted to generate key that is universal but expires in 24hrs, how would I do that?

Posted: Wednesday Mar 6th, 2013 at 11:44 am #43885

Thanks Cristian, it seems that it’s in issue a slightly older safari browser.. So I think we are in the clear.

Posted: Monday Mar 4th, 2013 at 7:23 pm #43729

Figured it out!! Needed include a download key=”true” for videos I’m serving to non logged in users.. I do have one other problem.. When using RTMP, I’m getting really bad playback stutter which doesn’t exist in any of my old configs on version 5 player.. Thoughts?

Posted: Monday Mar 4th, 2013 at 7:19 pm #43728

You can use HLS streaming. This would give you a .m3u8 manifest file which can only be played at with third party players on domains you give access to via crossdomain.xml.. s2member does not apply in protecting the url outside of protecting the access to the page or post the stream is on. So basically from what I understand, the way EC2 and Cloudformation work together allows you to either stream .f4m files or .m3u8 files. .f4m files are not supported on jwplayer 6 and so only way you can use jwplayer is to do a .m3u8 file which is an HLS streaming file for ios devices.. Also, jwplayer does not support this on Androids yet because bugs with that device.

Posted: Thursday Jan 24th, 2013 at 11:41 am #39418

Thanks for your patience Jason, let me try to clarify if you refer to these links you’ll find all the information regarding Live Streaming using Adobe Flash Media Server, additionally you’ll find information regarding HTTP Live Streaming also known as HLS Streaming which is the protocol to Live Stream to Apple devices … And when I say Live Stream, I mean streaming a live event in real time …

http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/LiveStreamingAdobeFMS4.5.html

The tutorial above explains how to create a cloud formation stack for Live Streaming. The following link is where the urls are generated to embed in a player ect ..

http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/LiveStreamingAdobeFMS4.5.html

By default, amazon gives you an embed code with their native player for flash that you can use on your site and also gives you a url for HLS for streaming to Apple devices using the m3u8 file format for implementation. By editing a cross domain file on the cloudformation stack that was created for the live stream, I can enable use of a third party player at my domain, such as JWPlayer ..

So I end up with 2 urls for my Live Stream Event … Flash and HLS .

My primary choice for end user is to use the url for HLS stream, and this is why ..

The premium edition which is a paid upgrade from the free edition of JW Player v6 supports playback of an m3u8 file ( HLS ) in a forced Flash mode which will allow desktops browsers to view the stream in all major browsers and the player will also auto detect if the device only supports HTML and will serve up the stream on the Apple devices using the Apple implemented m3u8 file format which is already designed to work on Apple devices as part of the Native and IOS platforms .. As described here:

http://www.longtailvideo.com/support/jw-player/28856/using-apple-hls-streaming

The player can also playback rss feeds with HLS urls in them as described here:

http://www.longtailvideo.com/support/jw-player/28843/loading-rss-feeds

I’m realizing while writing all of this that it seems editing the cross domain on the Cloud formation stack which would allow playback of third party players hosted at my domain will provide some security, since no one could use their own player for the content, but not sure how to protect the actual urls in the player, since someone could possibly re-construct a native embed code from the amazon examples.

I hope I was able to clarify better .. At the end of the day, securing a Live Streaming Event is what I’d like to do and wonder if there’s any insight from s2member about this.

And to go back to the beginning of this thread, protecting a properly formatted rss feed for jwplayer containing an HLS url was a natural thought that popped into my head as a possibility since we are protecting xml files already for our iTunes podcast .. But maybe there might be other options ..

Posted: Thursday Jan 24th, 2013 at 4:19 am #39315

Hi Jason, thanks for the reply!! I did find your post earlier about the [s2Stream \] shortcode. What I’m trying to achieve is to prevent hot linking of a LIVE streaming urls “leeching” when the stream is occurring. When serving a HLS live stream from cloudfront, the streaming url is not protected. I don’t believe the concept of signing urls applies to this case.

I’m trying to find a way to protect a live streaming url on my site. I know that Premium Edition of the v6 Player (which we have purchased ) supports playing an HLS stream in a forced flash mode which can used on desktops and will also detect for iphone, ipads ect and play on those devices. So I guess my question is, can [s2Stream \] be configured to use the premium edition of the player and also protect a live stream?

I’ve read on the longtail site that v6 of the player can load an rss feed with mrss extension and that may contain a .m3u8 url for HLS. My logic is to protect a rss feed on my s3 bucket which would contain my m3u8 stream .. I’m not sure if this is an answer, but it doesn’t seem that obvious how to protect a live stream with s2member.

Posted: Tuesday Jan 22nd, 2013 at 9:53 pm #39107

I’m finding information regarding using a media extension rss feed that could work with jwplayer v6 that may contain a live stream.. is it possible to load an rss feed using the [s2stream] shortcode? This could potentially be a way to protect live streams using rss feed playlists..

Posted: Sunday Dec 2nd, 2012 at 8:03 pm #33251

Thanks Bruce, I noticed that you left out the closing php tag, but event tho, I tried using the above

Fatal error: Call to undefined function s2member_pro_login_widget() in /home/groovet1/domains/groovetemple.tv/public_html/wp-content/mu-plugins/s2hacks.php on line 4

Not sure what is wrong with you have …

Posted: Tuesday Nov 27th, 2012 at 3:54 pm #32742

Useful thread, thanks Raam.. I was wondering are there options to set a capability to expire after a certain time with the method described in the above thread or any method provided by s2member?

Posted: Wednesday Nov 21st, 2012 at 8:00 pm #32290

That makes sense, however, what I’m trying to achieve is a bit more complex. Basically, I need to expose a link based on the time and date that has someone has paid for .. My event system would have to notify s2member that user “X” has purchased this access on Month “Y” on Day “Z” at time “B” and the access is available for certain interval. The access will happen anytime of the day some time after they purchased the actual access. IE: I paid today and I don’t access until 2 weeks from now and that access expires after a certain time interval that is set .. Make sense? I could wrap what you have above, but that would mean I would need conditionals for every single time and day forever.. That’s not practical. I’m wondering how this can happen on the fly ..

Posted: Friday Nov 16th, 2012 at 3:08 pm #31810

hmm.. well i’m not sure if this would work, although it does shed some insight.. we would need to allow “content” being displayed every day every time depending if a user had met the payment conditions. meaning, i just bought a live class for tomorrow at 12pm. i will would need to be able to tell s2 let this user access this link on this date and time for 1 hour .. we would have a calendar of classess every day, so it wouldn’t make sense for us to input all that conditional data per the example above. i wonder if there’s a way to do this.. it seems to be instead of using that time of conditional, there might be a way to use s2 api to restrict access via adding conditionals on the user account when they’ve made payment through our ticketing software where by adding the conditionals on the fly per user account. I wonder if any of the s2member support team might be bale to chime in.. @Jason ?

Posted: Friday Nov 16th, 2012 at 2:03 pm #31793

It would be based on calendar date. Would love to see the code. Also, would this entail configuring s2 for each possible time that link is available?

Posted: Sunday Nov 11th, 2012 at 12:04 am #31241

Hey Chris, it doesn’t direct them to options page, just to http://www.groovetemple.tv/register .. it’s really strange. When navigating to http://www.groovetemple.tv users sometimes get redirected to the actual registration page.

Posted: Sunday Sep 16th, 2012 at 11:23 am #25490

Thanks Raam for the clarification. @Philly, I have a question for you. Does your short code include the key parameters such as download_key=”universal or ip-forever” ?

Posted: Thursday Sep 13th, 2012 at 10:36 am #25178

That’s great to know.. Although we have already migrated to this plug and is working great. Really happy about this! Great job @Philly !

Posted: Wednesday Sep 12th, 2012 at 11:16 am #25022

Maybe @Jason can help clarify this .. Jason, it seems that this link

http://www.groovetemple.tv/?s2member_file_download=example-file.zip&s2member_file_download_key=universal

Should generate a universal download key no matter of user being logged in. Is this correct? And if so, why do I receive this response

503 ( Invalid Key ): Sorry, your access to this file has expired. Please contact Support for assistance.

My understanding of how this works is I can put this url into a web browser and get access to the file with a universal download key.. Is this right?

-Luis

Posted: Monday Sep 10th, 2012 at 10:23 pm #24823

@Cristian , was wondering if you could clarify on the above question concerning the link I posted above. Shouldn’t that link generate a key without being logged in?

Posted: Monday Sep 10th, 2012 at 9:25 pm #24819

Hmm.. that would be interesting to try, although the missing parameter is calling up your jwplayer. In order for jwplayer to be embeddable into sites such as Facebook the url string needs to looks like:

http://www.yoursite.com/jwplayer/jwplayer.swf? 

then you can pass variables to player attributes and files after the ?

I found this cool plug Facebook AWD that allows you to attach all the Open Graph Variables into posts and pages allowing your page or posts to be properly read by Facebook.. When adding the video tags into the open graph and inputing the above url string into it’s custom field Facebook will call up your player with all the attributes that you pass including skin ect and play your video. The challenge is to get urls that are somewhat secure.

We’ve reached the point where we can have our player embeddable into facebook and loads public cloudfront urls fine (we’ve yet to actually launch this site wide on our site), but I’m trying to figure out a way to give access to videos we share creating expired download keys on the fly so the files are not completely public. I’m getting to the point where I’m not sure if this is possible. The main motivation is to prevent leeching of our shared content. The above example that Christian has provided seems to be my only alternative which only really helps me not having to have 2 copies of my files and not having to make my files public. I would be awesome if I could serve out expiring urls with this situation. I’ve looked at all the AWS docs and have been talking to them and there’s no real answer from their side of things. It would be cool if s2 could sign urls for content that is being accessed from a “remote referring site” … Anyways, not sure what really to do at this point.

  • This reply was modified 4 years, 3 months ago by  luisrosario.
Posted: Monday Sep 10th, 2012 at 8:37 pm #24804

OK, I understand now.. Was overlooking ‘s2member_file_download_key’

I do have another question..

Shouldn’t this link result in a file download with a key issued if I typed this into a web browser? It seems to me that this should work. But I get

503 ( Invalid Key ): Sorry, your access to this file has expired. Please contact Support for assistance.

Am I mis understanding how this link below works?

http://www.groovetemple.tv/?s2member_file_download=example-file.zip&s2member_file_download_key=universal
  • This reply was modified 4 years, 3 months ago by  luisrosario.
  • This reply was modified 4 years, 3 months ago by  luisrosario.
Posted: Thursday Aug 30th, 2012 at 1:22 pm #23603

It may sound silly at this point, but when you say

If the download key is there

what are you referring to? Do I need to place a key in this code? And if so, where do I generate that?

Based on what we have here so far, testing results in to this message from the browser

503 ( Invalid Key ): Sorry, your access to this file has expired. Please contact Support for assistance.

I could putting the url string together incorrectly, this is what it looks like:

http://www.groovetemple.tv/?s2member_file_download=access-public/inside/ia-ep2-donna_de_lory.mp4&s2member_file_download_key=[s2Key file_download="access-public/inside/ia-ep2-donna_de_lory.mp4" /]
  • This reply was modified 4 years, 4 months ago by  luisrosario.
  • This reply was modified 4 years, 4 months ago by  luisrosario.
Posted: Wednesday Aug 29th, 2012 at 10:14 pm #23508

Hey Crisitian, thanks for your help so far… I’m assuming there should php tags in this code. And so I’m clear on this … s2member will look at this file when I use s2 download key api in a url as described in Dashboard -› s2Member® -› Download Options -› Advanced Download Restrictions which then will allow access to a file in my bucket that can be accessed away from my website such as Facebook ? Also, if I had multiple files, how would add them in here? I will test this code and let you know how it works. Are you missing a “(” before ” ‘your file.zip’) ” ? Lastly, does it need to contain the relative file path ? Or just file name?

  • This reply was modified 4 years, 4 months ago by  luisrosario.
  • This reply was modified 4 years, 4 months ago by  luisrosario.
Posted: Monday Aug 27th, 2012 at 10:22 pm #23231

Hmm. I kinda get the concept and looking into the documentation to find what are you talking about. I’m a bit confused on how to construct the code, plus not sure I understand how it works. Does this php file contain actual file names that I’m giving access to? How would the url look like that I would use for this special access?

Posted: Friday Aug 24th, 2012 at 11:06 pm #23019

Hey Cristian, how would something like that look like? So would this be a s2 url on the front end that would generate the key?

Posted: Tuesday Aug 21st, 2012 at 12:38 pm #22665

Is there a way for me to do a remote http header authorization to generate a download key and pass that into the url of the video file? Wouldn’t that make my video viewable to the public? Therefore open up the door to allow the video to be shared? Which would mean I would need to edit the cross domain in my bucket to allow sites of my choosing to access the file?

Posted: Friday Aug 17th, 2012 at 12:33 pm #22367

@Philly so got things working finally after visiting your site. I have a question about implementing skins. How do you do it? I’ve tried editing your plugin file but not sure if that’s the right way to do it. Currently I think I have done it correctly, but not fully sure since my control bar on the new skin doesn’t hide once I hit play. I was also hoping that you might consider putting in support of allowing a logo to be placed in the player similar to the jwplayer logo (like in the default player) and allowing us to have the option to display it indefinitely or some time interval.

And your thoughts on a view counter? Any suggestions on how to get one implemented? Thanks for your time.

Viewing 25 replies - 1 through 25 (of 48 total)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

Contacting s2Member: Please use our Support Center for bug reports, pre-sale questions & technical assistance.