<?xml version="1.0" encoding="utf-8"?>

			<rss version="2.0" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cc="http://web.resource.org/cc/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd">

			<channel>
			<title>TheRealTimeWeb.com</title>
			<link>http://www.therealtimeweb.com/index.cfm</link>
			<description>A technology blog with a special focus on real-time web technologies, web video and the Flash Platform.</description>
			<language>en-us</language>
			<pubDate>Tue, 21 May 2013 03:50:02 +0100</pubDate>
			<lastBuildDate>Mon, 20 May 2013 08:35:00 +0100</lastBuildDate>
			<generator>BlogCFC</generator>
			<docs>http://blogs.law.harvard.edu/tech/rss</docs>
			<managingEditor>stefan@therealtimeweb.com</managingEditor>
			<webMaster>stefan@therealtimeweb.com</webMaster>
			<itunes:subtitle></itunes:subtitle>
			<itunes:summary></itunes:summary>
			<itunes:category text="Technology" />
			<itunes:category text="Technology">
				<itunes:category text="Podcasting" />
			</itunes:category>
			<itunes:category text="Technology">
				<itunes:category text="Tech News" />
			</itunes:category>
			<itunes:keywords></itunes:keywords>
			<itunes:author></itunes:author>
			<itunes:owner>
				<itunes:email>stefan@therealtimeweb.com</itunes:email>
				<itunes:name></itunes:name>
			</itunes:owner>
			
			<itunes:explicit>no</itunes:explicit>
			
			<item>
				<title>AMS User Group Meetup: 24-7 Live File to Live Playout Using AMS</title>
				<link>http://www.therealtimeweb.com/index.cfm/2013/5/20/ams-live-playout-meetup</link>
				<description>
				
				What: &quot;24-7 Live File to Live Playout Using AMS&quot; with Kevin Johns and David Hassoun
&lt;br&gt;
When: Tuesday, May 21st &lt;br&gt;
Time: 10:00 a.m. - 11:00 a.m. MDT&lt;br&gt;
RSVP: &lt;a href=&quot;http://ams.groups.adobe.com/index.cfm?event=post.display&amp;postid=46243&quot; target=&quot;_blank&quot;&gt;http://ams.groups.adobe.com/index.cfm?event=post.display&amp;postid=46243&lt;/a&gt;&lt;br&gt;
&lt;br&gt;
Summary:&lt;br&gt;This will be a co-presentation between Kevin Johns from Level 3 and David
Hassoun from RealEyes. Join us for this online session hosted by the Adobe Media Server User Group to learn how Level 3 is utilizing Adobe Media Server for 24-7 live linear broadcasting from VOD assets.&lt;br&gt;
Level 3 has been working to create cost-effective, file to Live playout solutions for adaptive bit rate HTTP delivery. Level 3 will share their experiences in building an end to end IP playout solution based on the Adobe Media Server platform.
&lt;br&gt;
Then, meeting attendees will get a look under the hood with the basics for Server Side ActionScript (SSAS) and Adobe Media Server 5.0 as we walkthrough the key  concepts from a server side application development perspective. You will have the opportunity to ask questions and learn from the best in the business, this meeting is not to be missed!&lt;p&gt;
&lt;a href=&quot;http://ams.groups.adobe.com/index.cfm?event=post.display&amp;postid=46243&quot; target=&quot;_blank&quot;&gt;RSP now!&lt;/a&gt;
				</description>
				
				<category>Events</category>
				
				<pubDate>Mon, 20 May 2013 08:35:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2013/5/20/ams-live-playout-meetup</guid>
				
				
			</item>
			
			<item>
				<title>How to Activate an Inactive Goal in Google Analytics</title>
				<link>http://www.therealtimeweb.com/index.cfm/2013/5/8/activate-goal-google-analytics</link>
				<description>
				
				If you are serious about gathering data about your website then it&apos;s likely that you will be using Google Analytics to do so. And if you are selling products or services from your site then tracking Goals and Goal conversions will be nothing new to you.&lt;br&gt;
I&apos;ve recently set up a new goal that I then forgot to activate, and it took me the best part of 10 minutes to figure out how to edit an existing goal in Google Analytics and to switch it from inactive to active.&lt;p&gt;
Since I know that I will be Googling for this exact same issue again in about 2 years time once I forgotten all about it I am now documenting it here (note to future self: see, I knew you&apos;d be coming along again).&lt;p&gt;1. Log into your Google Analytics account and navigate to the website profile for which you want to edit an existing goal.
&lt;p&gt;
2. Click on &apos;Admin&apos; at the top right&lt;br&gt;
&lt;img src=&quot;http://www.therealtimeweb.com/images/analytics1.jpg&quot; id=&quot;blogimg&quot; /&gt;
&lt;p&gt;
3. Click on your website property label&lt;br&gt;
&lt;img src=&quot;http://www.therealtimeweb.com/images/analytics2.jpg&quot; id=&quot;blogimg&quot; /&gt;
&lt;p&gt;
4. Click on the Goals tab&lt;br&gt;
&lt;img src=&quot;http://www.therealtimeweb.com/images/analytics3.jpg&quot; id=&quot;blogimg&quot; /&gt;
&lt;p&gt;
5. Use the toggle switch to enable the goal&lt;br&gt;
&lt;img src=&quot;http://www.therealtimeweb.com/images/analytics4.jpg&quot; id=&quot;blogimg&quot; /&gt;
&lt;p&gt;
Hope this helps someone (I know it&apos;ll help me one day...).
				</description>
				
				<category>Google</category>
				
				<pubDate>Wed, 08 May 2013 06:37:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2013/5/8/activate-goal-google-analytics</guid>
				
				
			</item>
			
			<item>
				<title>Book Tip: Producing Streaming Video for Multiple Screen Delivery</title>
				<link>http://www.therealtimeweb.com/index.cfm/2013/4/11/Producing-Streaming-Video-for-Multiple-Screen-Delivery</link>
				<description>
				
				On April 2, 2013, the Streaming Learning Center and my friend Jan Ozer released &lt;a href=&quot;http://www.amazon.com/gp/product/0976259540/ref=as_li_tf_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0976259540&amp;linkCode=as2&amp;tag=realtimeweb-20&quot; target=&quot;_blank&quot;&gt;Producing Streaming Video for Multiple Screen Delivery&lt;/a&gt;. This book is a professional reference for producers seeking to distribute streaming video to the widest possible audience, including computers, smartphones and tablets, and Over the Top (OTT) devices. Written by Jan Ozer, this book delivers the lessons learned from years of producing and consulting on streaming, and serving as a contributing editor to the industry bible, Streaming Media Magazine.
