20071204 Arc Ready Windows Live Platform


Published on

Published in: Technology, News & Politics
  • all system in the world we be windows
    Are you sure you want to  Yes  No
    Your message goes here
  • all system
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • 05/28/09 ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
  • 20071204 Arc Ready Windows Live Platform

    1. <ul><li>David Chou </li></ul><ul><li>[email_address] </li></ul><ul><li>Architect </li></ul>Windows Live Platform
    2. Relevant Interactive Social The Web Has Evolved “ comScore refines web metrics system to more accurately reflect how Internet users spend their time online, and not just the number of web pages they view.” comScore, Inc. “ Nielsen/NetRatings adds “total minutes” metric as best measure of Online engagement” Nielsen/NetRatings “ Are social computing themes like user-generated content and communication fundamentally changing the rules of business? We think they are—in a big way.” Forrester Research Personal Transactional Informational “ People keep asking me what I think of it now that it's done. Hence my protest: The Web is not done!” – Tim Berners-Lee Founder, World Wide Web
    3. 1 st Party Sites 3 rd Party Sites Developer Platforms <ul><li>Shorter time to market </li></ul><ul><li>Better reliability </li></ul><ul><li>Worldwide syndication </li></ul>Web Services and APIs evolves 1 st party web sites into rich, serious development platforms for next generation web applications. <ul><li>More monetization options </li></ul><ul><li>Broader more compelling experiences </li></ul><ul><li>Support for multiple devices </li></ul>The Web Has Evolved Xbox Live Evolution Benefits
    4. Secure & Respectable Experiences & Communities Rich capabilities Open and Accessible Affordable & Scalable Support & Commitments
    5. <ul><li>Standards - XML, HTML, CSS, SOAP, REST, Atom, RSS, BitTorrent, HTTP, SMTP, FTP, SMS, VoIP, etc. </li></ul><ul><li>Tools - LAMP, WISA, JavaScript, .NET, Java, Visual Studio, Eclipse, etc. </li></ul><ul><li>Media - video streaming, podcasts, vcasts, electronic gaming, interactive TV, Microsoft IP TV, Microsoft Media Center </li></ul><ul><li>Runtimes - hosting environment, servers, desktops, browsers, clients, mobile devices, Microsoft Xbox, Sony Playstation, Nintendo Wii, Adobe AIR, Microsoft Silverlight, etc. </li></ul><ul><li>Networks - Internet, Wi-Fi, VPN, WAN, cellular, wireless LAN, DSL, FiOS, etc. </li></ul>Web as a Platform
    6. <ul><li>Utilities - Amazon EC2, programmableweb, etc. </li></ul><ul><li>Data - Amazon S3, Google Base, Microsoft Astoria, etc. </li></ul><ul><li>Storage - Google GDrive, Windows Live Skydrive, XDrive, DriveHQ, Box.net, Elephant Drive, etc. </li></ul><ul><li>Messaging - Amazon SQS, Microsoft BizTalk Services, etc. </li></ul><ul><li>Identity - Windows Live ID, Google Accounts, Yahoo! Accounts, OpenID, etc. </li></ul>Web as a Platform
    7. <ul><li>Personalization - My Yahoo!, iGoogle, Netvibes, Windows Live, bookmarks, favorites, etc. </li></ul><ul><li>Transformation - Microsoft BizTalk Services </li></ul><ul><li>Composition - Yahoo! Pipes, Google Mashup Editor, Microsoft BizTalk Services, etc. </li></ul><ul><li>Orchestration - Microsoft BizTalk Services </li></ul><ul><li>Privacy - TBD; in general, interoperable services to give users control over what parts of their online presences to share and what not to share </li></ul>Web as a Platform
    8. <ul><li>Information - Google Analytics, Google Trends, MSN, Yahoo! News, Yahoo! Finance, Upcoming, etc. </li></ul><ul><li>Visualization - Google Maps, Virtual Earth, Yahoo! Maps, Google Gadgets, Windows Live Gadgets, Vista Sidebar Gadgets, mobile clients, etc. </li></ul><ul><li>Commerce - Amazon, eBay, Paypal, Google Checkout, MSN Shopping, Microsoft Points, etc. </li></ul><ul><li>Monetization - Google AdSense, Google AdWords, Microsoft AdCenter, pay-per-click, cost-per-action, impressions, etc. </li></ul><ul><li>Accessibility - TellMe, Google Translate, Live Search Translator, services for the visually impaired like Google Accessible Search, plusmo, ZapText, etc. </li></ul>Web as a Platform
    9. <ul><li>Search - Google Search, Yahoo! Search, Ask, Windows Live Search, etc. </li></ul><ul><li>Distribution - Facebook Platform, Microsoft Popfly, etc. </li></ul><ul><li>Aggregation - Newsgator, Bloglines, Rojo, NetNewsWire, My Yahoo!, Windows Live, iGoogle, PageFlakes, etc. </li></ul><ul><li>Syndication - Twitter, Jaiku, Pownce, Facebook Newsfeed, Feedburner, Technorati, etc. </li></ul><ul><li>Portability - Gadgets, Widgets, Google OpenSocial, etc. </li></ul>Web as a Platform
    10. <ul><li>User Content - Blogger, WordPress, LiveJournals, Wikipedia, CrowdRules, Flickr, Youtube. Epinions, Urban Dictionary, Trip Advisor, eHarmony, etc. </li></ul><ul><li>Communities - MySpace, Facebook, Orkut, hi5, Bebo, Windows Live Spaces, Friendster, LinkedIn, World of Warcraft, Xbox Live, Second Life, etc. </li></ul><ul><li>Folksonomies - del.icio.us, Digg, reddit, Simpy, Furl, Netvouz, etc. </li></ul><ul><li>Collaborative Filtering - Amazon, half.ebay.com, NetFlix, StumbleUpon, etc. </li></ul><ul><li>Mashups - Microsoft Popfly, JackBe, etc. </li></ul>Web as a Platform
    11. Web as a Platform
    12. + Converging Worlds Online Enterprise Devices Desktop
    15. Microsoft Services Platform (Folder) Services Services Streaming
    16. 465M Unique Users 42 Markets 21 Languages 2.5B Queries/Month 5B Docs, 400M Images 280M Active Accounts 7.5B Messages/Day 10M Video Conversations/Day 70M+ Spaces 120M Unique Users 1.5B Page Views/Month 150K Spaces Created/Month 280M Accounts WW Coverage 85+ Mobile Carriers 32 Markets Multi-channel Device-independent
    17. 1981 1992 1995 2007 -> 2000 Adoption
    18. <ul><li>Informed </li></ul><ul><li>Connected </li></ul><ul><li>Protected </li></ul>The ideal companion to Windows, bringing your online world together. Photos Files Groups Calendar Contacts Safety OneCare Networking Lists <ul><ul><li>2007 Office System </li></ul></ul><ul><ul><ul><li>Extend Windows Vista ™ </li></ul></ul></ul><ul><ul><li>Scale </li></ul></ul><ul><ul><li>Community </li></ul></ul><ul><ul><li>MSN ® </li></ul></ul><ul><ul><li>Search </li></ul></ul><ul><ul><li>Services Platform </li></ul></ul><ul><ul><li>Development Platform </li></ul></ul>PC Web Phone <ul><li>Communications </li></ul><ul><li>Sharing </li></ul><ul><li>Anywhere Access </li></ul><ul><li>Safety </li></ul>Innovative, yet familiar tools that work seamlessly together on the Web and across multiple devices
    19. Sis/VARs/ISVs/Interactive Agencies/Hobbyists Windows Live Platform Schools Mobile Operators Network Operators Local Govt And more to come Distribution Channels @edu @net @mobile Virtual Earth ™ Windows Live Offers The Goal Deeper, broader end-user engagement
    20. Toolsets Service APIs & Controls Professional Developer Designer Hobbyist Audience Product Rich Media Experiences Store & Share Find & Locate Identity & Authentication Silverlight Streaming Spaces Virtual Earth Live ID Contacts Search Communicate & Stay Connected Alerts PopFly Expressions Visual Studio Terms of Use Simple & Consistent Training & Support Service Level Agreements Flexible Monetization Offerings SharePoint Designer IM & Presence Commerce Agents Expo
    21. Tools Microsoft Services Platform Platform Flexible Monetization Options Rich Media Experiences Store & Share Find & Locate Identity & Authentication Silverlight Streaming Live Spaces Virtual Earth LiveI D Live Contacts Search Communicate & Stay Connected Alerts PopFly Expression Visual Studio Terms of Use Simple & Consistent Training & Support Service Level Agreements Flexible Monetization Offerings SharePoint Designer IM & Presence Commerce Agents Service APIs & Controls Expo Calendar
    22. Microsoft Live Labs Photosynth
    24. Free Usage Ad Revenue Sharing or Pay $0.25/uu/year 1M UU’s/month Threshold Number of unique users (UU’s) # of websites Extended Terms/SLA/Paid support optional and available to all Technology offering spans the entire market
    25. Cost Usage 1MUUs/M Threshold Free Usage Explicit Exchange of Value
    26. Total Audience (UUs) # of web sites 1MUUs/M Threshold Extended Terms / SLAs / Paid Support Available For Everyone Commercial & Non-commercial Use Free Usage Explicit Exchange of Value
    27. <ul><li>Services begin free (including commercial usage) </li></ul><ul><ul><li>Most services free under 1 million unique users (UU) / year </li></ul></ul><ul><ul><li>Search up to 750,000 queries / month </li></ul></ul><ul><ul><li>Virtual Earth up to 3 million tiles / month </li></ul></ul><ul><ul><li>Silverlight Streaming up to 4GB with unlimited streaming and users </li></ul></ul><ul><li>Cost is introduced with volume </li></ul><ul><ul><li>Most services will charge $0.25 per UU/year when 1 million UU/year threshold is reached </li></ul></ul><ul><ul><li>Services will have advertising revenue sharing alternative options </li></ul></ul><ul><li>Services exposed through Live-branded controls </li></ul><ul><li>Latest details available at http://dev.live.com/terms </li></ul>
    37. Familiar, useful, “sticky” services that are “building blocks” for creating vibrant communities and driving deeper engagement with your users Comprehensive Scalable Predictable Economical
    38. <ul><li>Examples </li></ul><ul><li>Value-Add Services </li></ul><ul><li>Centralized Process Services </li></ul><ul><li>Collaboration Services </li></ul><ul><li>Examples </li></ul><ul><li>Hosted Mail </li></ul><ul><li>Hosted Data </li></ul><ul><li>Hosted Applications </li></ul><ul><li>Examples </li></ul><ul><li>Authentication Services </li></ul><ul><li>Messaging Services </li></ul><ul><li>Data Services </li></ul>
    39. Platform Streaming Services
    40. <ul><li>A series of APIs that enable 3 rd party applications to leverage the network, assets, and services of Windows Live </li></ul><ul><li>Client-side controls are provided for some services </li></ul><ul><ul><li>Contacts, Photos, Virtual Earth, etc. </li></ul></ul><ul><li>Access methods vary by API </li></ul><ul><ul><li>HTTP, HTML, SMTP, WebDAV, REST, RSS, XML-RPC, SOAP </li></ul></ul>Service Description Access Methods Live ID Authentication HTTP, SOAP Search Web, image, ad and other searches HTTP, SOAP Expo Online marketplace HTTP Virtual Earth Mapping and geographical services SOAP Silverlight Streaming Application and media hosting REST, HTML Messenger Real-time communication HTML, BuddyScript Spaces Accessing Spaces blogs and feeds HTTP, SMTP, RSS, XML-RPC Photos Accessing photos from Spaces WebDAV Contacts Importing contact data REST Alerts User notification SOAP
    43. <ul><li>Terms of Use (TOU) </li></ul><ul><li>Free up to 3 million map tiles/month </li></ul><ul><li>More than 3 million requires additional agreement </li></ul>
    44. <ul><li>The Tools Developers Need </li></ul><ul><ul><li>Geo-coding </li></ul></ul><ul><ul><li>Routing </li></ul></ul><ul><ul><li>Bird’s Eye </li></ul></ul><ul><ul><li>Satellite & Aerial Imagery </li></ul></ul><ul><ul><li>Maps and Imagery </li></ul></ul><ul><ul><li>Data-binding </li></ul></ul><ul><ul><li>Non- Authenticated Access </li></ul></ul><ul><li>The Service Enterprise Expects </li></ul><ul><ul><li>SLA </li></ul></ul><ul><ul><li>Support </li></ul></ul><ul><ul><li>Reporting </li></ul></ul><ul><li>Rich Data Sources </li></ul><ul><ul><li>17 petabytes today (and growing) </li></ul></ul><ul><ul><li>26 terabytes update / month </li></ul></ul>Virtual Earth platform Enterprise Tools and Support Data Management Spatial Services Visualization
    45. <ul><li>Virtual Earth Control </li></ul><ul><li>Incredibly robust control for mapping and mashups </li></ul><ul><li>Built-in zooming, panning, etc </li></ul><ul><li>3D available with ActiveX install </li></ul><ul><li>Supports GeoRSS </li></ul><ul><ul><li>Ideal for building overlays with hover windows </li></ul></ul>
    48. <ul><li>The final composition of the data occurs on the client machine </li></ul><ul><li>Fundamentally different than traditional CGI, ASP or JSP models </li></ul><ul><li>Decentralizes server architecture, offloading capex, opex, bandwidth, power and heat to the end-user’s machine </li></ul>Multiple Listing Data John L. Scott Mapping Data Virtual Earth <ul><li>John L. Scott Case Study </li></ul><ul><li>Integrated Virtual Earth in just three weeks </li></ul><ul><li>30% increase in property viewings on website </li></ul><ul><li>Higher efficiencies for agents; lower capex and opex </li></ul>
    50. <ul><li>Windows Live ID provides digital identity for all Microsoft online services, and single sign-on (SSO) to other services </li></ul><ul><ul><li>Windows Live, MSN, Office Live, Xbox Live, Microsoft.com, etc. </li></ul></ul><ul><ul><li>Multiple devices: PC, Xbox, mobile phone, TV </li></ul></ul><ul><ul><li>Multiple credential types: password, 2 factor auth, etc. </li></ul></ul><ul><li>Industry Leading Platform </li></ul><ul><ul><li>480 million users </li></ul></ul><ul><ul><li>1+ billion authentications per day </li></ul></ul><ul><ul><li>99.95% availability </li></ul></ul><ul><ul><li>Hundreds of relying sites & services </li></ul></ul><ul><li>Multiple Implementation Options </li></ul><ul><ul><li>Client SDK </li></ul></ul><ul><ul><li>Web SDK </li></ul></ul><ul><ul><li>Relying Party Suite (RPS) SDK </li></ul></ul>
    51. <ul><li>Client SDK </li></ul><ul><li>Easy integration through managed APIs </li></ul><ul><li>Single sign on for Windows Live Services </li></ul><ul><ul><li>Pop up dialog with familiar Windows Live ID UI </li></ul></ul><ul><ul><li>Enables user access to locally cached credentials </li></ul></ul><ul><li>Getting started </li></ul><ul><ul><li>Register for and download the SDK </li></ul></ul><ul><li>Supported Languages </li></ul><ul><ul><li>Any .NET language </li></ul></ul>
    52. <ul><li>Server SDK </li></ul><ul><li>Easy integration with Live ID in under 1 hr </li></ul><ul><li>Single sign on for Windows Live controls </li></ul><ul><li>Getting started </li></ul><ul><ul><li>Get an app ID & secret key, c&p script code, push the app live </li></ul></ul><ul><li>Security </li></ul><ul><ul><li>User consents through sign in </li></ul></ul><ul><ul><li>Auth token is encrypted & signed </li></ul></ul><ul><ul><li>Information card support </li></ul></ul><ul><li>Supported platforms </li></ul><ul><ul><li>We will support Linux et al. </li></ul></ul><ul><ul><li>Sample code in ASP.NET, Perl, Python, PHP, Java, Ruby </li></ul></ul>
    53. <ul><li>Web SDK </li></ul><ul><li>Breadth integration Web scenario </li></ul><ul><ul><li>Easy to set up and configure </li></ul></ul><ul><ul><li>No account approval </li></ul></ul><ul><ul><li>No compliance review </li></ul></ul><ul><li>Each account receives a unique ID for each user upon login </li></ul><ul><ul><li>Cannot share data behind the scenes </li></ul></ul><ul><li>Provides single sign-on with other Live services </li></ul>
    54. <ul><li>Relying Party Suite (RPS) SDK </li></ul><ul><li>Depth integration Web scenario </li></ul><ul><ul><li>Full branding of login.live.com screen </li></ul></ul><ul><ul><li>Uses common Live ID CID of user </li></ul></ul><ul><ul><li>Requires significant development and configuration </li></ul></ul><ul><li>Access to SDK requires Microsoft approval </li></ul><ul><li>Production deployment requires Microsoft compliance review </li></ul>
    55. 1) User Requests Web Page 2) Website returns Sign In link 3) User clicks Sign In 4) Windows Live™ ID Sign In Page is returned 5) User enters Credentials 6) User is authenticated by Windows Live™ ID 7) User is redirected to your site 8) Your application displays protected or personalized content. Authentication Process 3 rd Party Server Windows Live ID Authentication Server
    56. Add Sign In button to site User clicks ‘Sign In’ and requested to enter Windows Live™ ID Credentials on login.live.com User is Redirected to your site with encrypted unique user ID. Register your site at Microsoft Services Manager by providing the URL and a Secret Key for encryption 3) 1) 4) 2) Capture & store user profile items in your database . 5) How Web Auth Works
    57. Exchange Sharepoint CRM AD/ADFS Office Live Live .Edu CRM Live Windows Live MSN Xbox Live Microsoft.com MSDN Microsoft Online Services 3 rd Party Services 3 rd Party IdP STS NetOps Strategic partners Intranet/Extranet services Identity Meta System based on WS-* stack Federation Federation Outlook Communicator Messenger Live Toolbar Rich Clients Browsers Windows Live ID serves ALL Microsoft Online Services and realizes Identity Metasystem spanning Enterprise/NetOps <ul><li>Windows Live ID Closely Interops with/supports </li></ul><ul><li>Cardspace </li></ul><ul><li>ADFS </li></ul><ul><li>WCF </li></ul>Windows Live ID Windows Live ID Client SDK/Live SSP
    59. <ul><li>Terms of Use </li></ul><ul><li>Controls </li></ul><ul><ul><li>Free unlimited usage </li></ul></ul><ul><li>APIs </li></ul><ul><ul><li>Free up to 1 million unique users per month </li></ul></ul><ul><ul><li>More than 1 million unique users: </li></ul></ul><ul><ul><ul><li>Ad revenue sharing, or $0.25/unique user per year </li></ul></ul></ul><ul><li>More services to be added under these terms </li></ul>
    60. <ul><li>Single shared internet-scale address book </li></ul><ul><li>500 million address books </li></ul><ul><li>30 billion contact associations </li></ul><ul><li>1 address book per Windows Live ID </li></ul>Messenger 263 million users Hotmail 280 million accounts Spaces 93 million Spaces Windows Live Contacts Office Live XBOX Live Your Apps
    62. <ul><li>Contacts Control </li></ul><ul><li>Provides programmatic access to a user’s contact list </li></ul><ul><li>Client-side browser JavaScript object </li></ul><ul><li>Can be used by any website in just 10 lines of JavaScript </li></ul><ul><li>Enables people to use their existing Windows Live contact information within 3 rd party websites </li></ul><ul><li>Authentication managed by the control </li></ul><ul><li>&quot;Black box&quot; data transfer between control and web page </li></ul><ul><li>Users have full control over their personal data </li></ul>
    63. Contacts Control <html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xmlns:devlive=&quot;http://dev.live.com&quot;> <body> <script type=&quot;text/javascript&quot; src=&quot;http://controls.services.live.com/scripts/base/v0.3/live.js&quot;></script> <script type=&quot;text/javascript&quot; src=&quot;http://controls.services.live.com/scripts/base/v0.3/controls.js&quot;></script> <script type=&quot;text/javascript&quot;> function signIn() { } function signOut() { } function showError(message) { } function receiveData(contactData) { alert(contactData[0].Email); } </script> <devlive:contactscontrol id=&quot;ContactsControl&quot; devlive:view=&quot; tileList &quot; devlive:market=&quot;en&quot; devlive:onSignIn=&quot;signIn&quot; devlive:onSignOut=&quot;signOut&quot; devlive:onError=&quot;showError&quot; devlive:onData=&quot;receiveData&quot; devlive:dataDesired=&quot; name,email &quot; devlive:channelEndpointURL=&quot;channel.htm&quot; /> </body> </html>
    64. <ul><li>Contacts API </li></ul><ul><li>REST-based: HTTP GET, PUT, POST and DELETE </li></ul><ul><li>Returns XML </li></ul><ul><li>Requires Authorization Header </li></ul>GET http://cumulus.services.live.com/ handle /LiveContacts/ itemUri HTTP/1.1 Authorization: DomainAuthentication at=&quot; XYZ &quot; http://cumulus.services.live.com/tatham@oddie.com /LiveContacts/Contacts /Contact(a4b69d14-e3eb-11db-9706-00e08161165f) /Emails/Email(22)/Address
    65. <ul><li>Authentication – Client </li></ul><ul><li>Controls </li></ul><ul><ul><li>Redirect user to Windows Live ID login page and manage authentication </li></ul></ul><ul><ul><li>Single sign-in across all controls in the same browser session </li></ul></ul><ul><li>Browser client to Windows Live Service </li></ul><ul><ul><li>Windows Live ID Web Authentication </li></ul></ul><ul><li>Rich client to Windows Live Service </li></ul><ul><ul><li>Can request a token using the WS-TRUST SOAP point ( https://dev.login.live.com/wstlogin.srf ) </li></ul></ul><ul><ul><li>Windows Live Client SDK (Windows clients) </li></ul></ul>
    66. <ul><li>Authentication – Server </li></ul><ul><li>Web server to Windows Live Service </li></ul><ul><ul><li>Delegated access </li></ul></ul><ul><ul><li>Server accesses a user’s data on their behalf </li></ul></ul><ul><ul><li>User may not even be online (e.g. Address book sync) </li></ul></ul><ul><ul><li>Very early “alpha” release </li></ul></ul><ul><ul><li>Referred to as “Windows Live Data” in the doco </li></ul></ul><ul><ul><li>PGUX = Permission Granting User Experience </li></ul></ul>
    68. <ul><li>Terms of Use (TOU) </li></ul><ul><li>Includes use of Search Control and SOAP API </li></ul><ul><li>Free up to 750k queries/month </li></ul><ul><li>More than 750k requires additional agreement </li></ul>
    69. <ul><li>Client-side Controls </li></ul><ul><li>Add a search box to your site in HTML </li></ul><ul><li>Benefits </li></ul><ul><ul><li>Doesn’t require server-side development </li></ul></ul><ul><ul><li>Doesn’t impact server performance </li></ul></ul><ul><li>Drawbacks </li></ul><ul><ul><li>Don’t [easily] get insight into visitor searches </li></ul></ul><ul><li>Server-side Services </li></ul><ul><li>SOAP API for searching: </li></ul><ul><ul><li>Ads, Images, InlineAnswers, News, PhoneBook, QueryLocation, Spelling, Web, WordBreaker </li></ul></ul><ul><li>Free access with up to 25,000 queries per day per IP address </li></ul><ul><ul><li>Commercial usage terms available </li></ul></ul>
    70. <form method=&quot;get&quot; action=&quot;http://search.live.com/results.aspx&quot;> <input type=&quot;hidden&quot; name=&quot;cp&quot; value=&quot;437&quot; /> <input type=&quot;hidden&quot; name=&quot;FORM&quot; value=&quot;FREESS&quot; /> <table bgcolor=&quot;#FFFFFF&quot;> <tr> <td> <a href=&quot;http://search.live.com/&quot;> <img src=&quot;http://search.live.com/s/affillogoLive.gif&quot; border=&quot;0&quot; alt=&quot;Live Search&quot;/> </a> </td> <td> <input type=&quot;text&quot; name=&quot;q&quot; size=&quot;30&quot; /> <input type=&quot;submit&quot; value=&quot;Search Site&quot; /> <input type=&quot;hidden&quot; name=&quot;q1&quot; value=&quot;site: yoursite .com&quot;/> </td> </tr> </table> </form> Basic Search Control
    71. Advanced Search Control
    72. Advanced Search Control
    73. <meta name=&quot;Search.WLSearchBox&quot; content=&quot;1.1, en-US&quot; /> <div id=&quot;WLSearchBoxDiv&quot;> <table cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;width: 322px&quot;><tr id=&quot;WLSearchBoxPlaceholder&quot;><td style=&quot;width: 100%; border:solid 2px #4B7B9F;border-right-style: none;&quot;><input id=&quot;WLSearchBoxInput&quot; type=&quot;text&quot; value=&quot;Loading...&quot; disabled=&quot;disabled&quot; style=&quot;padding:0;background-image: url(http://search.live.com/s/siteowner/searchbox_background.png);background-position: right;background-repeat: no-repeat;height: 16px; width: 100%; border:none 0 Transparent&quot; /></td><td style=&quot;border:solid 2px #4B7B9F;&quot;><input id=&quot;WLSearchBoxButton&quot; type=&quot;image&quot; src=&quot;http://search.live.com/s/siteowner/searchbutton_normal.png&quot; align=&quot;absBottom&quot; style=&quot;padding:0;border-style: none&quot; /></td></tr></table> <script type=&quot;text/javascript&quot; charset=&quot;utf-8&quot;> var WLSearchBoxConfiguration= { &quot;global&quot;:{ &quot;serverDNS&quot;:&quot;search.live.com&quot;, &quot;market&quot;:&quot;en-US&quot;}, &quot;appearance&quot;:{ &quot;autoHideTopControl&quot;:false, &quot;width&quot;:600, &quot;height&quot;:400, &quot;theme&quot;:&quot;Blue&quot;}, &quot;scopes&quot;:[ { &quot;type&quot;:&quot;web&quot;, &quot;caption&quot;:&quot;Microsoft&quot;, &quot;searchParam&quot;:&quot;site:www.microsoft.com&quot;}, { &quot;type&quot;:&quot;web&quot;, &quot;caption&quot;:&quot;Web&quot;, &quot;searchParam&quot;:&quot;&quot;}]} </script> <script type=&quot;text/javascript&quot; charset=&quot;utf-8&quot; src=&quot;http://search.live.com/bootstrap.js?market=en-US&ServId=SearchBox&ServId=SearchBoxWeb&Callback=WLSearchBoxScriptReady&quot;></script> </div> Embedding Advanced Search Control
    74. MSNSearchService service = new MSNSearchService(); SearchRequest request = new SearchRequest(); // You can search multiple sources at once and ask for any of the fields. // We search Web only here and ask for just the title and URL of the result. request.Requests = new SourceRequest[1]; request.Requests[0] = new SourceRequest(); request.Requests[0].Source = SourceType.Web; request.Requests[0].ResultFields = ResultFieldMask.Title | ResultFieldMask.Url; request.CultureInfo = &quot;en-US&quot;; request.Query = &quot;QUERY TEXT&quot;; request.AppID = &quot;APP_ID&quot;; // Get from http://search.msn.com/developer foreach (Result result in service.Search(request).Responses[0].Results) { // Process search result... } Sample Search API Code
    76. <ul><li>93 million spaces created, and growing </li></ul><ul><li>120 million unique users per month </li></ul><ul><li>51 markets, 25 languages </li></ul><ul><li>Integration hub of Messenger, Hotmail, Search and Gallery </li></ul>Overview
    77. <ul><li>Provides easy to use &quot;photo picker&quot; functionality </li></ul><ul><li>Client-side browser JavaScript object </li></ul><ul><li>Authentication managed by the control </li></ul><ul><li>&quot;Black box&quot; data transfer between control and web page </li></ul>Spaces Photo Control
    78. <html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xmlns:devlive=&quot;http://dev.live.com&quot;> <body> <script type=&quot;text/javascript&quot; src=&quot;http://controls.services.live.com/scripts/base/v0.3/live.js&quot; /> <script type=&quot;text/javascript&quot; src=&quot;http://controls.services.live.com/scripts/base/v0.3/controls.js&quot; /> <script type=&quot;text/javascript&quot;> function signIn() { } function signOut() { } function showError(message) { } function receiveData(photoData) { alert(photoData[0].fileExpiringURL); } </script> <devlive:spacescontrol id=&quot;SpacesControl&quot; devlive:privacyStatementURL=&quot;http://g.msn.com/2privacy/enus&quot; devlive:market=&quot;en&quot; devlive:dataDesired=&quot; fileExpiringURL,fileAccessControlledURL &quot; devlive:onSignin=&quot;signIn&quot; devlive:onSignout=&quot;signOut&quot; devlive:onError=&quot;showError&quot; devlive:onData=&quot;receiveData&quot; devlive:channelEndpointURL=&quot;channel.htm&quot; /> </body> </html> Spaces Photo Control
    79. <ul><li>Profile </li></ul><ul><li>Friends </li></ul><ul><li>Updated Spaces </li></ul><ul><li>Blog </li></ul><ul><ul><li>All Entries, Category Specific Entries, Comments </li></ul></ul><ul><li>Photos </li></ul><ul><ul><li>All Albums, Individual Albums, Comments </li></ul></ul><ul><li>Lists </li></ul><ul><ul><li>All Lists, Specific List </li></ul></ul>Spaces RSS Feeds
    80. <ul><li>Top Level (all blog entries, albums, and lists) </li></ul><ul><ul><li>http:// <alias> .spaces.live.com/feed.rss </li></ul></ul><ul><ul><li>http://spaces.live.com/viewrss.aspx?cid= <CID> </li></ul></ul><ul><li>Minimal Feed (lists available feeds) </li></ul><ul><ul><li>http:// <alias> .spaces.live.com/minimal/feed.rss </li></ul></ul><ul><li>Blog Feeds </li></ul><ul><ul><li>http:// <alias> .spaces.live.com/blog/feed.rss (all entries) </li></ul></ul><ul><ul><li>http:// <alias> .spaces.live.com/category/ <CategoryID> /feed.rss (category feed) </li></ul></ul><ul><ul><li>http:// <alias> .spaces.live.com/blog/ <BlogEntryID> /feed.rss (comments feed) </li></ul></ul><ul><li>Photo Feeds </li></ul><ul><ul><li>http:// <alias> .spaces.live.com/photos/feed.rss (all albums feed) </li></ul></ul><ul><ul><li>http:// <alias> .spaces.live.com/photos/cns! <AlbumID> /feed.rss (album feed) </li></ul></ul><ul><ul><li>http:// <alias> .spaces.live.com/photos/ <PhotoID> /feed.rss (comments feed) </li></ul></ul><ul><li>Profile Feed (lists published user data, such as display and contact info) </li></ul><ul><ul><li>http:// <alias> .spaces.live.com/profile/feed.rss </li></ul></ul><ul><li>Friends Feed (lists published friends) </li></ul><ul><ul><li>http:// <alias> .spaces.live.com/friends/feed.rss </li></ul></ul><ul><li>List Feeds (lists published lists) </li></ul><ul><ul><li>http:// <alias> .spaces.live.com/lists/cns! <ListID> /feed.rss </li></ul></ul><ul><ul><li>http:// <alias> .spaces.live.com/Music/cns! <ListID> /feed.rss </li></ul></ul>Spaces RSS Feeds
    81. <ul><li>HTTP URL entry points </li></ul>http:// alias .spaces.live.com/api.aspx? wx_action=addModule&wx_url= moduleUrl http://spaces.live.com/BlogIt.aspx? Title= myTitle &SourceUrl= url &description= myDescription <ul><li>MetaWeblog API </li></ul><ul><ul><li>Standard XML-RPC protocol for creating and managing blog entries </li></ul></ul>Spaces API
    82. <ul><li>URL </li></ul><ul><ul><li>Sends user to Spaces site to perform tasks </li></ul></ul><ul><ul><li>BlogIt API </li></ul></ul><ul><ul><ul><li>http://spaces.live.com/BlogIt.aspx?Title= <BlogTitle> & SourceURL= <URL> &description= <Description> </li></ul></ul></ul><ul><ul><li>Social Networking APIs </li></ul></ul><ul><ul><ul><li>Invite Friend </li></ul></ul></ul><ul><ul><ul><ul><li>http://spaces.live.com/api.aspx?wx_action=/friends.aspx& name= <DisplayName> &cid= <CID> </li></ul></ul></ul></ul><ul><ul><ul><li>Add Friend </li></ul></ul></ul><ul><ul><ul><li>View Friend </li></ul></ul></ul><ul><ul><ul><li>View Pending Requests </li></ul></ul></ul><ul><li>MetaWeblog </li></ul><ul><ul><li>Requires Email Publishing to be enabled on Space </li></ul></ul>Spaces Blog API
    84. <ul><li>Presence </li></ul><ul><li>Web IM </li></ul><ul><ul><li>Double blind anonymity </li></ul></ul>
    85. <ul><li>The IM Control allows a Windows Live Messenger user to show their presence and accept messages from anonymous users </li></ul><ul><li>The IM Control can be embedded on blogs or other pages; the Presence API (JSON) can query presence </li></ul><ul><li>User can publish presence & receive messages. </li></ul><ul><li>Can be embedded on blogs or other pages (Iframe) or Image </li></ul>Instant Messenger Control
    86. <ul><li>Same opt in process as Messenger IM Control. </li></ul><ul><li>JSON API (raises a callback) </li></ul><ul><li>Could be queried server-side </li></ul>Presence API
    87. <ul><li>Automated contacts in Messenger </li></ul><ul><ul><li>Easily connect to your customers, 24x7 </li></ul></ul><ul><ul><li>From simple text to rich activities </li></ul></ul><ul><li>Driving traffic to your assets </li></ul><ul><ul><li>Extends your reach beyond traditional properties </li></ul></ul><ul><ul><li>Spreads virally </li></ul></ul>Messenger Bots
    88. <ul><li>Rich applications shared between users within Messenger </li></ul><ul><ul><li>Natural extensions of the IM conversation </li></ul></ul><ul><ul><li>Rich multi-user AJAX-based mashups </li></ul></ul><ul><li>Driving traffic to your assets and enabling new scenarios </li></ul><ul><ul><li>A new way to display content </li></ul></ul><ul><ul><li>New support and commerce scenarios </li></ul></ul><ul><ul><li>Deeper user engagement </li></ul></ul><ul><li>Available through </li></ul><ul><ul><li>Placement in Messenger </li></ul></ul><ul><ul><li>Launched from any web site </li></ul></ul><ul><ul><li>SDK available on dev.live.com </li></ul></ul>Messenger Activities API
    89. IM Control Demo
    90. Demo – Grant permissions (IE)
    91. Interactive Examples Code Toggling Code To Copy Demo – IM Control Setup
    92. <ul><li>Copy and paste the code from settings screen </li></ul><ul><li>Go to your blog </li></ul><ul><ul><li>Blog dashboard </li></ul></ul><ul><ul><li>Global Settings </li></ul></ul><ul><ul><li>Title, Description & News </li></ul></ul><ul><li>Paste in News section </li></ul><ul><li>Note : minimum of 300px width </li></ul>Demo – Embedding IM Control
    93. Demo – Using the IM Control
    94. Demo – Select Anonymous or Authenticated
    95. Demo – Set Display Name
    96. <ul><li>HIP is designed to stop SPIM (Spam over IM) </li></ul><ul><li>Still required for authenticated users as auth can be programmatically attained </li></ul><ul><li>Investigating removing for authenticated users </li></ul>Demo – Required HIP/Captcha
    97. Demo – Send Message
    98. Demo – Message Submission
    99. Demo – Establish Conversation
    100. Demo – Message Exchange
    101. Demo – Message Exchange
    102. <ul><li>Event handling </li></ul><ul><li>Display Pictures </li></ul><ul><li>Emoticons </li></ul><ul><li>Dynamic Display Pictures </li></ul><ul><li>Pretty Name </li></ul><ul><li>Personal Messages </li></ul><ul><li>Backgrounds </li></ul><ul><li>Voice Clips </li></ul><ul><li>MSN Activities </li></ul><ul><ul><li>Ability to invite </li></ul></ul><ul><ul><li>Accept invitation </li></ul></ul><ul><ul><li>Transfer information between the agent and the user </li></ul></ul><ul><ul><li>Page driving </li></ul></ul>Advanced Integration Options
    104. <ul><li>always-on conversational representatives </li></ul><ul><li>interacted with via Windows Live Messenger network </li></ul><ul><li>Agents answer 10-20M+ queries per day </li></ul>Overview <ul><li>Request access via http://dev.live.com/agents/pilot.aspx </li></ul><ul><li>Use BuddyScript to develop discussion guides </li></ul><ul><li>Support for SOAP, file data, and other data sources </li></ul><ul><li>Examples: </li></ul><ul><ul><li>[email_address] </li></ul></ul><ul><ul><li>[email_address] </li></ul></ul><ul><ul><li>[email_address] </li></ul></ul><ul><ul><li>[email_address] </li></ul></ul>
    105. <ul><li>Platform </li></ul><ul><li>Natural Language Engine </li></ul><ul><li>Conversational System </li></ul><ul><li>User Profile Storage integrated with NL and Conversational engines </li></ul><ul><li>Messenger network faceless client supporting latest large range of features </li></ul><ul><li>Development Suite </li></ul><ul><li>SDK </li></ul><ul><li>Visual Studio Integration soon to be available to public </li></ul><ul><li>Test server </li></ul><ul><li>Deployment </li></ul><ul><li>Scalable Deployment Architecture (MSFT) </li></ul><ul><li>Full Web Management Suite </li></ul><ul><li>Both on IM or through web interface </li></ul>Overview
    106. <ul><li>Launched Nov. 2005: </li></ul><ul><ul><li>5 billion queries </li></ul></ul><ul><ul><li>20 million+ unique messenger users </li></ul></ul><ul><li>Never promoted or advertised anywhere </li></ul><ul><li>Viral growth (entirely word of mouth) </li></ul><ul><li>[email_address] </li></ul>SmarterChild Case Study
    107. <ul><li>BuddyScript : language to easily write powerful agents </li></ul><ul><li>Full integration with Visual Studio </li></ul><ul><ul><li>Template for rapid development </li></ul></ul><ul><ul><li>Colorization / IntelliSense </li></ul></ul><ul><ul><li>Object browser / Go to definition </li></ul></ul><ul><ul><li>Conversation and Comprehension windows for quick testing and debugging </li></ul></ul><ul><ul><li>Code analysis tools </li></ul></ul>Developing an Agent
    108. <ul><li>Both on IM or through web interface </li></ul><ul><li>Platform can run on: </li></ul><ul><ul><li>Local machine for private testing and development </li></ul></ul><ul><ul><li>Windows Live datacenter for production and iterative development </li></ul></ul><ul><ul><li>Scalable Deployment Architecture </li></ul></ul><ul><ul><li>Full Web Management Suite </li></ul></ul>Deploying an Agent
    110. <ul><li>Multi channel alerting framework. </li></ul><ul><ul><li>Email </li></ul></ul><ul><ul><li>Toast in Messenger </li></ul></ul><ul><ul><li>(SMS) – North America only </li></ul></ul><ul><li>3 modes of access: </li></ul><ul><ul><li>RSS feed – 1 minute setup </li></ul></ul><ul><ul><li>Zero development Multi Category input </li></ul></ul><ul><ul><li>SOAP SDK </li></ul></ul>Overview
    111. Sample Alert Signup Process Browser 3 rd Party Server Alerts Server 1. User asks to sign up for Alert on 3 rd party site 2. Site asks Alerts for URL to register user for Alerts using a site-unique username 3. Alerts provides URL for user to configure Alerts delivery options 4. Site provides configuration URL to user 5. User visits Alerts site to select delivery options 6. User is returned to URL provided by 3 rd party site
    112. Sample Alert Delivery Process Browser 3 rd Party Server Alerts Server 1. Message invoked by user or other source 2. Site calls SOAP API with message details 3. Alerts delivers messages to user-specified endpoints
    113. Streaming
    114. <ul><li>Online service for hosting Silverlight applications </li></ul><ul><li>Applications served from Microsoft servers </li></ul><ul><ul><li>Great scalability and availability </li></ul></ul><ul><li>Limitations </li></ul><ul><ul><li>4GB total storage (to be removed eventually) </li></ul></ul><ul><ul><li>Videos cannot exceed 10 minutes in runtime or ~20MB </li></ul></ul><ul><ul><li>Peak outbound rate is 700 Kbps (if streaming media) </li></ul></ul><ul><li>No limitation on media quality or encoding </li></ul>Overview
    115. <ul><li>4 GB free storage </li></ul><ul><li>22 MB max per video (approx. 10 minutes at 300 kbps) </li></ul><ul><li>Pre-release </li></ul><ul><ul><li>Free unlimited streaming up to DVD quality (700 kbps) </li></ul></ul><ul><li>Post-release </li></ul><ul><ul><li>Free up to 1 million minutes / month </li></ul></ul>
    116. <ul><li>Administration </li></ul><ul><ul><li>Create an account at http://silverlight.live.com to get an account ID and secret key </li></ul></ul><ul><li>Content preparation </li></ul><ul><ul><li>Uploads are in ZIP format </li></ul></ul><ul><ul><ul><li>Using admin browser interface </li></ul></ul></ul><ul><ul><ul><li>Using REST API </li></ul></ul></ul><ul><li>End users </li></ul><ul><ul><li>Require the Silverlight runtime </li></ul></ul><ul><ul><li>Everything else is HTML/JavaScript </li></ul></ul>Setup
    118. <ul><li>A set of control add-ins to make incorporating Windows Live services into your Web application easier with Visual Studio 2008 and Visual Web Developer Express 2008 </li></ul><ul><li>The four controls included in CTP release are: </li></ul><ul><ul><li>Contacts Control </li></ul></ul><ul><ul><li>IDLogin Control </li></ul></ul><ul><ul><li>IDLoginView Control </li></ul></ul><ul><ul><li>SilverlightStreamingMedia Control </li></ul></ul>Windows Live Tools for Visual Studio 2008
    119. <ul><li>Messenger & Hotmail share contacts backend </li></ul><ul><li>JavaScript Widget </li></ul><ul><li>Multiple modes </li></ul><ul><ul><li>Display presence of buddy & initiate conversation in Messenger client. </li></ul></ul><ul><ul><li>Allow users to securely transfer contacts to a website </li></ul></ul>Contacts Control <ul><li>Sample ASP.NET code: </li></ul><ul><ul><li><live:Contacts ID=&quot;Contacts1&quot; runat=&quot;server&quot; ChannelEndpointURL=&quot;~/channel.htm&quot; DataDesired=&quot;name,email&quot; Height=&quot;500px&quot; PrivacyStatementURL=&quot;~/privacyPolicy.htm&quot; View=&quot;TileList&quot; Width=&quot;250px&quot; /> </li></ul></ul>
    120. <ul><li>Returns pair-wise unique id, no PII </li></ul><ul><li>Zero server-side installation requirements </li></ul><ul><li>Samples in 6 languages: .NET / Java / Perl / Python / PHP / Ruby </li></ul><ul><li>Can add on top of existing ASP.NET Membership implementations </li></ul><ul><li>Links Live ID unique identifier to ASP.NET user profile </li></ul><ul><li>IDLoginView </li></ul><ul><ul><li>Extends the ASP.NET LoginView control </li></ul></ul><ul><ul><li>Multiple views in different authentication states </li></ul></ul><ul><ul><li>Sample ASP.NET code: </li></ul></ul><ul><ul><ul><li><live:IDLogin ID=&quot;IDLogin1&quot; runat=&quot;server&quot; ApplicationIDConfigKey=&quot;wll_appid&quot; ApplicationSecretConfigKey=&quot;wll_secret&quot; /> </li></ul></ul></ul><ul><li>IDLogin </li></ul><ul><ul><li>Provides wrapper for Live ID authentication URL/Iframe </li></ul></ul>Live ID Controls
    121. <ul><li>Makes it easy to add Silverlight applications to your Web App. </li></ul><ul><ul><li>Provides selection of stored applications. </li></ul></ul><ul><ul><li>Creates instantiation code </li></ul></ul><ul><li>Extension to the ASP.NET Futures Media Control. </li></ul><ul><li>Sample ASP.NET code: </li></ul><ul><ul><li><live:SilverlightStreamingMedia ID=&quot;SilverlightStreamingMedia1&quot; runat=&quot;server&quot; Height=&quot;240px&quot; MediaUrl=&quot;streaming:/22777999/VideoLibrary/Assets/Bear.wmv&quot; Width=&quot;320px&quot; MediaSource=&quot;SilverlightStreaming&quot;> </live:SilverlightStreamingMedia> </li></ul></ul>Silverlight Streaming Media Control
    122. <ul><li>Gadgets are : </li></ul><ul><li>M ini apps that provide a portal into web services and engage customers </li></ul><ul><li>Si mple for users to install and use </li></ul><ul><li>Can run in multiple places or “hosts” </li></ul><ul><li>Gadgets run on a lightweight developer platform </li></ul><ul><li>Easy to develop using basic web design technology </li></ul><ul><li>Low barrier to deploy based on tiered security model </li></ul><ul><li>“ Write once, run anywhere” </li></ul>Web Client
    123. State and Local Gov Membership Orgs Education Scenario Capabilities <ul><li>Rich Media Experiences </li></ul><ul><li>Sharing & Storage </li></ul><ul><li>Communicate & Stay Connected </li></ul><ul><li>Find & Locate </li></ul><ul><li>Rich Media Experiences </li></ul><ul><li>Sharing & Storage </li></ul><ul><li>Communicate & Stay Connected </li></ul><ul><li>Find & Locate </li></ul>Connects membership organizations with the content, information and communities they care about <ul><li>Rich Media Experiences </li></ul><ul><li>Sharing & Storage </li></ul><ul><li>Communicate & Stay Connected </li></ul><ul><li>Find & Locate </li></ul>Community government keeping residents up to date on civic developments, community events and local news University sponsored site for students and staff to connect with the university events and social organizations
    124. <ul><li>Rich Media Experiences </li></ul><ul><li>Sharing & Storage </li></ul><ul><li>Communicate & Stay Connected </li></ul><ul><li>Find & Locate </li></ul><ul><li>Rich Media Experiences </li></ul><ul><li>Sharing & Storage </li></ul><ul><li>Communicate & Stay Connected </li></ul><ul><li>Find & Locate </li></ul><ul><li>Rich Media Experiences </li></ul><ul><li>Sharing & Storage </li></ul><ul><li>Communicate & Stay Connected </li></ul><ul><li>Find & Locate </li></ul>Scenario Capabilities Services firm engaging with new customers to answer questions about its product and services as well as follow up appointments Travel and hospitality firm connecting with travelers and the travelers community to enrich pre and post trip experiences Retail site interacting with customers to creating community connections for easier and better acquisition and retention Hospitality Retail Customer interaction
    125. Live Expo Live Alerts Live Data (Contacts API) Silverlight Streaming Live ID Live Spaces Live Events Live Search Virtual Earth
    127. <ul><li>Questions? Feedback? </li></ul><ul><li>Please fill out your evaluations </li></ul><ul><li>SoCal Architect Community </li></ul><ul><ul><li>http://socalmsft.com </li></ul></ul><ul><ul><li>http://blogs.msdn.com/socalarchitect (team blog) </li></ul></ul><ul><ul><li>http://davidcchou.com (my blog) </li></ul></ul>
    128. © 2007 Microsoft Corporation. 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.