Developing on the Windows Live Platform Mike Ormond Developer & Platform Group Microsoft Ltd
Agenda Live SearchMicrosoft Silverlight Streaming by Windows Live
Microsoft Silverlight is a cross-browser, cross-platform implementation of.NET for building and delivering the next generation of media experiences & rich interactive applications for the Web.
Timeline & Packaging Timeline V1.0 Released September 2007, V1.1 in Alpha (timing and some functionality TBD) Moonlight – timing TBD (Novell) Packaging Browser plug-in, little dependency on other s/w
Silverlight V1.0 and V1.1 Silverlight V1.1 Silverlight V1.1 Silverlight V1.0 Silverlight V1.0 V1.1 will add.NET to V1.0 CoreCLR Independent subset of the.NET Framework
A richer web with Silverlight
Silverlight Streaming Provides developers a free, scalability-on-demand solution for Silverlight Free, 4GB hosting and streaming You build the application, we deliver the scale High quality, differentiated, controllable user experience Complete API Programmability
Using Silverlight Streaming What can it host? Silverlight applications Content (video) for use in Silverlight apps Invoking Default (requires JavaScript) –Special version of Silverlight.js –Parameters move to manifest Iframe (no JavaScript) –URL syntax
Packaging Content for SLS Single zip file archive (Video files restricted to 22MB) Add application manifest (manifest.xml) List of JavaScript files to load in order Set parameters (like Silverlight.createObject()) Add startup code to local page
Packaging Content for Silverlight Streaming
Expression Encoder Generates VC-1 (WMV) content Optimised for Silverlight Add leaders / trailers / watermarks / chapters / captions etc Output *.wmv file Complete Silverlight media player app Publish to Silverlight Streaming (plugin preview) Command line interface
Video & Expression Encoder
Silverlight Streaming API URL Credentials HTTP basic authentication (HTTPS required) –Username = Account ID –Password = Account Key File Set Group of files representing a Silverlight application Contained in a single zip archive Include a manifest (manifest.xml)
Silverlight Streaming API Operations PUT / POST Adds a file set Request body must be a file set (zip file) DELETE Deletes a file set GET Retrieves information specified by the URL Eg list of file sets, list of files in file set etc
Silverlight Streaming API
Contoso Bicycle Club Virtual Earth Spaces Silverlight Streaming (geo-sync'd) Expo Adventure Works Resorts Live ID associated with ASP.NET Profiles User Generated Video Content Accepting file uploads (via a form post) Dropping uploads into MSMQ Queue Encoding using Expression Encoder Uploading to Silverlight Streaming Playing videos from Silverlight Streaming Map Point Web Service Contacts Control Spaces Photo Control Windows Live Alerts Virtual Earth Contoso University Contacts API (Windows Live Data) Virtual Earth Spaces Silverlight Streaming Expo Windows Live Quick Apps (Beta) Free source code to build social networking sites
Considerations Cross domain issues Different domains = restricted access Use initialisation parameters (initParams) Hosting HTML hosted / non-hosted structure differs Access to HTML DOM
initParams
Live Search
Adding Search On Your Site Live Search Box Fast Simple No code Live Search Web Service Flexible Powerful Unlocks Capabilities
Live Search Box Basic Search either web or specific site Advanced Web search plus optional –Site Search (multiple sites) –Search Macro Customisation Options
Live Search Box
Live Search Web Service SOAP API Get application ID Add Web Reference …and play
Offset Total Source Result []Results SourceResponse[] Responses... ResultFields Source String CultureInfo String AppID SourceRequest[] Requests String Query SearchRequest MSNSearchService.Search(SearchRequest) SearchResponse The Live Search API
Additional Resources Main Hub Silverlight Main Silverlight Site – Silverlight Streaming Site – Silverlight Streaming SDK – Live Search Live Search Service Home – Live Search Interactive SDK –
MSDN in the UK Visit Newsletter Events Nugget Videos Blogs
© 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.