&lt;p&gt;
This book is the successor to Jan&apos;s highly regarded Video Compression for Flash, Apple Devices and HTML5, which has earned a five-star rating on Amazon and is used as a textbook by many colleges and universities. Published over two years after Video Compression, however, Producing Streaming Video for Multiple Screen Delivery is almost a complete rewrite, and contains links to the dozens of product reviews and video tutorials published and produced by Jan over the last 24 months. At 432 pages, &lt;a href=&quot;http://www.amazon.com/gp/product/0976259540/ref=as_li_tf_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0976259540&amp;linkCode=as2&amp;tag=realtimeweb-20&quot; target=&quot;_blank&quot;&gt;the new book&lt;/a&gt; contains more than 65% more content than the original book.
&lt;p&gt;
Read on for a full chapter summary.&lt;p&gt;Chapter By Chapter Description
&lt;p&gt;
Chapter 1: Formulating a Multi-Screen Strategy. After providing a streaming technology backgrounder, this chapter identifies the technologies that can be used to distribute to desktops, mobile and OTT devices. 
&lt;p&gt;
Chapter 2: Technology Fundamentals. There&apos;s a good chance you know most of the concepts covered here, which include file details like resolution, frame rate and data rate. You&apos;ll also learn how aspect ratio and deinterlacing issues can degrade the quality of your video. If you&apos;re a relative newbie, you should at least scan through this chapter.
&lt;p&gt;
Chapter 3: H.264 Encoding Parameters. In this chapter, you&apos;ll learn all about encoding video with the H.264 video codec and audio with the AAC audio codec. The chapter starts with an overview of common H.264 encoding parameters like profiles and levels--as well as I-, B- and P-frames--and then moves into more advanced parameters controlling search depth and precision. Then it details your audio encoding options and specifics for encoding for delivery via Flash and HTML5.
&lt;p&gt;
Chapter 4: Configuring H.264 for Desktop, Mobile and OTT Viewers. Now that you know how to encode with H.264, we examine how to configure single files for delivery to desktop, mobile and OTT platforms.
&lt;p&gt;
Chapter 5: Adaptive Streaming. In this chapter, you&apos;ll learn more about the technology alternative s for adaptive streaming, factors to consider when choosing the number of streams and their configuration, and how to encode for adaptive streaming.
&lt;p&gt;
Chapter 6: Choosing an On-Demand Encoding Tool. Here we look at the various categories of on-demand encoder, including free tools, bundled tools, desktop tools and enterprise tools. You&apos;ll learn how to choose the best category for your needs and the best encoder within each category.
&lt;p&gt;
Chapter 7: Encoder-Specific Instruction. Here we&apos;ll look at the H.264 encoding interfaces from a variety of desktop, enterprise, hardware, OVP and cloud encoders so you can apply the lessons learned in previous chapters in the encoding tool of your choice.
&lt;p&gt;
Chapter 8: Producing for iTunes. This chapter focuses on the best practices for encoding files for distribution via iTunes.
&lt;p&gt;
Chapter 9: Distributing Your Video. Here we detail distribution alternatives like UGC and OVP sites, and discusses how to choose the best service provider for your videos. The final section covers encoding for uploading to an OVP or UGC site.
&lt;p&gt;
Chapter 10: Introduction to Live Streaming. Live streaming is a completely different animal than on-demand. This chapter introduces you to live streaming, covering how it works and technology alternatives like OVP and LSSP service providers.
&lt;p&gt;
Chapter 11: Distributing Your Live Video. Live streaming involves its own distribution options, whether you choose to do it yourself (DIY) or use a Live Streaming Service Provider (LSSP). This chapter discusses factors to consider when choosing a streaming server and an LSSP services.
&lt;p&gt;
Chapter 12: Choosing and Using a Live Encoder. This chapter discusses how to choose the best encoder for your live productions, including software, hardware, cloud and on-camera alternatives.
&lt;p&gt;
Chapter 13: Producing Live Events. Now that you know the technology components, this chapter details how to produce a live event, covering pre-production and game-day production tips and techniques.
&lt;p&gt;
Chapter 14: Introduction to Closed Captions. This chapter introduces you to closed captioning, including which organizations need to do it and how.
&lt;p&gt;
Chapter 15: Essential Tools. Streaming involves a range of file formats and encoding parameters. The tools discussed in this chapter analyze the files that you and others have encoded to identify these formats and parameters.
&lt;p&gt;
Chapter 16: Introduction to HEVC. You probably already started hearing about H.265; in this chapter, you&apos;ll learn what it is, how it works and how soon you should start thinking about using it.
&lt;p&gt;
I recommend you check out &lt;a href=&quot;http://www.amazon.com/gp/product/0976259540/ref=as_li_tf_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0976259540&amp;linkCode=as2&amp;tag=realtimeweb-20&quot; target=&quot;_blank&quot;&gt;Jan&apos;s book&lt;/a&gt; if you are even remotely interested in video encoding best practices.
				</description>
				
				<category>Books &amp; Training</category>
				
				<pubDate>Thu, 11 Apr 2013 06:50:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2013/4/11/Producing-Streaming-Video-for-Multiple-Screen-Delivery</guid>
				
				
			</item>
			
			<item>
				<title>Loading JSON From Rails with jQuery, Avoiding 406 Error</title>
				<link>http://www.therealtimeweb.com/index.cfm/2013/3/15/rails-jquery-406</link>
				<description>
				
				First of all I should point out that I&apos;m quite new to Rails (and jQuery) and the interactions between it and JQuery, which may be the reason that some of you may consider this a rather basic hint.&lt;br&gt;
However whilst working on &lt;a href=&quot;http://www.membermeister.com&quot; target=&quot;_blank&quot;&gt;membermeister.com&lt;/a&gt; I&apos;ve recently had some trouble loading JSON data from our Rails backend. It seemed like a very trivial task at first, all we needed was a GET request that was answered by a format.json response from the Rails controller.&lt;p&gt;
Simplified the request looked something like this:
&lt;p&gt;
&lt;code&gt;
$.ajax({
	url: &quot;/invoices/&quot; + invoiceid + &quot;/pay&quot;,
	type: &quot;GET&quot;
})
&lt;/code&gt;
&lt;p&gt;
However Rails was returning a &apos;406 Not Acceptable&apos; error, suggesting the request I was sending was not something it was instructed to handle.In my noobness I tried passing
&lt;p&gt;
&lt;code&gt;
dataType: &quot;json&quot;,
&lt;/code&gt;
&lt;p&gt;
I also tried 
&lt;code&gt;
contentType: &quot;json&quot;
&lt;/code&gt;
&lt;p&gt;
but always got this error:
&lt;img src=&quot;http://www.therealtimeweb.com/images/membermeister005.jpg&quot; /&gt;
&lt;p&gt;
In the end the fix was quite simple but had evaded me for a while: 
&lt;code&gt;
beforeSend: setHeader&lt;/code&gt;
&lt;p&gt;
followed by 
&lt;p&gt;&lt;code&gt;
function setHeader(xhr) {
	xhr.setRequestHeader(&quot;Accept&quot;, &quot;application/json&quot;);
}
&lt;/code&gt;
&lt;p&gt;
The complete function looked (simplified) like this:
&lt;p&gt;
&lt;code&gt;
$.ajax({
	url: &quot;/invoices/&quot; + invoiceid + &quot;/pay&quot;,
	type: &quot;GET&quot;,
	beforeSend: setHeader
}).done(function() {
...			
});

function setHeader(xhr) {
	xhr.setRequestHeader(&quot;Accept&quot;, &quot;application/json&quot;);
}
&lt;/code&gt;
&lt;p&gt;
Once implemented the GET request succeeded (notice the Accept Request Header).
&lt;img src=&quot;http://www.therealtimeweb.com/images/membermeister004.jpg&quot; /&gt;
&lt;p&gt;
Hopefully this saves someone some grief. Loading JSON from Rails seems well documented, and so ar 406 errors, but I had trouble finding the fix in this case because I wasn&apos;t 100% sure the issue was on the jQuery side...
				</description>
				
				<category>Rails</category>
				
				<category>JavaScript</category>
				
				<pubDate>Fri, 15 Mar 2013 06:36:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2013/3/15/rails-jquery-406</guid>
				
				
			</item>
			
			<item>
				<title>Introducing membermeister.com - Super Simple Member Management</title>
				<link>http://www.therealtimeweb.com/index.cfm/2013/1/30/introducing-membermeister</link>
				<description>
				
				&lt;a href=&quot;http://www.membermeister.com&quot; target=&quot;_blank&quot; title=&quot;membermeister - super simple member management&quot;&gt;&lt;img src=&quot;http://www.therealtimeweb.com/images/membermeister_logo.png&quot; align=&quot;left&quot; id=&quot;blogimg&quot; border=&quot;0&quot; alt=&quot;membermeister - super simple member management&quot;&gt;&lt;/a&gt;Apologies for the recent lack of posts, but I have a great excuse which is also the topic of this latest update: I&apos;ve been very busy trying to get my latest product &lt;a href=&quot;http://www.membermeister.com&quot; target=&quot;_blank&quot;&gt;membermeister&lt;/a&gt; (my latest project) up to MVP stage. Membermeister is an &lt;a href=&quot;http://www.membermeister.com&quot; target=&quot;_blank&quot;&gt;online membership management service&lt;/a&gt; targeted at small business owners that have to deal with a large numbers of members - for example sports coaches, childcare providers, dance teachers, personal trainers and so on. It allows them to keep all their member information in one place, create groups, schedule sessions and classes and most importantly produce invoice and track payments amongst other things.&lt;p&gt;
