Session 1 - The Windows Live Platform

25
The Windows Live Dev Platform Martin Parry Developer & Platform Group Microsoft Ltd [email protected] http://martinparry.com

description

Developing on the Windows Live Platform Windows Live defines a set of services and components that can be used in your web applications, whether or not you use Microsoft's server platform. In this event we'll show how to use some of those services in your own applications. Agenda: 1. The Platform for the Web In this session we look at a selection of Windows Live services and build them into an application. We'll look at the Windows Live Contacts API - really useful for social networking functionality but also a great example of what's possible using the Windows Live Data service. We'll build maps into an application using the Virtual Earth map control. We'll let our users browse their photos using the Windows Live Spaces Photos control, and we'll enable authentication in our app using Windows Live ID. 2. Silverlight Streaming, and Windows Live Search Silverlight Streaming by Windows Live is an innovative service that allows you to host your Silverlight applications, including rich media content, for delivery to various client platforms. In this session we'll show you how to build a simple Silverlight application, encode some media content, and host it all with Windows Live. We'll extend the sample application to show you how you can leverage the Windows Live Search functionality too. For more details and the original slidedeck, visit http://www.microsoft.com/uk/msdn/events/new/Detail.aspx?id=111

Transcript of Session 1 - The Windows Live Platform

Page 1: Session 1 - The Windows Live Platform

The Windows Live Dev Platform

Martin ParryDeveloper & Platform GroupMicrosoft [email protected]://martinparry.com

Page 2: Session 1 - The Windows Live Platform

Agenda

What is Windows Live?AuthenticationMapsAddress BookPhotosWindows Live Quick AppsWindows Live Desktop Apps

Page 3: Session 1 - The Windows Live Platform

What is Windows Live?

Web ServicesHotmail, Virtual Earth, LiveID, Spaces, etc., etc.

Client ApplicationsMessenger, Mail, Photo Gallery, etc.

A platform of componentsYour app can consume any/all servicesFeatures that would be “hard” to build yourself

Page 4: Session 1 - The Windows Live Platform

Terms of UseBased on Unique Users Per MonthApps with fewer than 1 Million UUs per month... Pay nothing

Averaged over a 3 month period

Services exposed through controls... Pay nothingServices in beta... Pay nothingApps with more than 1 Million UUs per month...

You have a choice...Pay $0.25 per UU per year, orEnter into revenue-sharing ad-funding agreement with Microsoft

There are some exceptions...Search: free up to 750,000 queries per monthVirtual Earth: free up to 3,000,000 map tiles per month

Page 5: Session 1 - The Windows Live Platform

Our Demo Site

Page 6: Session 1 - The Windows Live Platform

Authentication

Windows Live ID ServiceOk, it’s Passport, but now it’s different...

FederatedCan integrate with Windows CardSpace

300 Million users have a Windows Live IDApp still has a Users database, but freed from storing a secret-per-user (now 1 per app)Are all Live IDs [email protected] ?

Managed vs. unmanaged members

Page 7: Session 1 - The Windows Live Platform

Windows Live ID Sign-in

There’s a “control” – actually an iframeRegister your application at MS website

Tell us your hostname, a secret, and a return URLYou get a unique ID; you embed it in your app

Implement that page at the return URLUse your secret to decrypt the data returned

Action, App Context, Security Token

Page 8: Session 1 - The Windows Live Platform

Windows Live ID

Page 9: Session 1 - The Windows Live Platform

Custom Domains

Create Live IDs in your own domainYou tell us the name of your domain

...and make some changes to your DNS records

Use our website to manage accountsOr use the Custom Domains SDK

Manage accounts programmatically

Page 10: Session 1 - The Windows Live Platform

Custom Domains APIs

Create/Delete/Enum/Rename membersEvict/Import unmanaged membersReset member passwordConvert between member name & NetIdEnum domainsGet domain info

Page 11: Session 1 - The Windows Live Platform

Virtual Earth

Online database of maps & aerial photo data~17 PetabytesPowerful search

linked to Windows Live SearchFind businesses by location, type, etc.

Includes route calculator for driving directionsBirds-eye View

Page 12: Session 1 - The Windows Live Platform

Virtual Earth Map Control

Javascript object model for maps/photosFull control over searching, route calc., etc.Can overlay your own informationCan capture events raised by map interactionJust released version 6

Page 13: Session 1 - The Windows Live Platform

Virtual Earth Map Control

Page 14: Session 1 - The Windows Live Platform

Windows Live Contacts API

Users can grant permission:To a web applicationTo access their Windows Live AddressBook

The app requests read-only or read/writeApp uses RESTful model to access data, e.g.https://cumulus.services.live.com/[email protected]/LiveContacts/Contacts(1)/Emails(1)

Implemented via Windows Live Data service

Page 15: Session 1 - The Windows Live Platform

Windows Live Data

RESTful access to data in the Live platformImplements permission granting/revoking UX

The user is in control

Issues security tokens that apps can retainOnce granted, permission is perpetual

Until revoked

Page 16: Session 1 - The Windows Live Platform

Live Data – Sequence of Events

1. User must grant permission for this app to access datahttp://ux.cumulus.services.live.com/pgux/default.aspx?...

2. App receives authentication token via HTTP POST3. App accesses data via REST, supplying authentication

token4. User can review list of permitted applications

http://ux.cumulus.services.live.com/prux/default.aspx 5. User can revoke permissions for specific applications

Page 17: Session 1 - The Windows Live Platform

Windows Live Contacts API

Page 18: Session 1 - The Windows Live Platform

Windows Live Spaces

Social Networking SiteBlogging, file-sharing, photo-sharing, etc.Live Spaces Photo Control...

Embed in your web pageAllows users to select from their photosTo share photos with your web app

Can share photos via 2 different URLs...

Page 19: Session 1 - The Windows Live Platform

Windows Live Spaces Photo Control

Page 20: Session 1 - The Windows Live Platform

Windows Live Quick Apps

Projects available on http://codeplex.comCustomizable, out-of-box solutions for common web scenariosFull source code available

Contribute to the projects, orTake the source code and build your app

Page 21: Session 1 - The Windows Live Platform

Windows Live Quick Apps

Page 22: Session 1 - The Windows Live Platform

Windows Live Desktop Installer

Unified installer for all WL desktop apps...Windows Live MailWindows Live MessengerWindows Live Photo GalleryWindows Live WriterWindows Live ToolbarWindows Live OneCare Family Safety

http://get.live.com/wl/desktop

Page 23: Session 1 - The Windows Live Platform

Additional Information

Windows Live IDhttp://dev.live.com/liveid

Custom Domainshttp://dev.live.com/customdomains

Virtual Earthhttp://dev.live.com/virtualearth

Windows Live Contactshttp://dev.live.com/contacts

Windows Live Spaces Controlhttp://dev.live.com/spacescontrol

Page 24: Session 1 - The Windows Live Platform

MSDN in the UK

Visit http://msdn.co.uk NewsletterEventsScreencastsBlogs

Page 25: Session 1 - The Windows Live Platform

© 2007 Microsoft Ltd. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the

date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.