<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3.1" -->
<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/"
	>

<channel>
	<title>Toojoor &#187; javascript</title>
	<link>http://www.toojoor.com/blog</link>
	<description>Experiences with social networks, javascript, opensocial, google gadgets, etc.</description>
	<pubDate>Fri, 14 Dec 2007 06:51:18 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.1</generator>
	<language>en</language>
			<item>
		<title>How to identify the current opensocial container</title>
		<link>http://www.toojoor.com/blog/2007/12/11/how-to-identify-the-current-opensocial-container/</link>
		<comments>http://www.toojoor.com/blog/2007/12/11/how-to-identify-the-current-opensocial-container/#comments</comments>
		<pubDate>Tue, 11 Dec 2007 08:44:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[how to]]></category>

		<category><![CDATA[javascript]]></category>

		<category><![CDATA[opensocial]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[hi5]]></category>

		<category><![CDATA[igcheck]]></category>

		<category><![CDATA[igoogle]]></category>

		<category><![CDATA[ning]]></category>

		<category><![CDATA[orkut]]></category>

		<guid isPermaLink="false">http://www.toojoor.com/blog/2007/12/11/how-to-identify-the-current-opensocial-container/</guid>
		<description><![CDATA[Within my IGCheck gadget (to analyze Google Gadget API compliance for opensocial containers) , I have to identify in which container the gadget code is running.
Currently, I have to differentiate between IGoogle itself, Ning, Orkut &#38; Hi5. They are the only containers that I can access as of now. If you know of more, please [...]]]></description>
			<content:encoded><![CDATA[<p>Within my <a href="http://www.toojoor.com/blog/2007/12/09/opensocial-containers-check-google-gadget-api-compliance-with-gadget-igcheck-dev-tool/">IGCheck gadget (to analyze Google Gadget API compliance for opensocial containers) </a>, I have to identify in which container the gadget code is running.</p>
<p>Currently, I have to differentiate between IGoogle itself, Ning, Orkut &amp; Hi5. They are the only containers that I can access as of now. If you know of more, please let me know!</p>
<p>To distinguish among them, I use the following strategy:</p>
<ul>
<li>following <a href="http://groups.google.com/group/opensocial/web/opensocial-gadget-parameters">this sample</a>, I parse as an associative array the arguments of the url (located at "window.location.search.substring(1)")  used to launch the gadget. Then, I get the value of the key 'synd'. It give either: 'ig' (for igoogle), 'hi5' or 'orkut' as of now. So, already 3 out of 4 identified!</li>
<li>then, for those like <a href="http://www.toojoor.com/blog/2007/12/09/opensocial-containers-check-google-gadget-api-compliance-with-gadget-igcheck-dev-tool/">Ning that don't run their opensocial APIs with the gmodules infrastructure</a>, I obtain the url argument with key 'location' and look for known string (currently 'ning') to identify the last one.</li>
</ul>
<p>That's the most "container-orthogonal" way that I found up to now, I you have any better way, let us know!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.toojoor.com/blog/2007/12/11/how-to-identify-the-current-opensocial-container/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Opensocial containers: check Google Gadget API compliance with gadget &#8220;IGCheck&#8221; (dev tool)</title>
		<link>http://www.toojoor.com/blog/2007/12/09/opensocial-containers-check-google-gadget-api-compliance-with-gadget-igcheck-dev-tool/</link>
		<comments>http://www.toojoor.com/blog/2007/12/09/opensocial-containers-check-google-gadget-api-compliance-with-gadget-igcheck-dev-tool/#comments</comments>
		<pubDate>Sun, 09 Dec 2007 10:36:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[javascript]]></category>

		<category><![CDATA[opensocial]]></category>

		<category><![CDATA[gadget]]></category>

		<category><![CDATA[google]]></category>

		<category><![CDATA[hi5]]></category>

		<category><![CDATA[igcheck]]></category>

		<category><![CDATA[ning]]></category>

		<category><![CDATA[orkut]]></category>

		<guid isPermaLink="false">http://www.toojoor.com/blog/2007/12/09/opensocial-containers-check-google-gadget-api-compliance-with-gadget-igcheck-dev-tool/</guid>
		<description><![CDATA[When Google launched the Opensocial initiative, it was clearly stated that the current status is beta. As a prooof, the current version of the API is 0.5.
The opensocial containers have to implement 2 APIs to be conform with this initiative:

the opensocial API itself that provides access to the social data (people, their profile, their activities, [...]]]></description>
			<content:encoded><![CDATA[<p>When <a href="http://googleblog.blogspot.com/2007/11/opensocial-makes-web-better.html">Google launched the Opensocial initiative</a><a href="http://googleblog.blogspot.com/2007/11/opensocial-makes-web-better.html">,</a> it was clearly stated that the current status is beta. As a prooof, the current version of the API is 0.5.</p>
<p>The opensocial containers have to implement 2 APIs to be conform with this initiative:</p>
<ul>
<li>the <a href="http://code.google.com/apis/opensocial/docs/">opensocial API itself that provides access to the social data</a> (people, their profile, their activities, etc....</li>
<li>the <a href="http://www.google.com/apis/homepage/guide1.html">Google Gadget API</a> which allow opensocial gadgets to be integrated in containers, interact with the external world (Xmlhttprequest, statistics via Google Analytics, etc....)  and to "achieve things" with the opensocial data</li>
</ul>
<p>As <a href="http://opensocialapis.blogspot.com/2007/11/thoughts-on-implementing-opensocial-for.html">opensocial initiative specs are still beta</a> and many partners are already and will get involved, I noticed very early on in my first experiences discrepancies between implementations on the various containers that I can already access (or at least their sandbox...) : <a href="http://www.google.com/ig">igoogle</a> itself, Google's <a href="http://www.orkut.com/">Orkut</a>, <a href="http://www.hi5.com/">Hi5</a>, <a href="http://www.ning.com/">Ning</a>.</p>
<p>So, I decided to implement this Gadget IGCheck since those discrepancies have to get eliminated over time in order to reach the initial promise of Opensocial "Write Once, Run Anywhere".</p>
<p>The purpose of IGCheck is to test and report which functions of the Google Gadget API (i.e., prefixed with _IG_ in their Javascript name) are available in which containers. IGCheck then produces a report comparing the current test with reference data.</p>
<p>To get current status, check <a href="http://www.toojoor.com/blog/igcheck-results/">this page</a> to see the most current result that we can produce concerning igoogle, <a href="http://opensocialapis.blogspot.com/2007/11/hi5-ning-and-plaxo-sandboxes-go-live.html">orkut, hi5</a> &amp; <a href="http://blog.pmarca.com/2007/11/report-from-the.html">ning</a>.</p>
<p>As the number of opensocial partners that are open for tests remain limited as of now, the following  conclusions can be drawn as of now :</p>
<ul>
<li>Orkut uses the <a href="http://gigaom.com/2006/07/11/what-are-gmodules/">gmodules infrastructure of Google Gadget</a>s to run the opensocial api (see the line "host" in the result array)</li>
<li>Hi5 does the same and as such seems to have "outsourced" the task of running its opensocial container to Google (see the line "host" in the result array)</li>
<li>Ning has followed a more independent approach by implementing a fully independent container named "proxy.ning.com" (see the line "host" in the result array)</li>
<li>The choice of Ning has currently drawbacks: IGCheck finds only 6 _IG_ functions whereas 55 are present in the others.  (see the line "count" in the result array)</li>
<li>Ning seems to have created its own function(s) with _IG_Prefix: a function "G_Tabs" is present in the Ning container but nowhere else(see the line "_IG_Tabs" in the result array).</li>
</ul>
<p>The conclusions above are preliminary results only:</p>
<ul>
<li>the current and future containers will have to converge after the current pioneering phase in order to reach the promise "Write Once, Run Anywhere" although the fact that IGCheck itself is a proof of partial achievement (IGCheck source code is unique for all containers)</li>
<li>the opensocial initiative will have to get more precise on Google Gadget API requirements: the debate on this topic is currently hot on the <a href="http://groups.google.com/group/opensocial">opensocial discussion group</a> as nothing (at least to my knowledge...) has been clearly and officially stated in this area until now . <a href="http://groups.google.com/group/opensocial/web/gadgets-api-poll">A poll is under way</a>. The target is to get opinions of developpers and eventually to define to which extent opensocial containers have to implement the _IG_ API.</li>
</ul>
<p>To use IGCheck in the above container, please use <a href="http://www.toojoor.com/opensocial/js/google/gadget/ig-check.xml">http://www.toojoor.com/opensocial/js/google/gadget/ig-check.xml</a> as URL for application / gadget in the appropriate box on your social network of choice.</p>
<p><a href="http://www.toojoor.com/blog//">Stay tuned</a>  (via <a href="http://www.toojoor.com/blog/feed/">RSS</a> also): more result to come when we can access more containers....</p>
<p><span style="font-weight: bold"></span>If you want to reproduce my tests and don't know how to access, read my 2 tutorials for <a href="http://www.toojoor.com/blog/2007/12/02/how-to-test-opensocial-api-in-orkuts-sandbox/">Orkut</a> &amp; <a href="http://www.toojoor.com/blog/2007/12/02/how-to-test-opensocial-on-hi5/">Hi5</a>. The one about Ning will follow shortly.</p>
<p><span style="font-weight: bold">PS</span>: if you now of other containers that are open for test, please, let us know!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.toojoor.com/blog/2007/12/09/opensocial-containers-check-google-gadget-api-compliance-with-gadget-igcheck-dev-tool/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