Together with my friend Paul Bou-Samra we have been busy building this Rails based application for the last few months and we&apos;re now at a stage where we have something at hand that resembles a usable product.&lt;br&gt;
We&apos;ve learned a lot along the way, but the journey has only just begun and my intention is to write more about our experiences and ongoing learning in future blog posts.&lt;p&gt;
Paul has taught himself Ruby on Rails in record time whilst I have tried to get to grips with the front-end development (not sure what I would have done without &lt;a href=&quot;http://twitter.github.com/bootstrap/&quot; target=&quot;_blank&quot;&gt;twitter&apos;s bootstrap&lt;/a&gt;) and &lt;a href=&quot;http://www.heroku.com/&quot; target=&quot;_blank&quot;&gt;heroku/&lt;/a&gt; deployment. I&apos;ve also got a good handle on the Rails asset pipeline now... don&apos;t ask. Heck, I&apos;ve even dabbled in Photoshop and Fireworks to create graphics and designs - in a nutshell we are bootstrapping this baby 100%.&lt;p&gt;Those subjects are just some of many I could write about, and that&apos;s only the technology side of things. I have read somewhere that a successful product is one third code, and also needs one third execution and one third marketing. This certainly rings true for us, and we made sure to talk to potential customers BEFORE we embarked on building the application. Was it enough? Only time will tell. &lt;br&gt;
But one thing&apos;s for sure, working on your own products is the most fun you can have as a developer (at least in my opinion), and if you manage to sign up paying customers then you&apos;re onto a winner and won&apos;t be likely to return to whatever you&apos;ve been doing previously. It&apos;s addictive. &lt;p&gt;
Right now &lt;a href=&quot;http://www.membermeister.com&quot; target=&quot;_blank&quot;&gt;membermeister&lt;/a&gt; will focus on UK based customers (in true MVP style you can&apos;t actually pay us yet!) with a view to expand in the longer term. Our backlog of to-do items is ever growing and for every item we tick off there seem to be two new ones springing up. It&apos;s true but if you&apos;re building a product you&apos;ll never be finished. We&apos;re ready to embrace the process. More to come.&lt;p&gt;Oh and if you know of anyone (maybe your tennis coach, your son&apos;s karate trainer or daughter&apos;s dance teacher) who seems to struggle with producing invoices, tracking payments or attendance then we&apos;d love to talk to them. A tell tale sign of a potential membermeister customer is if the invoice you receive from them consists a of small piece of paper which your child fails to hand to you in time :-)
				</description>
				
				<category>Startup</category>
				
				<category>General</category>
				
				<pubDate>Wed, 30 Jan 2013 08:38:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2013/1/30/introducing-membermeister</guid>
				
				
			</item>
			
			<item>
				<title>Ruby on Rails - Devise users/sign_out stops working</title>
				<link>http://www.therealtimeweb.com/index.cfm/2012/11/27/ror-devise-routing-error</link>
				<description>
				
				I&apos;m currently working on a Ruby on Rails (RoR) app together with a friend of mine - I&apos;m mainly handling the front end and hosting/config side of things whilst he is writing tons of Ruby code. I should add that we&apos;re using &lt;a href=&quot;http://twitter.github.com/bootstrap/&quot; target=&quot;_blank&quot;&gt;Twitter&apos;s bootstrap&lt;/a&gt; as a basis to style the application.&lt;p&gt;
I would like to draw your attention to an issue that had me stumped for half a day today (and a few hours yesterday) and it manifested itself in the following error upon clicking a sign out link (we&apos;re using Devise for user auth):&lt;p&gt;
&lt;code&gt;
No route matches [GET] &quot;/users/sign_out&quot;
&lt;/code&gt;
&lt;p&gt;
The obvious place to check was the routes, and indeed there was no GET route that matched. What should happen is that a DELETE request is fired once the user clicks the sign out link, which in turn is achieved by Rails&apos; JavaScript code modifying the request behind the scenes to make it RESTful (DELETE instead of GET).&lt;br&gt;
This topic of GET versus DELETE requests related to Devise sign outs is widely covered in posts such as &lt;a href=&quot;http://stackoverflow.com/questions/6965876/ruby-on-rails-devise-users-sign-out-not-working?rq=1&quot; target=&quot;_blank&quot;&gt;this one&lt;/a&gt; or &lt;a href=&quot;http://stackoverflow.com/questions/7465919/rails-link-to-method-geting-when-it-should-delete&quot; target=&quot;_blank&quot;&gt;this one&lt;/a&gt;.&lt;p&gt;
However this was not the issue we were seeing - it just looked very similar. It turned out that our version of Bootstrap which was a couple of months hold has a bug that stopped links inside nav dropdowns (if you use Bootstrap you know what I mean) with data-method attributes from working properly. 
&lt;p&gt;
Once I realised that Rails&apos; JS code inside jquery_ujs was no longer running when I clicked the link *inside* a nav dropdown but worked outside it I immediately googled for bootstrap related issues and found this &lt;a href=&quot;https://github.com/seyhunak/twitter-bootstrap-rails/issues/343&quot; target=&quot;_blank&quot;&gt;bug report&lt;/a&gt; which is also related to &lt;a href=&quot;https://github.com/twitter/bootstrap/issues/4688&quot; target=&quot;_blank&quot;&gt;this issue&lt;/a&gt;.&lt;p&gt;
In short, upgrading bootstrap to version 2.2.1 fixed the issue for us and links would now be processed properly, sending a DELETE request when needed. &lt;p&gt;
Hopefully this helps someone and saves them a few hours of grief - it was not the easiest bug to track down and fix.
				</description>
				
				<category>Rails</category>
				
				<pubDate>Tue, 27 Nov 2012 09:46:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2012/11/27/ror-devise-routing-error</guid>
				
				
			</item>
			
			<item>
				<title>Combine Multiple .vcf Files Into One - Google Contacts</title>
				<link>http://www.therealtimeweb.com/index.cfm/2012/10/25/combine-vcf</link>
				<description>
				
				&lt;img src=&quot;http://www.therealtimeweb.com/images/gcontacts.jpg&quot; align=&quot;left&quot; id=&quot;blogimg&quot;/&gt;
Today I needed to move some contacts (about 100 or so) from my wife&apos;s phone into a new Google account I set up for her. Unfortunately the upload page on Google&apos;s site only allowed individual uploads and it would have taken hours to upload all contacts one by one.&lt;p&gt;
If you are, like me, on OSX (or Linux) you can quite easily combine a folder full of .vcf contacts into one by using this command (navigate into the folder which holds the .vcf files first):
&lt;p&gt;
&lt;code&gt;
cat *.vcf &gt; combined.vcf
&lt;/code&gt;
&lt;p&gt;
I&apos;m sure you can do something similar on the Windows command line too. In fact &lt;a href=&quot;http://lmgtfy.com/?q=combine+.vcf+files+windows&quot; target=&quot;_blank&quot;&gt;I&apos;ve Googled it for you&lt;/a&gt;. :-)
&lt;p&gt;
Enjoy.
				</description>
				
				<category>Google</category>
				
				<category>General</category>
				
				<pubDate>Thu, 25 Oct 2012 09:00:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2012/10/25/combine-vcf</guid>
				
				
			</item>
			
			<item>
				<title>IIS 7: Allow One IP Address, Block All Others</title>
				<link>http://www.therealtimeweb.com/index.cfm/2012/10/18/iis7-restrict-by-ip</link>
				<description>
				
				Today I found myself having to configure IIS under Windows Server 2008 and I needed to restrict access to a specific directory by IP address. It was quite tricky to figure out how to do this due to Microsoft&apos;s idiotic way of presenting what could easily be a straight forward user interface operation...&lt;p&gt;
What follows are the steps involved to block all IPs in IIS, and granting access to one specific IP. As fa as I can tell this will work both on a site and a directory level (in my case it was a virtual directory that needed restricting).
&lt;p&gt;&lt;p&gt;&lt;/p&gt;&lt;b&gt;Step 1:&lt;/b&gt; Click the &apos;Add Allow entry&apos; option&lt;br&gt;
&lt;img src=&quot;http://www.therealtimeweb.com/images/iis1.jpg&quot; /&gt;
&lt;p&gt;&lt;/p&gt;
&lt;b&gt;Step 2:&lt;/b&gt; Add the IP address you wish to allow access&lt;br&gt;
&lt;img src=&quot;http://www.therealtimeweb.com/images/iis2.jpg&quot; /&gt;
&lt;p&gt;&lt;/p&gt;
&lt;b&gt;Step 3:&lt;/b&gt; Select the IP entry in the list (there&apos;s only one in this case) and then click the &apos;Edit Feature Settings&apos; option&lt;br&gt;
&lt;img src=&quot;http://www.therealtimeweb.com/images/iis3.jpg&quot; /&gt;
&lt;p&gt;&lt;/p&gt;
&lt;b&gt;Step 4:&lt;/b&gt; Select &apos;Deny&apos; in the dropdown menu - this blocks all IPs that are not listed&lt;br&gt;
&lt;img src=&quot;http://www.therealtimeweb.com/images/iis4.jpg&quot; /&gt;
&lt;p&gt;
Hope this helps someone.&lt;/p&gt;
				</description>
				
				<category>Windows</category>
				
				<pubDate>Thu, 18 Oct 2012 06:05:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2012/10/18/iis7-restrict-by-ip</guid>
				
				
			</item>
			
			<item>
				<title>LiveCycle Collaboration Service Gets a New Lease Of Life</title>
				<link>http://www.therealtimeweb.com/index.cfm/2012/10/17/ics-lccs</link>
				<description>
				
				&lt;img src=&quot;http://www.therealtimeweb.com/images/ics.png&quot; id=&quot;blogimg&quot; align=&quot;left&quot;/&gt;Adobe&apos;s LiveCycle Collaboration Service has been rescued and given a new lease of life by Influxis. Now called the &lt;a href=&quot;http://ics.influxis.com/index.html&quot; target=&quot;_blank&quot;&gt;Influxis Collaboration Service (ICS)&lt;/a&gt; it gives existing LCCS customers the chance to migrate their applications over to ICS. If you recall, Adobe previously announced that they would shut down and discontinue the LCCS service without any obvious ways for existing customers to keep their LCCS based products and services online - ICS is therefore good news for many of those customers.&lt;p&gt;
ICS will be comprised of two different account types, dedicated and shared accounts, with various price points starting at $25/month for a 10connection shared account. An extensive FAQ can be found on the &lt;a href=&quot;http://ics.influxis.com/faq.html&quot; target=&quot;_blank&quot;&gt;Influxis site&lt;/a&gt;.&lt;p&gt;
As you may know, LCCS (or now ICS) enables you to build real-time collaborative applications quickly using a variety of &lt;a href=&quot;http://ics.influxis.com/modules.html&quot; target=&quot;_blank&quot;&gt;pre-built modules&lt;/a&gt; including FileShare, Chat, Whiteboard, Webcam and of course - dare I mention it - screensharing.&lt;p&gt;
Let me know if you&apos;re building any applications with ICS and I&apos;ll link to them here.
				</description>
				
				<category>Collaboration</category>
				
				<category>General</category>
				
				<pubDate>Wed, 17 Oct 2012 07:26:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2012/10/17/ics-lccs</guid>
				
				
			</item>
			
			<item>
				<title>FMS registerClass Example Added To github</title>
				<link>http://www.therealtimeweb.com/index.cfm/2012/9/24/fms-registerclass</link>
				<description>
				
				&lt;img src=&quot;http://www.therealtimeweb.com/images/githubprofile.jpg&quot; id=&quot;blogimg&quot; align=&quot;left&quot;/&gt;Hi folks, apologies about the extended radio silence; I&apos;ve been busy working on a new project which has taken up a lot of my time. The good news is that I am learning a ton of new stuff in the process which in turn should provide me lots to blog about. Expect posts about Rails, heroku, JavaScript, AWS and maybe even Flash ;-)&lt;p&gt;
I&apos;ve also just discovered a treasure trove of old projects and sample files and I&apos;ve decided to offload many of them onto github. It would be a real shame to lose all this stuff, some of which is of course pretty useless whereas others may be useful to some folks. It&apos;ll be tricky to pick the right stuff as no doubt I will not be able to post everything I&apos;ve got floating around...&lt;br&gt;
So to make a start (and with the hope to keep this up) here&apos;s my first little Flash sample project. This one shows how to use registerClass to send custom typed ActionScript objects over RTMP between client and FMS server (sorry, AMS it is now...). I don&apos;t take full credit for it as I cannot remember if this was based on someone else&apos;s work or not... if it was you get in touch and I&apos;ll provide credit and link juice!
&lt;p&gt;
My github account can be found at &lt;a href=&quot;https://github.com/stoem&quot; target=&quot;_blank&quot;&gt;https://github.com/stoem&lt;/a&gt; (not much there yet), and this particular repo is at &lt;a href=&quot;https://github.com/stoem/FMS-registerClass&quot; target=&quot;_blank&quot;&gt;https://github.com/stoem/FMS-registerClass&lt;/a&gt;. &lt;p&gt;
Happy forking you forkers :-)
				</description>
				
				<category>FMS</category>
				
				<category>Flash Player</category>
				
				<pubDate>Mon, 24 Sep 2012 10:15:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2012/9/24/fms-registerclass</guid>
				
				
			</item>
			
			<item>
				<title>HLS Best Practices for AMS 5.0 with Sarge, Tuesday 28th August</title>
				<link>http://www.therealtimeweb.com/index.cfm/2012/8/27/hls-with-ams</link>
				<description>
				
				Adobe Media Server User Group Meeting Tuesday, August 28th
 &lt;p&gt;
