<?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>The Facebook Journal &#187; stream</title>
	<atom:link href="http://thefacebookjournal.com/tag/stream/feed/" rel="self" type="application/rss+xml" />
	<link>http://thefacebookjournal.com</link>
	<description>Facebook Platform and Application News</description>
	<lastBuildDate>Mon, 14 May 2012 05:58:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Facebook Platform. Good Experiences.</title>
		<link>http://thefacebookjournal.com/2009/12/19/facebook-platform-good-experiences/</link>
		<comments>http://thefacebookjournal.com/2009/12/19/facebook-platform-good-experiences/#comments</comments>
		<pubDate>Sat, 19 Dec 2009 06:25:21 +0000</pubDate>
		<dc:creator>Don Lofthouse</dc:creator>
				<category><![CDATA[Facebook Platform]]></category>
		<category><![CDATA[Platform News]]></category>
		<category><![CDATA[counter]]></category>
		<category><![CDATA[dashboard]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[policies]]></category>
		<category><![CDATA[roadmap]]></category>
		<category><![CDATA[stream]]></category>

		<guid isPermaLink="false">http://fappside.com/?p=258</guid>
		<description><![CDATA[In a recent blog post Facebook encouraged users to be trustworthy and to create great user experiences. The deadline for enforcement of the new Facebook Developer Principles and Policies has passed and now all the application developers that violate those rules will be punished. The actions taken against the apps will range from simple warnings, suspension of certain functionality to the outright disablement [...]]]></description>
			<content:encoded><![CDATA[<p>In a <a id="aptureLink_erE2u3bAr4" href="http://developers.facebook.com/news.php?blog=1&amp;story=348">recent blog post</a> <a id="aptureLink_9o1DUsqbTC" href="http://www.crunchbase.com/company/facebook">Facebook</a> encouraged users to be trustworthy and to create great user experiences.</p>
<p>The <a title="Updated Facebook Developer Policies" href="http://thefacebookjournal.com/2009/11/25/updated-facebook-developer-policies/" target="_self">deadline for enforcement</a> of the new <a id="aptureLink_oHPT27cSUV" href="http://developers.facebook.com/policy/">Facebook Developer Principles and Policies</a> has passed and now all the application developers that violate those rules will be punished. The actions taken against the apps will range from simple warnings, suspension of certain functionality to the outright disablement of the app according to the &#8220;severity&#8221; of the violation, the developer&#8217;s history of compliance and the impact of the violation on the users of the application.</p>
<p>These new changes to the <a id="aptureLink_kGGIFLV6SU" href="http://developers.facebook.com/policy/">Developer Principles and Policies</a> will slow down the growth of new applications significantly. The auto pop-up permission requests, bookmark reminders will be considered as violations. The stream stories can no longer be used as methods for users to invite friends to the applications and soon <a title="Updated Facebook Developer Policies" href="http://thefacebookjournal.com/2009/11/25/updated-facebook-developer-policies/" target="_self">Facebook will disable all the viral channels of communication</a> (notifications, requests) and leave developers with only the <a title="Dashboard API Available" href="http://thefacebookjournal.com/2009/12/10/dashboard-roadmap-api-available/" target="_self">dashboard counters</a> and the Inbox.</p>
<p>Added to this, as outlined in the <a id="aptureLink_buLbncsL7s" href="http://wiki.developers.facebook.com/index.php/Developer_Roadmap">Facebook Developer Roadmap</a>, Developers will be able to obtain the users&#8217; primary email addresses and the <a title="Formatting of Facebook Platform Canvas will change" href="http://wiki.developers.facebook.com/index.php/Roadmap_Canvas" target="_blank">formatting of the canvas will change</a> to better outline the brand of the application. To me this looks like <a id="aptureLink_9o1DUsqbTC" href="http://www.crunchbase.com/company/facebook">Facebook</a> is slowly &#8220;pushing away&#8221; the applications from Facebook.com to better highlight that they are the creations of third party developers, not <a id="aptureLink_9o1DUsqbTC" href="http://www.crunchbase.com/company/facebook">Facebook</a> itself.</p>
<p><a href="http://fappside.com/wp-content/uploads/2009/12/800px-Roadmap_Canvas.png"><img class="aligncenter size-medium wp-image-262" title="Roadmap_Canvas" src="http://fappside.com/wp-content/uploads/2009/12/800px-Roadmap_Canvas-300x182.png" alt="Proposed Roadmap Canvas of a Facebook Application" width="300" height="182" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://thefacebookjournal.com/2009/12/19/facebook-platform-good-experiences/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Migrate to streamPublish before December 20</title>
		<link>http://thefacebookjournal.com/2009/12/03/migrate-to-streampublish-before-december-20/</link>
		<comments>http://thefacebookjournal.com/2009/12/03/migrate-to-streampublish-before-december-20/#comments</comments>
		<pubDate>Thu, 03 Dec 2009 08:13:27 +0000</pubDate>
		<dc:creator>Kumar Rahul</dc:creator>
				<category><![CDATA[Facebook Platform]]></category>
		<category><![CDATA[How-To's]]></category>
		<category><![CDATA[Activity Streams]]></category>
		<category><![CDATA[bookmarked]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[FBJS]]></category>
		<category><![CDATA[FQL]]></category>
		<category><![CDATA[publish_stream]]></category>
		<category><![CDATA[showfeeddialog]]></category>
		<category><![CDATA[stream]]></category>
		<category><![CDATA[streampublish]]></category>

		<guid isPermaLink="false">http://fappside.com/?p=97</guid>
		<description><![CDATA[Yes. Facebook will deprecate all previous feed publishing functions after December 20, 2009 and your applications need to move to the OpenStream API by then. The new API implements the Streams feature, which is based on the Activity Streams standard. That&#8217;s not news. And nothing after this point is news anymore, but a short tutorial [...]]]></description>
			<content:encoded><![CDATA[<p>Yes. Facebook will deprecate all previous feed publishing functions after December 20, 2009 and your applications need to move to the <a title="Using the Open Stream API" href="http://wiki.developers.facebook.com/index.php/Using_the_Open_Stream_API" target="_blank">OpenStream API</a> by then. The new API implements the Streams feature, which is based on the <a title="Activity Streams standard home page" href="http://www.activitystrea.ms" target="_blank">Activity Streams</a> standard. <a title="Facebook Developers | Simplifying the Stream" href="http://developers.facebook.com/news.php?blog=1&amp;story=321" target="_blank">That&#8217;s not news</a>. And nothing after this point is news anymore, but a short tutorial on how to get ready before Facebook deprecates a few functions which your application might be using, eventually destabilisng it. One short tip at the end of it all for your application.<br />
So as per the new Streams functionality rolled out a few days ago across all Facebook profiles, as an application, you will need a special permission, <a title="Extended permissions/Stream permissions" href="http://wiki.developers.facebook.com/index.php/Extended_permissions/Stream_permissions" target="_blank">publish_stream</a>, to automatically publish stories to a user&#8217;s wall which is visible to the user&#8217;s friends. You need to ask for that permission by <a title="Extended permissions" href="http://wiki.developers.facebook.com/index.php/Extended_permissions" target="_blank">prompting</a> the user. Until you don&#8217;t have that permission, you can use the FBJS call <a title="Facebook.streamPublish" href="http://wiki.developers.facebook.com/index.php/Facebook.streamPublish" target="_blank">Facebook.streamPublish</a> to render a feed form and have the user approve or cancel the publishing of the story right there.</p>
<p>As I reckon, employing the FBJS call might be a better thing to do as users may not readily give your application permission to print stories to their walls whenever you want. In fact, let me present the case of why you should ONLY use the FBJS call for all the feed story publishing needs in your application.</p>
<p>What Facebook.streamPublish does is show a feed form to the user which has two choices, either to publish the story contained in the form to the user&#8217;s profile or skip it. And before I proceed on feed forms, a legal advice here. You cannot show feed forms to the user whenever your application feel likes, but you have to present the user a choice as he/she takes any action on your application, if they would like to have a feed story printed on their profile page and then only. The clause that mandates this behavior is <a title="Developer Principles and Policies" href="http://developers.facebook.com/policy/" target="_blank">DPP.VI.1</a> which says &#8220;You must not display a Feed form unless a user has explicitly indicated an intention to share that content, by clicking a button or checking a box that clearly explains their content will be shared.&#8221;. Moving on, a typical feed form looks like this:</p>
<p><img class="aligncenter size-full wp-image-104" src="http://fappside.com/wp-content/uploads/2009/12/feedform.jpg" alt="How a feed form looks like" width="570" height="285" /></p>
<p>You can supply the title(Fappside.com &#8211; Facebook News), the link of the title, the description text, thumbnail paths which will be resized to 90&#215;90 pixels, other custom properties(Founded and Category), and action links(Become a Fan). The arguments have to be passed in a JSON array alongwith some other parameters. The function is of the form:</p>
<div class="codetitle">Facebook.streamPublish: FBJS call method and parameters</div>
<div class="code">Facebook.streamPublish(user_message, attachment, action_links, target_id, user_message_prompt, callback, auto_publish, target_id);</div>
<p>I will detail two parameters only, the rest you can find explained <a title="Facebook.streamPublish Parameters" href="http://wiki.developers.facebook.com/index.php/Facebook.streamPublish#Parameters" target="_blank">here</a>.<br />
<strong>auto_publish</strong>: If this is set to true, and the currently logged in user has already given your application stream_publish permission, the user won&#8217;t see the feed form and instead the story will get published automatically. If you set AUTO_PUBLISH false, the feed form will show up no matter what.<br />
<strong> target_id</strong>: This argument tells on whose behalf to submit the story. If this is set to null, it defaults to on behalf of the user currently logged in. If it is the ID of a Facebook Page and the currently logged in user is the admin of that page, the story is published to the wall of the Page, on behalf of the page.</p>
<p>Here is some example code to print a story using Facebook.streamPublish in PHP, FBML &amp; FBJS. I am assuming you have a application already set up and you have a FBML canvas page.</p>
<div class="codetitle">PHP: Setting up the Feed Story parameters</div>
<div class="code">$feedStory = array(<br />
&#8216;name&#8217; =&gt; &#8216;Fappside.com &#8211; Facebook News&#8217;,<br />
&#8216;href&#8217; =&gt; &#8216;http://fappside.com&#8217;,<br />
&#8216;description&#8217; =&gt; &#8220;Fappside is all about what&#8217;s in and out of Facebook, real time&#8221;,<br />
&#8216;properties&#8217; =&gt; array(&#8216;Category&#8217; =&gt; &#8216;Facebook News &amp; Reviews&#8217;, &#8216;Founded&#8217; =&gt; &#8216;November 2009&#8242;)<br />
);$feedStory['media'] = array(<br />
array(<br />
&#8216;type&#8217; =&gt; &#8216;image&#8217;,<br />
&#8216;src&#8217; =&gt; &#8216;http://profile.ak.fbcdn.net/object2/1487/68/n187160399906_2453.jpg&#8217;,<br />
&#8216;href&#8217; =&gt; &#8216;http://fappside.com&#8217;<br />
),<br />
array(<br />
&#8216;type&#8217; =&gt; &#8216;image&#8217;,<br />
&#8216;src&#8217; =&gt; &#8216;http://fappside.com/wp-content/themes/headlines/thumb.php?src=http://fappside.com/wp-content/uploads/2009/12/pen.jpg&amp;h=90&amp;w=90&amp;zc=9&amp;q=95&#8242;,<br />
&#8216;href&#8217; =&gt; &#8216;http://fappside.com&#8217;<br />
)<br />
);</div>
<div class="codetitle">FBML + FBJS: Setting up the Javascript variables and a link to invoke the feed form</div>
<div class="code">&lt;script&gt;<br />
var js_feedStory = &lt;?php echo json_encode($feedStory); ?&gt;;<br />
var js_actionLinks = &lt;?php echo json_encode(array( array(&#8216;text&#8217; =&gt; &#8216;Become A Fan&#8217;, &#8216;href&#8217; =&gt; &#8216;http://www.facebook.com/fappside&#8217;))); ?&gt;;<br />
var js_targetId = null; //Keep this null if you want the feed story to appear on the user&#8217;s profile<br />
var js_userMsg = &#8221;; //The string which appears in the text input field. Note that the user can change this before publishing<br />
var js_headlineMsg = &#8220;What&#8217;s on your mind?&#8221;; //A text label above the text input field prompting the user to write something in the text input field<br />
var js_callback = null; //A Javascript callback function to handle any desired flow after the story has been published or cancelled(skipped)<br />
var AUTO_PUBLISH = false;<br />
var js_actorId = null;<br />
&lt;/script&gt;</p>
<p>&lt;a href=&#8217;#&#8217; onclick=&#8221;Facebook.streamPublish(js_userMsg, js_feedStory, js_actionLinks, js_targetId, js_headlineMsg, js_callback, AUTO_PUBLISH, js_actorId);&#8221;&gt;Publish&lt;/a&gt;</p></div>
<p>The above setup will print a feed story that looks like this by default:<br />
<img class="aligncenter size-full wp-image-98" src="http://fappside.com/wp-content/uploads/2009/12/compact.jpg" alt="Feed story default view" width="543" height="145" /></p>
<p>and like this when the See More link in the feed story is clicked:<br />
<img class="aligncenter size-full wp-image-99" src="http://fappside.com/wp-content/uploads/2009/12/expanded.jpg" alt="Feed story after clicking on See More" width="549" height="207" /></p>
<p>That&#8217;s it with the Facebook.streamPublish method. Do let me know in the comments section if you find anything while doing this yourself, interesting or annoying. Now onto the tip I promised.</p>
<p>This is actually handy and we have been looking for it since sometime. The <a title="FB:Bookmark" href="http://wiki.developers.facebook.com/index.php/Fb:bookmark" target="_blank">Add Bookmark</a> feature on the application canvas pages, instead of relying on the humility of the sole link in Facebook&#8217;s bottom navigation bar with the application icons to work its magic. All you have to do now is embed the FBML &lt;fb:bookmark /&gt; on your canvas pages and a pretty button will be rendered. It even works on profile tabs. If the user has already bookmarked your application, Facebook will know that beforehand and won&#8217;t show the button. There may also be situations where you want to know in your code if a specified user has bookmarked your application or not, and for that use the following FQL query, where $uid is the ID of the user you want to learn about.</p>
<div class="codetitle">PHP: FQL Query to retrieve information from bookmarked column of <a title="Permissions (FQL)" href="http://wiki.developers.facebook.com/index.php/Permissions_%28FQL%29" target="_blank">Permissions</a> table</div>
<div class="code">$facebook-&gt;api_client-&gt;fql_query(&#8220;select bookmarked from permissions where uid=&#8217;$uid&#8217;;&#8221;); //will return Array ( [0] =&gt; Array  ( [bookmarked] =&gt; 0/1 ) )</div>
<p>I think I have talked enough uptil now. I am looking for topics to write on that may interest you, so if you already know what you like to see, holler here and I will take note, and might do something. Looking forward to a conversation now with you in the comments section.</p>
<a href="http://www.crunchbase.com/company/facebook">CrunchBase Information on Facebook</a><br/>
]]></content:encoded>
			<wfw:commentRss>http://thefacebookjournal.com/2009/12/03/migrate-to-streampublish-before-december-20/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Facebook Platform Down</title>
		<link>http://thefacebookjournal.com/2009/11/23/facebook-platform-down/</link>
		<comments>http://thefacebookjournal.com/2009/11/23/facebook-platform-down/#comments</comments>
		<pubDate>Mon, 23 Nov 2009 11:57:34 +0000</pubDate>
		<dc:creator>Nick Pestov</dc:creator>
				<category><![CDATA[Facebook Platform]]></category>
		<category><![CDATA[Platform News]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[fbml]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[platform]]></category>
		<category><![CDATA[stream]]></category>

		<guid isPermaLink="false">http://roadseven.com/fappside/?p=3</guid>
		<description><![CDATA[The Facebook Platform has just recovered from about 10 hours of degraded performance.

Application developers were complaining about various FBML related problems from as long as 11 hours ago. 6 hours ago it was almost impossible to access a FBML canvas application. The errors ranged from FBML timezone renders to even basic HTML table renders (which by the way still continue to show for various apps). To reduce these kind of errors we suggest to turn off the canvas quick transitions option.]]></description>
			<content:encoded><![CDATA[<p><img src='http://thefacebookjournal.com/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/wp-content/thumbnails/3.png&amp;w=200&amp;h=150&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p>The <a href="http://Facebook.com" target="_blank">Facebook</a> Platform has just recovered from about 10 hours of degraded performance.</p>
<p>Application developers were complaining about various FBML related problems from as long as 11 hours ago. 6 hours ago it was almost impossible to access a FBML canvas application. The errors ranged from FBML timezone renders to even basic HTML table renders (which by the way still continue to show for various apps). To reduce these kind of errors we suggest to turn off the canvas quick transitions option.</p>
<p>It is noteworthy to mention that today is Tuesday and the performance issues were directly connected to Facebook&#8217;s weekly code-push, which occurs on Tuesdays, and that today&#8217;s code-push included the updated stream story structure, where stream stories can contain just 1 image with limited number of lines and a Read More link.</p>
<a href="http://www.crunchbase.com/company/facebook">CrunchBase Information on Facebook</a><br/>
]]></content:encoded>
			<wfw:commentRss>http://thefacebookjournal.com/2009/11/23/facebook-platform-down/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

