300 likes | 559 Views
Stefano Mallè Evangelism Lead - Developer and Platform Evangelism Microsoft Switzerland - Richtistrasse 3 - 8304 Wallisellen Email: stefano.malle@microsoft.com Blog: Technology Talk , DPE Team Blog Co- ordinates : XING , LinkedIn. Windows Live Platform (Part 1). “in the sky”.
E N D
Stefano Mallè Evangelism Lead - Developer andPlatformEvangelism Microsoft Switzerland - Richtistrasse 3 - 8304 Wallisellen Email: stefano.malle@microsoft.com Blog: Technology Talk, DPE Team Blog Co-ordinates: XING, LinkedIn Windows Live Platform(Part 1)
Megatrends: Converging Worlds Online(Services) Desktop(Software) • Services extend Software with allways up-to-date information (on premise) • Services allow unified experience across desktops and devices Enterprise Devices
Microsoft Services Platform Services Services (Folder) Streaming http://www
IM & Alerts Identity Mail & Contacts Video & RIA Find Locate Store & Share Feb08 Live Space (home, blogs, photos, events, lists,…) Skydrive online Live ID (w CardSpace) Live Mail (mail.live.com / hotmail) Web Messenger (webmessenger.msn.com) Live Search (search.live.com) Live Search Maps (maps.live.com) Consumer WL Messenger, Mobile IM, (OC) Expression Media Encoder WL Writer, WL Gallery Clt. WL Mail (Outlook) WL Toolbar Mail: 280M Accounts Contacts: 500M Addr Books, 30B Contact Associations 7,5B mess/day Smarterchild: 20M+ UU, 5B queries since 11/05 93M Spaces, 120M UU/m, 150k spaces created/month 17 petabytes data 26 TB updt/month Value 1B+ Auth/Day 2,5B queries/m Hosted: Mail, Contacts, Calendar login.live.com Custom Domain Virtual Earth, MapPoint Skydrive, Live Spaces Srv. (IM Infra) Silverlight Streaming Live Search Srv/Infra WLID application page, WL Admin Center WL Messanger Web Settings Silverlight Streaming Admin Site Adm. WL Admin Center Skydrive.live.vom Live ID Contacts Alerts, Messenger SL Live Search VE1, VE2, MapPoint Photos, Spaces IM JS Lib, Live Agents, Activity SDK Online, The Windows Live Alerts SDK Photos API Interactive SDK, WL Spaces SDK, WL Writer SDK VE Interactive, MapPoint Web Service SDK WL ID clientWL ID Web Contacts API Interactive SDK Search Interactive SDK SDK SL Streaming SDK Development Photos API [WebDAV], Spaces [RSS Feeds] (profiles, friends, updates, blogs, photos, lists,…), MetaWeblog, Social Networking, Event WL Alerts [SOAP], WL Presence[JSON], Alerts for RSS Feeds Contacts [REST] SL Streaming [REST] Live Search [SOAP] MapPoint [Web Srvs] API IDLoginView*, IDLoginStatus* WL Messenger IM Control SilverightSteramingMdia* Search Box AJAX Control Virtual Earth Map Control Ctrl. Contacts Control* Space Photo Control More WL: Calendar, Gallery, OneCare, Expo, @net, @edu, @gov, @mobile, live data,… * Windows Live Tools December 2007 CTP & dev.live.com/tools
Enhance your site with live services Virtual Earth Location-basedservices
More info "Location-based” in a Nutshell • What • Location-based services for consumers (maps.live.com) • Platform to develop location-based solutions • Why • Access to 15 petabytes of mapping data and imagery (Satellite, Aerial, Bird‘s Eye View) • Supports 3D environment, geo-coding, and routing, overlays,… • 16+ million local points of interest (Live Search) • http://dev.live.com/virtualearth/sdk/ • It's easy to integrate in your site • How • MapPoint™ SOAP API • Virtual Earth JavaScript Map Control • Peripheral Tooling (Map Cruncher)
Virtual Earth vs. MapPoint Virtual Earth MapPoint Services SOAP API Batch Geocoding, Reverse Geocoding Algorithmic Searches Proximity Searching (FindNearby) Corridor Searching (FindNearRoute) Polygonal Searching (FindInPoly) Static Map Images (for E-mailing Maps) Mobile Maps (30+ Map Styles in all) Point of Interest (Yellow Page) Listings Server-based Control Over Applications Preferred Routing JavaScript Map Control • Requests Made From Client • Geocoding • Mapping • Driving Directions • Aerial/Satellite Photography • Line/Polygon Drawing • GeoRSS/Collections Integration • Matching Geographic Coverage + Japan! • Immersive 3D Environment
Terms of Services* (Virtual Earth) Free API Access Licensed Pricing Per User, Per Transaction or Unlimited Waterfall Schedule 1, 2, 3 or 4 year commitment Benefits SLA, Support, Betas, Communications, TAP, Advanced Features and more. Restrictions Limited • Pricing • Free • Benefits • Same API as licensed version • Restrictions • Non-commercial apps • No reverse engineering • 50,000 geocodes per 24 hours • dev.live.com/terms * For a complete and binding description refer please to http://dev.live.com/terms/default.aspx
{ } DEMOVirtual Earth • (Immersive 3D Environment) 3D, 3D tour
{ } DEMOVirtual Earth • (Aerial/SatellitePhotography) Photosynthetizing VE
{ } DEMOVirtual Earth “Hello…”
{ } DEMOVirtual Earth Map, Pins, & Routes
GeoRSS Some LINQ “Magic”
{ } “Divagation”LINQ “magic”
LINQ to XML • provides an in-memory XML programming interface that leverages LINQ, the .NET Language-Integrated Query Framework. • uses the latest .NET Framework language capabilities and is comparable to an updated, redesigned Document Object Model (DOM) XML programming interface. • The LINQ family of technologies provides a consistent query experience for • objects (LINQ), • relational databases (LINQ to SQL), • XML (LINQ to XML),…
<?xml version="1.0" encoding="utf-8" standalone="no"?> <TrainingCenterDatabasexmlns="http://www.garmin.com/xmlschemas/TrainingCenterDatabase/v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.garmin.com/xmlschemas/TrainingCenterDatabase/v2 http://www.garmin.com/xmlschemas/TrainingCenterDatabasev2.xsd"> ... <Activities> <Activity Sport="Running"> <Id>2008-02-23T13:42:11Z</Id> <LapStartTime="2008-02-23T13:42:11Z"> <TotalTimeSeconds>1725.5900000</TotalTimeSeconds> <DistanceMeters>1677.0235596</DistanceMeters> <MaximumSpeed>1.6112189</MaximumSpeed> <Calories>102</Calories> <Intensity>Active</Intensity> <TriggerMethod>Manual</TriggerMethod> <Track> <Trackpoint> <Time>2008-02-23T13:42:19Z</Time> <Position> <LatitudeDegrees>47.3400755</LatitudeDegrees> <LongitudeDegrees>8.7295491</LongitudeDegrees> </Position> <AltitudeMeters>491.8516846</AltitudeMeters> <DistanceMeters>4.3972735</DistanceMeters> <SensorState>Absent</SensorState> </Trackpoint> <Trackpoint> <Time>2008-02-23T13:42:28Z</Time> <Position> <LatitudeDegrees>47.3400674</LatitudeDegrees> <LongitudeDegrees>8.7294985</LongitudeDegrees> </Position> <AltitudeMeters>494.2550049</AltitudeMeters> <DistanceMeters>8.2982550</DistanceMeters> <SensorState>Absent</SensorState> </Trackpoint> ... GPS XML
XNamespace aw = "http://www.garmin.com/xmlschemas/TrainingCenterDatabase/v2"; XDocumentpositionFromGPS = XDocument.Load(sportFile); IEnumerable<activityTrackPoint> sportInfo= from activitiesin positionFromGPS.Descendants(aw + "Activity") from lapsin activities.Descendants(aw + "Lap") from trackpointsin laps.Descendants(aw + "Trackpoint") from positionin trackpoints.Elements(aw + "Position") orderbybuildDateTime(trackpoints.Element(aw + "Time").Value) ascending select new activityTrackPoint { Sport = (string)activities.Attribute("Sport"), StartTime = activities.Element(aw + "Id").Value, LapStartTime = (string)laps.Attribute("StartTime"), LapTotalTime = laps.Element(aw + "TotalTimeSeconds").Value, LapDistance = laps.Element(aw + "DistanceMeters").Value, LapMaximumSpeed = laps.Element(aw + "MaximumSpeed").Value, PointTime = trackpoints.Element(aw + "Time").Value, PointTimeDT = buildDateTime(trackpoints.Element(aw + "Time").Value), PointLatitude = position.Element(aw + "LatitudeDegrees").Value, PointLongitude = position.Element(aw + "LongitudeDegrees").Value, PointDistance = trackpoints.Element(aw + "DistanceMeters").Value, PointAltitude = trackpoints.Element(aw + "AltitudeMeters").Value }; ... Loading GPS data
IEnumerable<imageDetails> imageInfo = from img in System.IO.Directory.GetFiles(imageDirectory) let _dateTaken = imageDateTaken(img) let _dateTakenDT = buildDateTime(_dateTaken).AddHours(-1) //GTM let _point = sportInfo.Where(x => x.PointTimeDT < _dateTakenDT).Last() select new imageDetails { DateTaken = _dateTaken, DateTakenDT = _dateTakenDT, Path = img, Longitude = _point.PointLongitude, Latitude = _point.PointLatitude }; ... Loading Picture Information
{ } DEMOVirtual Earth GeoRSS
{ } Customer ReferencesVia Virtual Earth
© 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.
Admin Center Outsource your messaging infrastructure Admin Center
More info Admin Center in a Nutshell • What • Free messaging infrastructure for @yourDomain • mail, contacts, calendar, IM, live id, live spaces,… • Custom Domain, Live @net, Live @edu, Community Builder • Why • Proven infrastructure, with top availability, scalability, and features (spam filters, eg) • How • Admin your domain at http://domains.live.com • Admin Center SDK • Terms of Services* • FREE! 500 accounts • Additional accounts can be requested • depending on the conditions can also be free * For a complete and binding description refer please to http://dev.live.com/terms/default.aspx
{ } Customer Referencepartyguide.ch
partyguide.ch • Partyguide core business is to provide pictures of the latest events • 1'000 photographers • picture section publicly available • Public & member area • #350‘000 registered users • grows by 1'000 users per month • WAWE 1 (now!) • Co-branded (@pgmail.ch) email with Community Builder to all Partyguide members • Myfriends with Live contacts -> co-branded eMail / Live Messenger • Myalerts with Windows Live Alerts -> Live Messenger • Windows Live ID Login
© 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.