RSVP:  &lt;a href=&quot;http://ams.groups.adobe.com/index.cfm?event=post.display&amp;postid=43945&quot; target=&quot;_blank&quot;&gt;http://ams.groups.adobe.com/index.cfm?event=post.display&amp;postid=43945&lt;/a&gt;
&lt;p&gt;
Topic: HLS Best Practices for AMS 5.0&lt;p&gt; 
Speaker: Sarge is a Senior Applications Engineer on Adobe&apos;s Video Solutions team. Formerly a FMS Technical Account Manager working with the top tier CDNs, Sarge has years of experience developing, deploying, and supporting Flash video solutions on FMS.&lt;p&gt; 
Agenda:
Adobe added Apple&apos;s HTTP Live Streaming (HLS) to its technology stack with FMS 4.5 a few years ago as a continued investment delivering immersive on-demand and live video experiences over standard HTTP connections to Apple (iOS &amp; MacOS) devices. This technology has been deployed at CDNs such as Akamai, Limelight, and Level 3, and used by broadcasters like the BBC for the London 2012 Olympics. Adobe updated its HLS workflows in Adobe Media Server 5 -- adding an offline packager, updated Just-in-Time encryption, and DRM support for iOS devices using and new Adobe Access 4 (AXS) technology. Come learn the recommended best practices for deploying HLS with AMS 5.0 from Sarge, Sr. Applications Engineer for Adobe Video Solutions.
&lt;p&gt;
Encode high quality video mezzanine MP4 files and deliver them in real-time simultaneously through RTMP, HDS, and HLS. 
&lt;br&gt;Configure HLS settings to optimize HTTP caching. 
&lt;br&gt;Add DRM to your iOS publishing workflows. 
&lt;br&gt;&lt;br&gt;Sarge walks you through the changes to HLS in AMS 5.0, including:&lt;br&gt; 
Just in Time packaging (JITP) encryption
&lt;br&gt;Offline packaging with the HLS Segmenter
&lt;br&gt;iOS DRM
&lt;p&gt;
&lt;a href=&quot;http://ams.groups.adobe.com/index.cfm?event=post.display&amp;postid=43945&quot; target=&quot;_blank&quot;&gt;http://ams.groups.adobe.com/index.cfm?event=post.display&amp;postid=43945&lt;/a&gt;
				</description>
				
				<category>Events</category>
				
				<category>FMS</category>
				
				<pubDate>Mon, 27 Aug 2012 08:17:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2012/8/27/hls-with-ams</guid>
				
				
			</item>
			
			<item>
				<title>Why You Should Enable Two-Factor Authentication For Google Apps and GMail</title>
				<link>http://www.therealtimeweb.com/index.cfm/2012/8/12/enable-2factor-auth-googleapps</link>
				<description>
				
				&lt;img src=&quot;http://www.therealtimeweb.com/images/authenticator.png&quot; align=&quot;left&quot; id=&quot;blogimg&quot;&gt;If you are running your emails through a Google Apps account and are not using two-factor authentication then &lt;a href=&quot;http://www.wired.com/gadgetlab/2012/08/apple-amazon-mat-honan-hacking/all/&quot; target=&quot;_blank&quot;&gt;now may be a good time to do so&lt;/a&gt;.&lt;p&gt;
