Open Social A Quick Introduction and Tutorial. What is Open-Social in a Nutshell? Open-Social provides a API specification for social networking sites.

Slides:



Advertisements
Similar presentations
MySpace Developer Platform Dive Into OpenSocial Maxwell Newbould Development Manager OpenSocial Container Team, MySpace Seattle.
Advertisements

WEB SERVICES. FIRST AND FOREMOST - LINKS Tomcat AXIS2 -
OpenSocial CS : Survey of Contemporary Technologies.
A Blackboard Building Block™ Crash Course for Web Developers
Using JavaServer Pages Harry R. Erwin, PhD CIT304/CSE301.
How to post to Wordpress Chruton Budd. Click on the Login link.
SERVER web page repository WEB PAGE instructions stores information and instructions BROWSER retrieves web page and follows instructions Server Web Server.
Servlets and a little bit of Web Services Russell Beale.
Eric Meeks (UCSF) Leslie Yuan (UCSF) OpenSocial Gadget Update from UCSF June 17, 2011 – Harvard Profiles User Group Meeting.
Web Page Behavior IS 373—Web Standards Todd Will.
Voice Mail for social networks Maxim Kogan Roey Ben Haim Supervisor Assaf Solomovitch Lab Chief Eng. Ilana David Software Systems Lab Department of Electrical.
Does Ajax suck? CS575 Spring 2007 Chanwit Suebsureekul.
Creating & Attaching CSS An CSS Primer Tutorial. A New CSS Document Create a new CSS Document in Dreamweaver using the “New” option under the File Menu.
Introduction to JavaScript. Aim To enable you to write you first JavaScript.
Toward an OpenSocial Life Science Gateway Wenjun Wu, Michael E. Papka, Rick Stevens.
An Introduction to ASP.NET Web Pages 2 Module 1: Webmatrix Installation and Your First Web Site Tom Perkins.
Christopher M. Pascucci Basic Structural Concepts of.NET Browser – Server Interaction.
Lecture 3 – Data Storage with XML+AJAX and MySQL+socket.io
Reading Data in Web Pages tMyn1 Reading Data in Web Pages A very common application of PHP is to have an HTML form gather information from a website's.
JavaScript & jQuery the missing manual Chapter 11
OpenSocial ANATOMY AND LIFE CYCLE Paul Lindner, Architect, Hi5 Networks November 27th, 2007.
Samuvel Johnson nd MCA B. Contents  Introduction to Real-time systems  Two main types of system  Testing real-time software  Difficulties.
Dynamic Web Sites Chris North cs3724: HCI. Presentations matt ketner, sam altman, mike gordon Vote: UI Hall of Fame/Shame?
Server-side Scripting Powering the webs favourite services.
Building Facebook Application with Flex Sung Wu Aaron Tong 2008/1/23.
Web Design ITM 2010 Tutorial 1 Prepared by Wang Shiyu.
1 Web Basics Section 1.1 Compare the Internet and the Web Compare Web sites and Web pages Identify Web browser components Describe types of Web sites Section.
Wyatt Pearsall November  HyperText Transfer Protocol.
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
Writing various AJAX forms in Drupal 7 1. Overview of Form API 2. Ctools 2.1 Ctools features 3. Ajax 3.1 Ajax Forms in Drupal 4. Putting it all together.
Matrix Mapping Tool Sam Gross Internship at Virtual Technology Corporation.
OpenSocial Kevin Marks Chris Chabot Agenda Introduction - What is OpenSocial Building an OpenSocial Application Best Practices Kinds of container Becoming.
Putting it all together Dynamic Data Base Access Norman White Stern School of Business.
An Introduction to JavaScript Summarized from Chapter 6 of “Web Programming: Building Internet Applications”, 3 rd Edition.
Execute Workflow. Home page To execute a workflow navigate to My Workflows Page.
1 Chinese Information Processing : Using Computers to Teach and Learn Chinese Week 6 and 7: Creating and maintaining web pages - html and ftp.
Peter Laird. | 1 Building Dynamic Google Gadgets in Java Peter Laird Managing Architect WebLogic Portal BEA Systems.
The OpenSocial API CS : Survey of Contemporary Technologies.
API Crash Course CWU Startup Club. OUTLINE What is an API? Why are API’s useful? What is HTTP? JSON? XML? What is a RESTful API? How do we consume an.
Implementing and Using the SIRWEB Interface Setup of the CGI script and web procfile Connecting to your database using HTML Retrieving data using the CGI.
Cookies (continue). Extracting Data From Cookies Data retrieved from a cookie is a simple text string. While there is no specific JavaScript function.
AJAX James Kahng. Congrats Jack Guo for Angular entryentry This week’s coding challenge at end of talk.
Ajax and the GWT. Ajax  Asynchronous JavaScript And XML  Technology behind interactive web sites  Provide smoother experience than conventional web.
John Maver (978)
USING JAVASCRIPT TO SHOW AN ALERT Web Design Sec 6-2 Part or all of this lesson was adapted from the University of Washington’s “Web Design & Development.
Event Handling (the right way). A Simple Web Page Events - Summary The web page looks like this:
IS2803 Developing Multimedia Applications for Business (Part 2) Lecture 2: Introduction to IS2803 Rob Gleasure
Chapter 27 Getting “Web-ified” (Web Applications) Clearly Visual Basic: Programming with Visual Basic nd Edition.
CHAPTER 8 AJAX & JSON WHAT IS AJAX? Ajax lets you…
PHP Form Processing * referenced from
Orion 'Code Edit': A Really Sweet Stand-Alone Code Editor Eric Moffatt Orion Committer IDS Web IDE (Tooling)
Virtual techdays INDIA │ November 2010 Integrating Social Networks with ASP.NET Krishna Chaitanya T │ Future Web Research Lab, SETLabs, Infosys WE.
WEB DESIGN CONCEPTS Brayden Burr. UNDERSTANDING THE CONTENT.
COOKIES Gloria Soria Network Security COSC 356. What is a Cookie? A cookie is a piece of text that a Web Server can store on a user's hard disk. Cookies.
WEB SECURITY WEEK 1 Computer Security Group University of Texas at Dallas.
JavaScript Tutorial First lecture 19/2/2016. Javascript is a dynamic computer programming language. It is lightweight and most commonly used as a part.
111 State Management Beginning ASP.NET in C# and VB Chapter 4 Pages
Activities in OpenSocial CS : Survey of Contemporary Technologies.
Data Virtualization Tutorial… SSL with CIS Web Data Sources
Active Server Pages Computer Science 40S.
AJAX and jQuery AJAX AJAX Concepts, XMLHttpRequest, jQuery AJAX: $.ajax(), $.get(), $.post() jQuery AJAX XMLHttpRequest SoftUni Team Technical Trainers.
Google Web Toolkit Tutorial
Data Virtualization Tutorial… CORS and CIS
Programming Assignment #1
Understanding WordPress
Part 2 Setting up a web server the easy way
Lecture 12: The Fetch Api and AJAx
Introduction to JavaScript
Web Application Development Using PHP
Cross Site Request Forgery (CSRF)
Presentation transcript:

Open Social A Quick Introduction and Tutorial

What is Open-Social in a Nutshell? Open-Social provides a API specification for social networking sites This allows all applications / gadgets to work across every site that implements the specification (in theory) So you build a gadget for iGoogle, and it works on: ORKUT, BEBO, MYSPACE, NING, etc (but not Facebook, sorry)

What I'm going to show: How to make a simple open-social gadget How to get current user information How to get friends information How to store and return custom application data Then I'm going to give you something to do on your own!

How to Make an Open-Social Gadget You provide a simple XML file which contains your gadget HTML and JavaScript code Thats it! Here is a hello-world application: <![CDATA[ Hello, world! ]]> And here it is working in iGoogle (that means demo it)

The Demo: Tools to be used We're going to use these tools: 1.A Text Editor –VMWare Player –Apache Shindig –Partuza And these sites: 1.iGoogle – – les/tutorial/tutorial-0.8.html – ensocial.DataRequest_(v0.8) – s/0.8/reference/

The Demo: Take a look at your VM The Virtual machine has two web-applications installed 1.Apache Shindig ( 2.Partuza ( - a full social networking sitehttp://partuza We can use these two web-apps to test out gadgets. For example navigate to: Or You can load any gadget into either page in order to test it. Lets do that with out hello-world xml file....

The Demo: Getting Social Data I'll be using some stuff covered here: Note: We do everything in javascript. (sorry!) We fetch data using an object called the DataRequest object var req = opensocial.newDataRequest(); Then we 'add' a bunch of data requests to this object which represent what we want to retrieve req.add(some_request_for_data); Then we send it along with the name of a function that will handle the callback: req.send(callback_function);

The Demo: Getting Social Data So to get information about a person (in this case the current user) we do this: var req = opensocial.newDataRequest(); req.add(req.newFetchPersonRequest(opensocial.DataRequest.PersonId.VIEWER), 'viewer'); req.send(someCallBackFunction); You can see more request types here:

The Demo: Getting Social Data Let me do this for real....

The Demo: Getting Social Data Wow! It worked! (hopefully)

The Demo: Getting Social Data Obviously its more useful if you also have friend information. Getting your friends-list is similar: var req = opensocial.DataRequest(); req.add(req.getPeopleRequest(idSpec, parameters), 'friend-data'); The 'idSpec' object just describes what people you want information for, and the 'parameters' object just specifices things like the number to retrieve, for example: var idSpec = opensocial.newIdSpec({ "userId" : "VIEWER", "groupId" : "FRIENDS" }); var parameters = {}; parameters['max'] = 30;

The Demo: Getting Application Data The javascript API also allows you to store application-data at the social network using the same DataRequest object. It provides three methods, for fetch, store, and delete. For example, to fetch basic data stored by the viewer: var idSpec = opensocial.newIdSpec({"userId" : "VIEWER"}); req.add(req.newFetchPersonAppDataRequest(idSpec, 'numberOfHelloes'), 'appData'); Or to add / update some information we could do something like this: var req = opensocial.newDataRequest(); req.add(req.newUpdatePersonAppDataRequest("VIEWER", 'numberOfHelloes', 5)); req.send();

Time to Do Stuff Yourselves! I showed you how to retrieve application data for the current user, but how do you retrieve application data from other users? Your goals for the rest of the session: 1.Make an application where you can click a 'hello' button and it increments a hello count, which it sends to the server. When the application loads it should show you how many times you said hello. –Make an application that shows a list of your friends and you can say hello to each of them. For example, if I said 'hello' three times to bob, when bob loads the application it will say '3 hellos received from Matthew' These links will be useful: