<?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>Flex the world</title>
	<atom:link href="http://www.flextheworld.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.flextheworld.com</link>
	<description>Flex, AIR, FMS, P2P and Things......</description>
	<lastBuildDate>Fri, 06 Aug 2010 01:47:07 +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>基于Stratus 2的P2P多人文件共享</title>
		<link>http://www.flextheworld.com/2010/08/stratus2-p2p-fileshare.html</link>
		<comments>http://www.flextheworld.com/2010/08/stratus2-p2p-fileshare.html#comments</comments>
		<pubDate>Thu, 05 Aug 2010 12:43:40 +0000</pubDate>
		<dc:creator>Kevin Luo</dc:creator>
				<category><![CDATA[Flex 迷你教程]]></category>
		<category><![CDATA[P2P]]></category>
		<category><![CDATA[未分类]]></category>
		<category><![CDATA[flash multicast]]></category>
		<category><![CDATA[flash player 10.1]]></category>
		<category><![CDATA[Stratus]]></category>

		<guid isPermaLink="false">http://www.flextheworld.com/?p=791</guid>
		<description><![CDATA[在我的上一篇Status 2的文章中给大家简单介绍了Stratus 2 一对多视频直播，今天给大家演示一下如何在NetGroup中共享文件。在原来的Strtuas 1 中，我们也可以发送文件，不过发送的方式很单一，只能通过NetStream.send的方式将文件发送给选定的对象。这样的文件发送问题很多。

发送过程中无法知道文件发送的情况。
很麻烦才可以将文件拆分发送。
发送的过程中很容易造成数据包丢失。
一次只能发送给一个用户，如果要发送到第二个用户，需要额外的连接。

以上这些问题因为Stratus 1 只支持点对点的传输，所以这些问题很难解决。而现在的Stratus 2，因为支持了Application level Multicast (应用层多播，关于应用层多播是什么因为不会影响我们的教程，这里就不多解释了，有兴趣的朋友可以问下google)，所以我们的文件发送变得更加的强大，或者说更加的P2P，具体来说有这些优点。

支持文件拆分发送。你可以将你的文件拆分至N份。
多用户间共享文件块 。A用户发送文件,B用户接收,C用户再接收时C用户从A与B中接收
相对稳定的传输 (因为Stratus 2 现在也是Beta阶段，我也没有试过真实环境下大量用户共享文件的情况所以稳定情况有待考证)
文件传输反馈。更方便的监控传送的过程

了解了以上这些，我们来看下面这个例子，代码我是在前一个例子的基础上添加，所以对已有的代码就不重复解释，只解释文件发送相关的代码。

文件发送过程

A从本地读取文件，切分成128K一个的大小，假设我们发送一个1MB的文件，那么就是9个文件块
A使用NetGroup.addHaveObject(0,9)发送文件, 9代表文件的快数。
B使用NetGroup.addWantObjects(index, index)来接收文件, 第一个index是当前的文件块，第二个index是需要到第几个文件块，我们的接收从0,0开始，我们在0文件块中保存文件的基本信息，名字，大小，等等。接收到0个文件快后，你可以直接接收剩下的全部文件块，比如NetGroup.addWantObjects(1, 9)，这样就直接接收剩全部文件块，如果NetGroup.addWantObjects(1, 1)表示你本次只需要再往下的一个文件块。
B在调用NetGroup.addWantObjects(index, index)后A会有事件响应，NetGroup.Replication.Request，在这个事件响应中A需要开始向要求文件的B发送文件 NetGroup.writeRequestedObject(event.info.requestID,p2pSharedObject.chunks[event.info.index])。 p2pSharedObject是我们发送的文件,requestID是B的地址，file.chunks[event.info.index]是需要写入的文件内容。
A发送文件时B响应事件NetGroup.Replication.Fetch.Result, B在事件中保存文件快，并继续重复#3步骤获取下一个文件快。如果文件块获取结束，保存本地。 （注意，B在获取文件块后可以使用#2的步骤将自己也变为文件发发布者）

Demo 操作
点击运行发布者
点击运行Viewer

先运行发布者，记住Gourp的名字，点击connect创建组
点击“共享文件”，随意选择一个文件。
运行Viewer，group中输入与发布者一样的Group.点击connect连接组
点击下载文件，下载发布者发送的文件。
你可以多开几个Viewer来一起接收文件。

需要注意的地方

?View Code ACTIONSCRIPT3     //允许Objecy Replication
     groupSpecifier.objectReplicationEnabled = true; //onConnect() function中设置


?View Code ACTIONSCRIPT3//设置replicationStrategy
netGroup.replicationStrategy = NetGroupReplicationStrategy.LOWEST_FIRST;//onNetGroupConnect() function中设置


?View Code ACTIONSCRIPT3//netStatusHandler中注意以下事件处理，接收和发送文件块
&#160;
case &#34;NetGroup.Replication.Fetch.Result&#34;: // e.info.index, e.info.object
&#160;
					//作为发布者已经接收的部分
					netGroup.addHaveObjects&#40;e.info.index,e.info.index&#41;;
					if&#40;e.info.code [...]]]></description>
			<content:encoded><![CDATA[<p>在我的上一篇Status 2的文章中给大家简单介绍了<a href="http://www.flextheworld.com/2010/02/flex-stratus-2-p2p.html" target="_blank">Stratus 2 一对多视频直播</a>，今天给大家演示一下如何在NetGroup中共享文件。在原来的Strtuas 1 中，我们也可以发送文件，不过发送的方式很单一，只能通过NetStream.send的方式将文件发送给选定的对象。这样的文件发送问题很多。</p>
<ol>
<li><span style="color: #ff0000;">发送过程中无法知道文件发送的情况。</span></li>
<li><span style="color: #ff0000;">很麻烦才可以将文件拆分发送。</span></li>
<li><span style="color: #ff0000;">发送的过程中很容易造成数据包丢失。</span></li>
<li><span style="color: #ff0000;">一次只能发送给一个用户，如果要发送到第二个用户，需要额外的连接。</span></li>
</ol>
<p>以上这些问题因为Stratus 1 只支持点对点的传输，所以这些问题很难解决。而现在的Stratus 2，因为支持了Application level Multicast (应用层多播，关于应用层多播是什么因为不会影响我们的教程，这里就不多解释了，有兴趣的朋友可以问下google)，所以我们的文件发送变得更加的强大，或者说更加的P2P，具体来说有这些优点。</p>
<ol>
<li><span style="color: #0000ff;">支持文件拆分发送。你可以将你的文件拆分至N份。</span></li>
<li><span style="color: #0000ff;">多用户间共享文件块 。A用户发送文件,B用户接收,C用户再接收时C用户从A与B中接收</span></li>
<li><span style="color: #0000ff;">相对稳定的传输 (因为Stratus 2 现在也是Beta阶段，我也没有试过真实环境下大量用户共享文件的情况所以稳定情况有待考证)</span></li>
<li><span style="color: #0000ff;">文件传输反馈。更方便的监控传送的过程</span></li>
</ol>
<p>了解了以上这些，我们来看下面这个例子，代码我是在前一个例子的基础上添加，所以对已有的代码就不重复解释，只解释文件发送相关的代码。</p>
<p><span id="more-791"></span></p>
<h2><strong>文件发送过程</strong></h2>
<ol>
<li>A从本地读取文件，切分成128K一个的大小，假设我们发送一个1MB的文件，那么就是9个文件块</li>
<li>A使用NetGroup.addHaveObject(0,9)发送文件, 9代表文件的快数。</li>
<li>B使用NetGroup.addWantObjects(index, index)来接收文件, 第一个index是当前的文件块，第二个index是需要到第几个文件块，我们的接收从0,0开始，我们在0文件块中保存文件的基本信息，名字，大小，等等。接收到0个文件快后，你可以直接接收剩下的全部文件块，比如NetGroup.addWantObjects(1, 9)，这样就直接接收剩全部文件块，如果NetGroup.addWantObjects(1, 1)表示你本次只需要再往下的一个文件块。</li>
<li>B在调用NetGroup.addWantObjects(index, index)后A会有事件响应，NetGroup.Replication.Request，在这个事件响应中A需要开始向要求文件的B发送文件 NetGroup.writeRequestedObject(event.info.requestID,p2pSharedObject.chunks[event.info.index])。 p2pSharedObject是我们发送的文件,requestID是B的地址，file.chunks[event.info.index]是需要写入的文件内容。</li>
<li>A发送文件时B响应事件NetGroup.Replication.Fetch.Result, B在事件中保存文件快，并继续重复#3步骤获取下一个文件快。如果文件块获取结束，保存本地。 （注意，B在获取文件块后可以使用#2的步骤将自己也变为文件发发布者）</li>
</ol>
<h2><strong>Demo 操作</strong></h2>
<p><a href="http://www.flextheworld.com/demo/stratus2-fileshare/Publisher.html" target="_blank"><span style="color: #ff0000;"><span style="color: #000000;"><strong><span style="color: #ff0000;">点击运行发布者</span></strong></span></span></a></p>
<p><a href="http://www.flextheworld.com/demo/stratus2-fileshare/Viewer.html" target="_blank"><span style="color: #ff0000;"><span style="color: #000000;"><strong><span style="color: #ff0000;">点击运行Viewer</span></strong></span></span></a></p>
<ol>
<li>先运行发布者，记住Gourp的名字，点击connect创建组</li>
<li>点击“共享文件”，随意选择一个文件。</li>
<li>运行Viewer，group中输入与发布者一样的Group.点击connect连接组</li>
<li>点击下载文件，下载发布者发送的文件。</li>
<li>你可以多开几个Viewer来一起接收文件。</li>
</ol>
<h2>需要注意的地方</h2>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p791code4'); return false;">View Code</a> ACTIONSCRIPT3</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p7914"><td class="code" id="p791code4"><pre class="actionscript3" style="font-family:monospace;">     <span style="color: #009900; font-style: italic;">//允许Objecy Replication</span>
     groupSpecifier<span style="color: #000066; font-weight: bold;">.</span>objectReplicationEnabled = <span style="color: #0033ff; font-weight: bold;">true</span><span style="color: #000066; font-weight: bold;">;</span> <span style="color: #009900; font-style: italic;">//onConnect() function中设置</span></pre></td></tr></table></div>


<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p791code5'); return false;">View Code</a> ACTIONSCRIPT3</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p7915"><td class="code" id="p791code5"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #009900; font-style: italic;">//设置replicationStrategy</span>
netGroup<span style="color: #000066; font-weight: bold;">.</span>replicationStrategy = NetGroupReplicationStrategy<span style="color: #000066; font-weight: bold;">.</span>LOWEST_FIRST<span style="color: #000066; font-weight: bold;">;</span><span style="color: #009900; font-style: italic;">//onNetGroupConnect() function中设置</span></pre></td></tr></table></div>


<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p791code6'); return false;">View Code</a> ACTIONSCRIPT3</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p7916"><td class="code" id="p791code6"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #009900; font-style: italic;">//netStatusHandler中注意以下事件处理，接收和发送文件块</span>
&nbsp;
<span style="color: #0033ff; font-weight: bold;">case</span> <span style="color: #990000;">&quot;NetGroup.Replication.Fetch.Result&quot;</span><span style="color: #000066; font-weight: bold;">:</span> <span style="color: #009900; font-style: italic;">// e.info.index, e.info.object</span>
&nbsp;
					<span style="color: #009900; font-style: italic;">//作为发布者已经接收的部分</span>
					netGroup<span style="color: #000066; font-weight: bold;">.</span>addHaveObjects<span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">index</span><span style="color: #000066; font-weight: bold;">,</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">index</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
					<span style="color: #0033ff; font-weight: bold;">if</span><span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">code</span> <span style="color: #000066; font-weight: bold;">!</span>= <span style="color: #990000;">&quot;NetGroup.Replication.Fetch.Result&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#123;</span>
						<span style="color: #0033ff; font-weight: bold;">break</span><span style="color: #000066; font-weight: bold;">;</span>
					<span style="color: #000000;">&#125;</span>
&nbsp;
					<span style="color: #009900; font-style: italic;">//接收文件</span>
					p2pSharedObject<span style="color: #000066; font-weight: bold;">.</span>chunks<span style="color: #000000;">&#91;</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">index</span><span style="color: #000000;">&#93;</span> = e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span>object<span style="color: #000066; font-weight: bold;">;</span>
					updateStatus<span style="color: #000000;">&#40;</span><span style="color: #990000;">&quot;正在接收第&quot;</span><span style="color: #000066; font-weight: bold;">+</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">index</span><span style="color: #000066; font-weight: bold;">+</span><span style="color: #990000;">&quot;块文件&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
					<span style="color: #0033ff; font-weight: bold;">if</span><span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">index</span> == <span style="color: #000000; font-weight:bold;">0</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#123;</span>
						p2pSharedObject<span style="color: #000066; font-weight: bold;">.</span>packetLenght = <a href="http://www.google.com/search?q=number%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:number.html"><span style="color: #004993;">Number</span></a><span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span>object<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">length</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
						p2pSharedObject<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">name</span> = e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span>object<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">;</span>
						updateStatus<span style="color: #000000;">&#40;</span><span style="color: #990000;">&quot;要接收的文件有: &quot;</span><span style="color: #000066; font-weight: bold;">+</span>p2pSharedObject<span style="color: #000066; font-weight: bold;">.</span>packetLenght<span style="color: #000066; font-weight: bold;">+</span><span style="color: #990000;">&quot;块文件&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
						receiveObject<span style="color: #000000;">&#40;</span><span style="color: #000000; font-weight:bold;">1</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
					<span style="color: #000000;">&#125;</span><span style="color: #0033ff; font-weight: bold;">else</span><span style="color: #000000;">&#123;</span>
						<span style="color: #0033ff; font-weight: bold;">if</span><span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">index</span><span style="color: #000066; font-weight: bold;">+</span><span style="color: #000000; font-weight:bold;">1</span><span style="color: #000066; font-weight: bold;">&lt;</span>p2pSharedObject<span style="color: #000066; font-weight: bold;">.</span>packetLenght<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#123;</span>
							receiveObject<span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">index</span><span style="color: #000066; font-weight: bold;">+</span><span style="color: #000000; font-weight:bold;">1</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
						<span style="color: #000000;">&#125;</span><span style="color: #0033ff; font-weight: bold;">else</span><span style="color: #000000;">&#123;</span>
							updateStatus<span style="color: #000000;">&#40;</span><span style="color: #990000;">&quot;文件接收完毕&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
							updateStatus<span style="color: #000000;">&#40;</span><span style="color: #990000;">&quot;接收了: &quot;</span><span style="color: #000066; font-weight: bold;">+</span>p2pSharedObject<span style="color: #000066; font-weight: bold;">.</span>packetLenght<span style="color: #000066; font-weight: bold;">+</span><span style="color: #990000;">&quot;块文件&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
							p2pSharedObject<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">data</span> = <span style="color: #0033ff; font-weight: bold;">new</span> <a href="http://www.google.com/search?q=bytearray%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:bytearray.html"><span style="color: #004993;">ByteArray</span></a><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
							<span style="color: #0033ff; font-weight: bold;">for</span><span style="color: #000000;">&#40;</span><span style="color: #6699cc; font-weight: bold;">var</span> i<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=int%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:int.html"><span style="color: #004993;">int</span></a> = <span style="color: #000000; font-weight:bold;">1</span><span style="color: #000066; font-weight: bold;">;</span>i<span style="color: #000066; font-weight: bold;">&lt;</span>p2pSharedObject<span style="color: #000066; font-weight: bold;">.</span>packetLenght<span style="color: #000066; font-weight: bold;">;</span>i<span style="color: #000066; font-weight: bold;">++</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#123;</span>
								p2pSharedObject<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">data</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">writeBytes</span><span style="color: #000000;">&#40;</span>p2pSharedObject<span style="color: #000066; font-weight: bold;">.</span>chunks<span style="color: #000000;">&#91;</span>i<span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
							<span style="color: #000000;">&#125;</span>
&nbsp;
							updateStatus<span style="color: #000000;">&#40;</span><span style="color: #990000;">&quot;字节长度: &quot;</span><span style="color: #000066; font-weight: bold;">+</span>p2pSharedObject<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">data</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">length</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
							Alert<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">show</span><span style="color: #000000;">&#40;</span><span style="color: #990000;">&quot;保存文件&quot;</span><span style="color: #000066; font-weight: bold;">,</span><span style="color: #990000;">&quot;文件下载完毕，是否保存?&quot;</span><span style="color: #000066; font-weight: bold;">,</span>Alert<span style="color: #000066; font-weight: bold;">.</span>YES<span style="color: #000066; font-weight: bold;">|</span>Alert<span style="color: #000066; font-weight: bold;">.</span>NO<span style="color: #000066; font-weight: bold;">,</span><span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000066; font-weight: bold;">,</span>saveFileHandelr<span style="color: #000000;">&#41;</span>
&nbsp;
						<span style="color: #000000;">&#125;</span>
					<span style="color: #000000;">&#125;</span>
&nbsp;
					<span style="color: #0033ff; font-weight: bold;">break</span><span style="color: #000066; font-weight: bold;">;</span>
                <span style="color: #0033ff; font-weight: bold;">case</span> <span style="color: #990000;">&quot;NetGroup.Replication.Request&quot;</span><span style="color: #000066; font-weight: bold;">:</span> <span style="color: #009900; font-style: italic;">// e.info.index, e.info.requestID</span>
					<span style="color: #009900; font-style: italic;">//同时作为发布者</span>
					netGroup<span style="color: #000066; font-weight: bold;">.</span>writeRequestedObject<span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span>requestID<span style="color: #000066; font-weight: bold;">,</span>p2pSharedObject<span style="color: #000066; font-weight: bold;">.</span>chunks<span style="color: #000000;">&#91;</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">index</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span>
					updateStatus<span style="color: #000000;">&#40;</span><span style="color: #990000;">&quot;接收方ID: &quot;</span><span style="color: #000066; font-weight: bold;">+</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span>requestID<span style="color: #000066; font-weight: bold;">+</span><span style="color: #990000;">&quot;, 需要的文件块: &quot;</span><span style="color: #000066; font-weight: bold;">+</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">info</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">index</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
					<span style="color: #0033ff; font-weight: bold;">break</span><span style="color: #000066; font-weight: bold;">;</span></pre></td></tr></table></div>

<h2>源文件下载</h2>
<a class="downloadlink" href="http://www.flextheworld.com/wp-content/plugins/download-monitor/download.php?id=26" title=" downloaded 47 times" >Stratus2FileSharing (47)</a>
<h2>相关资源</h2>
<ol>
<li><a title="Permalink to Flex 迷你教程 — 基于Stratus的P2P网络电话 (1)" rel="bookmark" href="http://www.flextheworld.com/2009/01/flex-stratus-p2p-phone.html">Flex 迷你教程 — 基于Stratus的P2P网络电话 (1)</a></li>
<li><a title="Permalink to Flex 迷你教程 — 基于Stratus的P2P网络电话 (2)" rel="bookmark" href="http://www.flextheworld.com/2009/01/flex-stratus-phone-2.html">Flex 迷你教程 — 基于Stratus的P2P网络电话 (2)</a></li>
<li><a href="http://www.flextheworld.com/2009/01/flex-stratus-phone-3.html" target="_blank">Flex 迷你教程 — 基于Stratus的P2P网络电话 (3)</a></li>
<li><a title="Permanent Link to Flex 迷你教程 — 基于Stratus 2的P2P在线视频共享1 (NetGroup, Multicast实例)" rel="bookmark" href="http://www.flextheworld.com/2010/02/flex-stratus-2-p2p.html">Flex 迷你教程 — 基于Stratus 2的P2P一对多视频直播 (NetGroup, Multicast实例)</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.flextheworld.com/2010/08/stratus2-p2p-fileshare.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Good News</title>
		<link>http://www.flextheworld.com/2010/08/good-news.html</link>
		<comments>http://www.flextheworld.com/2010/08/good-news.html#comments</comments>
		<pubDate>Tue, 03 Aug 2010 09:22:36 +0000</pubDate>
		<dc:creator>Kevin Luo</dc:creator>
				<category><![CDATA[我的事]]></category>
		<category><![CDATA[CSDN Flex 中文站]]></category>
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.flextheworld.com/?p=781</guid>
		<description><![CDATA[谢谢Adobe把我的资料放上CSDN, 截图纪念一下
http://flex.csdn.net/

]]></description>
			<content:encoded><![CDATA[<p>谢谢Adobe把我的资料放上CSDN, 截图纪念一下</p>
<p><a href="http://flex.csdn.net/">http://flex.csdn.net/</a></p>
<p><a href="http://www.flextheworld.com/wp-content/uploads/2010/08/4837337925_915f8e2a7d_b.jpg" rel="shadowbox[post-781];player=img;"><img class="alignnone size-full wp-image-782" title="4837337925_915f8e2a7d_b" src="http://www.flextheworld.com/wp-content/uploads/2010/08/4837337925_915f8e2a7d_b.jpg" alt="" width="819" height="461" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.flextheworld.com/2010/08/good-news.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>华东地区Adobe Flash平台技术研讨会归来 二</title>
		<link>http://www.flextheworld.com/2010/07/adobe-flash-metting-2.html</link>
		<comments>http://www.flextheworld.com/2010/07/adobe-flash-metting-2.html#comments</comments>
		<pubDate>Wed, 28 Jul 2010 09:01:00 +0000</pubDate>
		<dc:creator>Kevin Luo</dc:creator>
				<category><![CDATA[我的事]]></category>
		<category><![CDATA[新闻]]></category>
		<category><![CDATA[抉择 传统WEB与RIA]]></category>
		<category><![CDATA[视频]]></category>

		<guid isPermaLink="false">http://www.flextheworld.com/?p=773</guid>
		<description><![CDATA[今天看到了自己的演讲视频，不过很杯具的是视频的声音效果很差，下周拿到原版碟子后看看效果会不会好一点，好的话，我再制作一个版本重新发上来。下面是视频
抉择 传统WEB与RIA &#8212; PART 1

抉择 传统WEB与RIA &#8212; PART 2

]]></description>
			<content:encoded><![CDATA[<p>今天看到了自己的演讲视频，不过很杯具的是视频的声音效果很差，下周拿到原版碟子后看看效果会不会好一点，好的话，我再制作一个版本重新发上来。下面是视频</p>
<h3>抉择 传统WEB与RIA &#8212; PART 1</h3>
<p><object style="width: 480px; height: 400px;" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="400" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://player.youku.com/player.php/sid/XMTkyOTg0OTA0/v.swf" /><embed style="width: 480px; height: 400px;" type="application/x-shockwave-flash" width="480" height="400" src="http://player.youku.com/player.php/sid/XMTkyOTg0OTA0/v.swf"></embed></object></p>
<h3>抉择 传统WEB与RIA &#8212; PART 2</h3>
<p><object style="width: 480px; height: 400px;" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="400" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://player.youku.com/player.php/sid/XMTkzMDAxODEy/v.swf" /><embed style="width: 480px; height: 400px;" type="application/x-shockwave-flash" width="480" height="400" src="http://player.youku.com/player.php/sid/XMTkzMDAxODEy/v.swf"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.flextheworld.com/2010/07/adobe-flash-metting-2.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>收到Adobe寄来的小礼物</title>
		<link>http://www.flextheworld.com/2010/07/adobe-gift.html</link>
		<comments>http://www.flextheworld.com/2010/07/adobe-gift.html#comments</comments>
		<pubDate>Mon, 26 Jul 2010 14:12:14 +0000</pubDate>
		<dc:creator>Kevin Luo</dc:creator>
				<category><![CDATA[我的事]]></category>
		<category><![CDATA[未分类]]></category>
		<category><![CDATA[adobe 礼物]]></category>

		<guid isPermaLink="false">http://www.flextheworld.com/?p=759</guid>
		<description><![CDATA[今天收到了Adobe寄来的礼物，非常开心，Fiona在上周活动结束后说给我寄一些小礼物，没想到这么快就收到了，从大一开始就开始接触Flash，一路走到今天，Adobe也成为我最喜爱的公司。所以这次合肥的活动中认识几位Adobe的朋友真是非常开心，更开心的是能和大家一起分享自己各自的经验。未来的路还很长。希望Siloon, 自己和伙伴们可以越来越好，也希望Adobe未来可以提供给我们更多更强大的RIA框架:)
PS: 没想到的是礼物中有一张 “感谢信”，呵呵。很有纪念意义。






]]></description>
			<content:encoded><![CDATA[<p>今天收到了Adobe寄来的礼物，非常开心，Fiona在上周活动结束后说给我寄一些小礼物，没想到这么快就收到了，从大一开始就开始接触Flash，一路走到今天，Adobe也成为我最喜爱的公司。所以这次合肥的活动中认识几位Adobe的朋友真是非常开心，更开心的是能和大家一起分享自己各自的经验。未来的路还很长。希望<a href="http://www.siloon.com">Siloon</a>, 自己和伙伴们可以越来越好，也希望Adobe未来可以提供给我们更多更强大的RIA框架:)</p>
<p>PS: 没想到的是礼物中有一张 “感谢信”，呵呵。很有纪念意义。</p>
<p><a href="http://www.flextheworld.com/wp-content/uploads/2010/07/MG_5758.jpg" rel="shadowbox[post-759];player=img;"><img class="alignnone size-full wp-image-760" title="_MG_5758" src="http://www.flextheworld.com/wp-content/uploads/2010/07/MG_5758.jpg" alt="" width="720" height="480" /></a></p>
<p><span id="more-759"></span></p>
<p><a href="http://www.flextheworld.com/wp-content/uploads/2010/07/MG_5766.jpg" rel="shadowbox[post-759];player=img;"><img class="alignnone size-full wp-image-764" title="_MG_5766" src="http://www.flextheworld.com/wp-content/uploads/2010/07/MG_5766.jpg" alt="" width="720" height="480" /></a></p>
<p><a href="http://www.flextheworld.com/wp-content/uploads/2010/07/MG_5780.jpg" rel="shadowbox[post-759];player=img;"><img class="alignnone size-full wp-image-766" title="_MG_5780" src="http://www.flextheworld.com/wp-content/uploads/2010/07/MG_5780.jpg" alt="" width="720" height="480" /></a></p>
<p><a href="http://www.flextheworld.com/wp-content/uploads/2010/07/MG_5797.jpg" rel="shadowbox[post-759];player=img;"><img class="alignnone size-full wp-image-767" title="_MG_5797" src="http://www.flextheworld.com/wp-content/uploads/2010/07/MG_5797.jpg" alt="" width="720" height="480" /></a></p>
<p><a href="http://www.flextheworld.com/wp-content/uploads/2010/07/MG_5803.jpg" rel="shadowbox[post-759];player=img;"><img class="alignnone size-full wp-image-765" title="_MG_5803" src="http://www.flextheworld.com/wp-content/uploads/2010/07/MG_5803.jpg" alt="" width="720" height="480" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.flextheworld.com/2010/07/adobe-gift.html/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>华东地区Adobe Flash平台技术研讨会归来</title>
		<link>http://www.flextheworld.com/2010/07/adobe-flash-meeting.html</link>
		<comments>http://www.flextheworld.com/2010/07/adobe-flash-meeting.html#comments</comments>
		<pubDate>Mon, 26 Jul 2010 13:28:19 +0000</pubDate>
		<dc:creator>Kevin Luo</dc:creator>
				<category><![CDATA[我的事]]></category>
		<category><![CDATA[新闻]]></category>
		<category><![CDATA[未分类]]></category>
		<category><![CDATA[华东地区Adobe Flash平台技术研讨会]]></category>

		<guid isPermaLink="false">http://www.flextheworld.com/?p=749</guid>
		<description><![CDATA[去合肥参加研讨会回来已经一周了，非常高兴能有机会参加这次会议，会场的气氛非常好，相信无论是我自己，还是每一位到场的朋友都在这次的活动中收获颇丰。也希望以后可以多参加这样的活动。
这里是活动的现场报道，你可以找到其他嘉宾的演讲PPT以及活动照片
艾瑞网报道华东Adobe Flash平台技术研讨会报道
这里是我的演讲PPT, 需要的朋友可以下载，过几天我会给我演讲视频
 
]]></description>
			<content:encoded><![CDATA[<p>去合肥参加研讨会回来已经一周了，非常高兴能有机会参加这次会议，会场的气氛非常好，相信无论是我自己，还是每一位到场的朋友都在这次的活动中收获颇丰。也希望以后可以多参加这样的活动。</p>
<p>这里是活动的现场报道，你可以找到其他嘉宾的演讲PPT以及活动照片</p>
<p><a href="http://bbs.airia.cn/riameeting/thread-14227-1-1.html" target="_blank"><span style="color: #800000;"><strong>艾瑞网报道华东Adobe Flash平台技术研讨会报道</strong></span></a></p>
<p>这里是我的演讲PPT, 需要的朋友可以下载，过几天我会给我演讲视频</p>
<p><span style="color: #800000;"><strong> <a class="downloadlink" href="http://www.flextheworld.com/wp-content/plugins/download-monitor/download.php?id=25" title=" downloaded 44 times" >WEB&RIA (44)</a></strong></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.flextheworld.com/2010/07/adobe-flash-meeting.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>华东地区Adobe Flash平台技术研讨会</title>
		<link>http://www.flextheworld.com/2010/07/adobe-flash.html</link>
		<comments>http://www.flextheworld.com/2010/07/adobe-flash.html#comments</comments>
		<pubDate>Wed, 14 Jul 2010 16:15:47 +0000</pubDate>
		<dc:creator>Kevin Luo</dc:creator>
				<category><![CDATA[我的事]]></category>
		<category><![CDATA[华东地区Adobe Flash平台技术研讨会]]></category>

		<guid isPermaLink="false">http://www.flextheworld.com/?p=742</guid>
		<description><![CDATA[华东地区Adobe Flash平台技术研讨会是由ADOBE官方全面支持并由Adobe user group艾睿网主办的面向华东地区应用软件开发者的综合技术研讨会。活动旨在为中国开发者介绍和讲解Adobe Flash平台开发知识和开发技巧，以及Adobe Flash平台技术的发展趋势、热门技术议题等。同时也为开发者搭建一个互相学习和交流的平台，在此与ADOBE公司的技术专家和资深的开发者们分享各自的开发经验和创新设计理念，共同推动富IT技术（RIA）的发展。
研讨会的时间在7月18日，我届时会做一个演讲，用多个实际的项目与大家讨论为什么我们要在项目中使用Flex, Flex是否真能提高用户体验以及程序的运行效率，它在大型项目中实际的表现如何，等等。另外还有很多其他精彩的演讲，有兴趣的朋友可以点击下面的图片了解详情。
直接报名点这里

]]></description>
			<content:encoded><![CDATA[<p><span style="color: #000000;">华东地区</span><span style="color: #000000;">Adobe Flash</span><span style="color: #000000;">平台技术研讨会是由</span><span style="color: #000000;">ADOBE</span><span style="color: #000000;">官方全面支持并由</span><span style="color: #000000;">Adobe user group</span><span style="color: #000000;">艾睿网主办的面向华东地区应用软件开发者的综合技术研讨会。活动旨在为中国开发者介绍和讲解</span><span style="color: #000000;">Adobe Flash</span><span style="color: #000000;">平台开发知识和开发技巧，以及</span><span style="color: #000000;">Adobe Flash</span><span style="color: #000000;">平台技术的发展趋势、热门技术议题等。同时也为开发者搭建一个互相学习和交流的平台，在此与</span><span style="color: #000000;">ADOBE</span><span style="color: #000000;">公司的技术专家和资深的开发者们分享各自的开发经验和创新设计理念，共同推动富</span><span style="color: #000000;">IT</span><span style="color: #000000;">技术（</span><span style="color: #000000;">RIA</span><span style="color: #000000;">）的发展。</span></p>
<p><span style="font-family: 宋体;"><span style="color: #000000;">研讨会的时间在7月18日，我届时会做一个演讲，用多个实际的项目与大家讨论为什么我们要在项目中使用Flex, Flex是否真能提高用户体验以及程序的运行效率，它在大型项目中实际的表现如何，等等。另外还有很多其他精彩的演讲，有兴趣的朋友可以点击下面的图片了解详情。</span></span></p>
<p><span style="font-family: 宋体;"><span style="color: #000000;"><a href="http://www.airia.cn:800/formguide/index.php?formid=1">直接报名点这里</a></span></span></p>
<p><a href="http://airia.cn/AdobeChina20107/#"><img class="alignnone" title="华东地区Adobe Flash平台技术研讨会" src="http://airia.cn/AdobeChina20107/banner.jpg" alt="" width="651" height="63" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.flextheworld.com/2010/07/adobe-flash.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>iPhone4 vs HTC Evo 4G</title>
		<link>http://www.flextheworld.com/2010/07/iphone4-vs-htc-evo-4g.html</link>
		<comments>http://www.flextheworld.com/2010/07/iphone4-vs-htc-evo-4g.html#comments</comments>
		<pubDate>Sun, 04 Jul 2010 15:05:16 +0000</pubDate>
		<dc:creator>Kevin Luo</dc:creator>
				<category><![CDATA[我的事]]></category>
		<category><![CDATA[HTC evo]]></category>
		<category><![CDATA[iphone 4]]></category>

		<guid isPermaLink="false">http://www.flextheworld.com/?p=740</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="400" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="align" value="middle" /><param name="src" value="http://player.youku.com/player.php/sid/XMTg2NDc2MzI0/v.swf" /><param name="quality" value="high" /><embed type="application/x-shockwave-flash" width="480" height="400" src="http://player.youku.com/player.php/sid/XMTg2NDc2MzI0/v.swf" quality="high" align="middle"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.flextheworld.com/2010/07/iphone4-vs-htc-evo-4g.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>P2P在线视频面试插件</title>
		<link>http://www.flextheworld.com/2010/06/p2p-interview-onlin.html</link>
		<comments>http://www.flextheworld.com/2010/06/p2p-interview-onlin.html#comments</comments>
		<pubDate>Mon, 14 Jun 2010 08:18:18 +0000</pubDate>
		<dc:creator>Kevin Luo</dc:creator>
				<category><![CDATA[我的事]]></category>
		<category><![CDATA[flash player 10.1]]></category>
		<category><![CDATA[P2P]]></category>
		<category><![CDATA[Stratus]]></category>
		<category><![CDATA[在线面试]]></category>

		<guid isPermaLink="false">http://www.flextheworld.com/?p=734</guid>
		<description><![CDATA[最近开发的一个视频面试插件，可以很容易的嵌入到任何需要该插件的网站（网站方需要自己写一个大概100行的服务器端API用以和你们的用户关联），网站可以是任意类型，PHP, .NET, JSP, 等等

因为每次有这样类似的开发，都是直接教客户写api, 然后直接连到他们的站上，所以导致我现在自己不能Demo    这几天有空的时候我可能还是会挂一个Demo出来, 需要定制插件的朋友可以和我联系：)
]]></description>
			<content:encoded><![CDATA[<p>最近开发的一个视频面试插件，可以很容易的嵌入到任何需要该插件的网站（网站方需要自己写一个大概100行的服务器端API用以和你们的用户关联），网站可以是任意类型，PHP, .NET, JSP, 等等</p>
<p><a href="http://www.flextheworld.com/wp-content/uploads/2010/06/screen.jpg" rel="shadowbox[post-734];player=img;"><img class="alignnone size-full wp-image-735" title="screen" src="http://www.flextheworld.com/wp-content/uploads/2010/06/screen.jpg" alt="" width="736" height="365" /></a></p>
<p>因为每次有这样类似的开发，都是直接教客户写api, 然后直接连到他们的站上，所以导致我现在自己不能Demo <img src='http://www.flextheworld.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />   这几天有空的时候我可能还是会挂一个Demo出来, 需要定制插件的朋友可以和我联系：)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.flextheworld.com/2010/06/p2p-interview-onlin.html/feed</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Adnroid 2.2+flash player 10.1 VS iphone 4.0 + HTML5</title>
		<link>http://www.flextheworld.com/2010/05/adnroid-2-2flash-player-10-1-vs-iphone-4-0-html5.html</link>
		<comments>http://www.flextheworld.com/2010/05/adnroid-2-2flash-player-10-1-vs-iphone-4-0-html5.html#comments</comments>
		<pubDate>Mon, 17 May 2010 06:11:41 +0000</pubDate>
		<dc:creator>Kevin Luo</dc:creator>
				<category><![CDATA[我的事]]></category>
		<category><![CDATA[Android 2.2]]></category>
		<category><![CDATA[flash player 10.1]]></category>

		<guid isPermaLink="false">http://www.flextheworld.com/?p=730</guid>
		<description><![CDATA[前几天看了一个视频，说的是flash player 10.1在Android 2.2上运行的情况，那真是&#8230;.Amazoning! 这段视频导致我无比的期待Android 2.2以及flash player 10.1的发布。我是乔布斯教主的忠实信徒，但是我开始考虑放弃iphone 4，购入Android2.2 phone了。不得不说flash在移动设备上的完美运行绝对会对一些人选择手机的情绪产生影响。毕竟谁不想享受100%的web页面，而是满屏大大的 ?。 Flash player 10.1以及Android 2.2可能会引爆iphone 4.0 以及Android 2.2的新一轮大战。也变相的成为HTML5与Flash的较量。鹿死谁手？
期待6月的战火

]]></description>
			<content:encoded><![CDATA[<p>前几天看了一个视频，说的是flash player 10.1在Android 2.2上运行的情况，那真是&#8230;.Amazoning! 这段视频导致我无比的期待Android 2.2以及flash player 10.1的发布。我是乔布斯教主的忠实信徒，但是我开始考虑放弃iphone 4，购入Android2.2 phone了。不得不说flash在移动设备上的完美运行绝对会对一些人选择手机的情绪产生影响。毕竟谁不想享受100%的web页面，而是满屏大大的 ?。 Flash player 10.1以及Android 2.2可能会引爆iphone 4.0 以及Android 2.2的新一轮大战。也变相的成为HTML5与Flash的较量。鹿死谁手？</p>
<p>期待6月的战火</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="500" height="500" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://player.youku.com/player.php/sid/XMTcyMjgwNjA4/v.swf" /><embed type="application/x-shockwave-flash" width="500" height="500" src="http://player.youku.com/player.php/sid/XMTcyMjgwNjA4/v.swf"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.flextheworld.com/2010/05/adnroid-2-2flash-player-10-1-vs-iphone-4-0-html5.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>6小时复制chatroulette.com</title>
		<link>http://www.flextheworld.com/2010/04/6hour-chatroulette-wallperson.html</link>
		<comments>http://www.flextheworld.com/2010/04/6hour-chatroulette-wallperson.html#comments</comments>
		<pubDate>Tue, 06 Apr 2010 11:12:25 +0000</pubDate>
		<dc:creator>Kevin Luo</dc:creator>
				<category><![CDATA[P2P]]></category>
		<category><![CDATA[我的事]]></category>
		<category><![CDATA[FTMFP]]></category>
		<category><![CDATA[Stratus]]></category>

		<guid isPermaLink="false">http://www.flextheworld.com/?p=720</guid>
		<description><![CDATA[这个小项目是一个印度小伙找上来的，要求我帮他做一个和chatroulette一样的网站。chatroulette在他找我前我就看过。实际是上在原来很有名的omegle出现以后我们就基于RTMFP做了和chatroulette一样的随机视频网站，并且扩展成了支持一对多，多对多聊天的halowei.com(比chatroulette要早好几个月). 无奈宣传实在是我们的弱项，以至于halowei.com现在也就只能一直很冷清的放那了（很凄凉的感觉啊），不过这个项目确实对我们的外包事业有比较大帮助，再怎么说我也算是国内玩RTMFP的第一批人了（很不要脸的跨自己啊），呵呵。话说回来这个项目，利用两个晚上的时间帮他完成了这个项目(www.wallperson.com)，不知道这个网站的人气会如何，走着瞧吧。

]]></description>
			<content:encoded><![CDATA[<p>这个小项目是一个印度小伙找上来的，要求我帮他做一个和chatroulette一样的网站。chatroulette在他找我前我就看过。实际是上在原来很有名的omegle出现以后我们就基于RTMFP做了和chatroulette一样的随机视频网站，并且扩展成了支持一对多，多对多聊天的<a href="http://halowei.com">halowei.com</a>(比chatroulette要早好几个月). 无奈宣传实在是我们的弱项，以至于halowei.com现在也就只能一直很冷清的放那了（很凄凉的感觉啊），不过这个项目确实对我们的外包事业有比较大帮助，再怎么说我也算是国内玩RTMFP的第一批人了（很不要脸的跨自己啊），呵呵。话说回来这个项目，利用两个晚上的时间帮他完成了这个项目(<a href="http://wallperson.com">www.wallperson.com</a>)，不知道这个网站的人气会如何，走着瞧吧。</p>
<p><img class="alignnone size-full wp-image-721" title="1" src="http://www.flextheworld.com/wp-content/uploads/2010/04/1.GIF" alt="1" width="736" height="369" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.flextheworld.com/2010/04/6hour-chatroulette-wallperson.html/feed</wfw:commentRss>
		<slash:comments>31</slash:comments>
		</item>
	</channel>
</rss>