Keeping on top of one&apos;s online security can be challenging, but protecting your email account from unauthorised access is crucial since most sites and systems fall back onto email for account password recovery. This means that once a hacker has access to your email account they can use it to gain access to your Twitter account, Facebook, potentially other email accounts and in some cases even cause you to lose your data as the recent case of &lt;a href=&quot;http://www.wired.com/gadgetlab/2012/08/apple-amazon-mat-honan-hacking/all/&quot; target=&quot;_blank&quot;&gt;Matt Honan&lt;/a&gt; dramatically demonstrates.&lt;p&gt;So why exactly is two-factor authentication so much more secure than a normal (even a super-strong) password? The answer is pretty simple: in addition to having to supply a piece of information (&apos;something you know&apos; such as your password), using two-factor-authentication requires you to supplement the password with &apos;something you have&apos; such as a one-time-use token which proves that you are in possession of your phone (in the case of using Google Authenticator or SMS tokens) or your keyfob (in the case of online banking and Paypal for example).&lt;br&gt;With two-factor-authentication turned on, a hacker would require to not only know your password but would also have to be in possession of your phone or keyfob. This raises the bar significantly and would have protected Matt&apos;s GMail account even if the hackers would have managed to reset his password.
&lt;p&gt;
I&apos;ve been using &lt;a href=&quot;http://en.wikipedia.org/wiki/Two-factor_authentication&quot; target=&quot;_blank&quot;&gt;two-factor authentication&lt;/a&gt; for quite some time for various accounts such as my Google Account (I&apos;ve got one for GMail and also a Google Apps account), Paypal (where I had to buy the one-time-use token generating keyfob), Amazon Web Services (again, I had to pay for the keyfob but it&apos;s a price worth paying and I believe you can now also use the free &lt;a href=&quot;http://en.wikipedia.org/wiki/Google_Authenticator&quot; target=&quot;_blank&quot;&gt;Google Authenticator&lt;/a&gt; app) and of course various bank accounts where my bank supplied the token-generating device for free.&lt;p&gt;
So how do you set up two-factor authentication? For GMail it&apos;s &lt;a href=&quot;http://support.google.com/accounts/bin/answer.py?hl=en&amp;answer=180744&quot; target=&quot;_blank&quot;&gt;pretty simple&lt;/a&gt; and Google have even posted a &lt;a href=&quot;http://www.mattcutts.com/blog/google-two-step-authentication/&quot; target=&quot;_blank&quot;&gt;video describing the process&lt;/a&gt;. As you may have seen in the video, some applications - including most mobile email accounts - will require you to set up special application-specific passwords as these applications lack the ability for the user to enter a one-time use token. Granted, this can be a hassle but I recommend you give it a try, once set up these accounts require little maintenance in terms of password management and a compromised application-specific password won&apos;t give anyone access to your actual account.
&lt;p&gt;
For Google Apps the setup process is slightly more challenging as firstly your Google Apps Account Admin needs to enable the option for two-factor authentication on the account level. &lt;br&gt;
To do that log on as Google Apps Account Admin at www.google.com/a/YOURDOMAIN (substituting YOURDOMAIN with your actual domain - doh!) and choose &apos;Advanced tools&apos;. Scroll down a little bit, find the Authentication section and check the &apos;Allow users to turn on 2-step authentication&apos; option.&lt;p&gt;
Once done you (or your domain admin) need to tell the Apps account users to turn on  two-factor authentication under their Google Apps user account. That &lt;a href=&quot;http://support.google.com/accounts/bin/answer.py?hl=en&amp;answer=185839&quot; target=&quot;_blank&quot;&gt;process is described here&lt;/a&gt; and is similar to the setup for two-factor authentication under GMail.
&lt;p&gt;
Hopefully these instructions are useful and have encouraged you to secure your email account.&lt;p&gt;
Please leave a comment if you run into any issues, or have some additional tips to share. If you found this post useful then i&apos;d much appreciate a &lt;a href=&quot;https://twitter.com/intent/tweet?original_referer=http%3A%2F%2Fwww.therealtimeweb.com%2Findex.cfm%2F2012%2F8%2F12%2Fenable-2factor-auth-googleapps&amp;source=tweetbutton&amp;text=Why%20You%20Should%20Enable%20Two-Factor%20Authentication%20For%20Google%20Apps%20and%20GMail&amp;url=http%3A%2F%2Fwww.therealtimeweb.com%2Findex.cfm%2F2012%2F8%2F12%2Fenable-2factor-auth-googleapps&amp;via=stefanrichter&quot; target=&quot;_blank&quot;&gt;tweet about it&lt;/a&gt;. Thanks!
				</description>
				
				<category>Google</category>
				
				<pubDate>Sun, 12 Aug 2012 13:41:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2012/8/12/enable-2factor-auth-googleapps</guid>
				
				
			</item>
			
			<item>
				<title>Microsoft Shares Its Vision For Real Time Communication On The Web</title>
				<link>http://www.therealtimeweb.com/index.cfm/2012/8/6/skype-webrtc</link>
				<description>
				
				Admittedly I may be promising too much with that title: Microsoft isn&apos;t exactly sharing its plans in detail but they certainly are making it clear that their vision differs slightly from that of Google and other browser vendors when they recently published a post titled &apos;Customizable, Ubiquitous Real Time Communication over the Web (CU-RTC-Web)&apos; on the official &lt;a href=&quot;http://blogs.skype.com/en/2012/08/customizable_ubiquitous_real_t.html&quot; target=&quot;_blank&quot;&gt;Skype blog&lt;/a&gt;.&lt;p&gt;
So what did they announce? In the post several key Skype/Microsoft engineers (headed by Matthew Kaufman who many Flash developers will remember as the inventor of RTMFP) explain Microsoft&apos;s contribution of the &lt;a href=&quot;http://html5labs.com/cu-rtc-web/cu-rtc-web.htm&quot; target=&quot;_blank&quot;&gt;CU-RTC-Web proposal&lt;/a&gt; to the W3C WebRTC working group.&lt;p&gt;
So why is Microsoft submitting their own RTC proposal to the working group? In short Microsoft thinks that the existing proposal falls short in several areas. According to Microsoft it doesn&apos;t address interoperability between different types of clients (not just web browsers) very well (&quot;instead focuses on video communication between web browsers under ideal conditions&quot;) and also needs more flexibility when it comes to media formats and codecs.&lt;br&gt;Microsoft also point out that the existing proposal takes a significant dependency on the legacy of SIP technology, which is a suboptimal choice for use in Web APIs in their opinion. This in turn increases complexity and limits flexibility.&lt;p&gt;
You can dig deeper into the specifics of Microsoft&apos;s proposal on their &lt;a href=&quot;http://blogs.skype.com/en/2012/08/customizable_ubiquitous_real_t.html&quot; target=&quot;_blank&quot;&gt;blog&lt;/a&gt;.&lt;p&gt;
From the perspective of a Flash developer who has been working with real-time technologies for years on the Flash platform this is an interesting topic. It is clear that one of the biggest hurdles in the quick iteration and roll-out of new plugin-free, open standard technologies is just that: the fact that they are open and standardised. Whilst it would be great for developers to have access to APIs that are truly cross-platform, cross-browser and cross-device I do ask myself how realistic it is to expect this anytime soon (trust me, I&apos;d be one of the first to have a use case for properly integration Skype calls as part of a web application).
&lt;p&gt;Yet here we are seeing major players (namely Google and Microsoft) with their specific visions of how such a technology should work, and Microsoft holding back support in its browser until a standard has been formalised whilst Google and others add support for a whole host of new web technologies and APIs whilst they are still being worked on.&lt;p&gt;
I&apos;m not going to criticise either approach as both have their good sides, but it demonstrates that a lot of people will have to do a lot of talking before we see a real standard emerging. On the other hand maybe we all need to be less concerned about standardisation, but instead simply work towards a good standard, and most importantly work together to get there.
				</description>
				
				<category>Google</category>
				
				<category>WebRTC</category>
				
				<pubDate>Mon, 06 Aug 2012 14:32:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2012/8/6/skype-webrtc</guid>
				
				
			</item>
			
			<item>
				<title>Multi-Bitrate and Multi-Screen Streaming With Flash Media Server 4.5</title>
				<link>http://www.therealtimeweb.com/index.cfm/2012/6/26/afsug_july</link>
				<description>
				
				The newly renamed Adobe Media Server User Group has an interesting online meeting coming up in July.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Multi-Bitrate and Multi-Screen Streaming With Flash Media Server 4.5&lt;/strong&gt;
&lt;br&gt;&lt;br&gt;
Date and Time:&lt;br&gt;
July 17, 2012 10:00 AM - 11:00 AM (GMT-7 Mountain Time US &amp; Canada)
&lt;br&gt;&lt;br&gt;
Address:&lt;br&gt;
Join via Adobe Connect: &lt;a href=&quot;http://realeyes.adobeconnect.com/amsug&quot; target=&quot;_blank&quot;&gt;http://realeyes.adobeconnect.com/amsug&lt;/a&gt;
&lt;br&gt;&lt;br&gt;
Call-in Details:&lt;br&gt;
Join via Adobe Connect: &lt;a href=&quot;http://realeyes.adobeconnect.com/amsug
&quot; target=&quot;_blank&quot;&gt;http://realeyes.adobeconnect.com/amsug
&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Speakers:&lt;br&gt;
Lisa Larson-Kelley - owern of LearnFromLisa.com and Adobe Community Professional, specializing in Flash media technologies.
&lt;br&gt;&lt;br&gt;
Agenda:&lt;br&gt;
The latest edition of Flash Media Server supports multi-bitrate streaming over a wider variety of protocols -- not only to Flash Player and AIR, but to iPads and iPhones as well. New features in FMS 4.5 such as server-side HLS transcoding and adaptive bitrate (set-level) manifest support provide more flexibility than ever. In addition to introducing you to new features and best practices, this session provides you with examples of cross-platform video players that put them into action -- detecting the viewer&apos;s bandwidth and operating system and delivering the appropriate format stream at the optimal bitrate.
&lt;br&gt;
Link: &lt;a href=&quot;http://realeyes.adobeconnect.com/amsug&quot; target=&quot;_blank&quot;&gt;http://realeyes.adobeconnect.com/amsug&lt;/a&gt;
				</description>
				
				<category>Events</category>
				
				<pubDate>Tue, 26 Jun 2012 09:00:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2012/6/26/afsug_july</guid>
				
				
			</item>
			
			<item>
				<title>Move An Existing Git Repository Into Bitbucket In 3 Steps</title>
				<link>http://www.therealtimeweb.com/index.cfm/2012/5/16/move-git-repo-to-bitbucket</link>
				<description>
				
				Thanks to my good friend Simon I&apos;ve been a happy git user for a few months now. I installed my own git server on &lt;a href=&quot;http://www.therealtimeweb.com/index.cfm/2012/2/13/git-gitolite-ec2-ubuntu&quot; target=&quot;_blank&quot;&gt;Amazon EC2 using Ubuntu, git and gitolite&lt;/a&gt; and just fired it up once or twice a day to push and pull. This worked out fine but with more and more easy to use git hosting services springing up I gave &lt;a href=&quot;http://www.atlassian.com/software/bitbucket/overview&quot; target=&quot;_blank&quot;&gt;Atlassian&apos;s bitbucket&lt;/a&gt; a try since it offers unlimited private repositories which is a bonus.&lt;p&gt;
It took me a little while to figure out how to move my existing repository into bitbucket, especially since it was already tracking the existing remote repo on my server. What follows are a few easy steps that describe the process - &lt;disclaimer&gt;but note that you follow along at your own risk.&lt;/disclaimer&gt;&lt;p&gt;&lt;strong&gt;1) Create a new bitbucket repo&lt;/strong&gt;&lt;br&gt;
Yes, I did not import my existing repo since I could not figure out how to do that. I connect via ssh to my git server yet bitbucket asks for a username andpassword when importing repos that require authentication. Maybe there&apos;s a way to do it, but I did not waste any more time on it, and the way outlined here also keeps your project history in tact, and it&apos;s simple.&lt;br&gt;
Once you created the new, empty repo on bitbucket simply leave that page open, we&apos;ll come back to it in step 3.&lt;img src=&quot;http://www.therealtimeweb.com/images/bitbucket1.jpg&quot; align=&quot;center&quot; id=&quot;blogimg&quot;&gt;&lt;p&gt;
&lt;strong&gt;2) Detach your existing local git repo from its remote&lt;/strong&gt;&lt;br&gt;
I&apos;m on OSX so I used Terminal to cd into my local project folder:
&lt;code&gt;
$ cd &apos;/Users/stefan/dev/projects/myproject&apos;
&lt;/code&gt;&lt;p&gt;
You can tell git to show you the remote aliases for your project:&lt;br&gt;
&lt;code&gt;
$ git remote
&lt;/code&gt;&lt;p&gt;
To see the actual URL for each alias use
&lt;code&gt;
$ git remote -v
&lt;/code&gt;&lt;p&gt;
I then detached my existing remote from the local repo:&lt;br&gt;
&lt;code&gt;
$ git remote rm origin
&lt;/code&gt;
&lt;p&gt;&lt;/p&gt;
&lt;strong&gt;3) Add your existing project code to the new remote repo on bitbucket&lt;/strong&gt;&lt;br&gt;
Back onto the bitbucket website where you still have the page open. You did leave it open, right? If you didn&apos;t then find the option I mention below, or just nuke the project and create it again.&lt;br&gt;
There&apos;s a big fat &apos;I have code I want to import&apos; showing under &apos;Add some code&apos;. Click it.
&lt;img src=&quot;http://www.therealtimeweb.com/images/bitbucket2.jpg&quot; align=&quot;center&quot; id=&quot;blogimg&quot;&gt;&lt;p&gt;
Simples. Bitbucket shows you the exact code you need to enter into Terminal to add your project to the new repo. It looks something like this:
&lt;br&gt;
&lt;code&gt;
$ cd /path/to/my/repo
$ git remote add origin ssh://git@bitbucket.org/username/myproject.git
$ git push -u origin master   # to push changes for the first time
&lt;/code&gt;
&lt;p&gt;
You&apos;re done. If you think I&apos;m out of my mind or have overlooked something then please feel free to have a moan in the comments. Or thank me if it helps :-)&lt;p&gt;
&lt;img src=&quot;http://www.therealtimeweb.com/images/awesomesauce.jpg&quot; id=&quot;blogimg&quot; align=&quot;center&quot;&gt;
				</description>
				
				<category>Tools</category>
				
				<category>Tutorials</category>
				
				<pubDate>Wed, 16 May 2012 09:03:00 +0100</pubDate>
				<guid>http://www.therealtimeweb.com/index.cfm/2012/5/16/move-git-repo-to-bitbucket</guid>
				
				
			</item>
			</channel></rss>