33
OFC 322 Building Office Research Web Services: Exposing Corporate Data Through Office Brian Jones Program Manager Authoring Services Martin Sawicki Lead Program Manager Authoring Services

OFC 322 Building Office Research Web Services: Exposing Corporate Data Through Office Brian Jones Program Manager Authoring Services Martin Sawicki Lead

Embed Size (px)

Citation preview

OFC 322Building Office Research Web Services: Exposing Corporate Data Through Office

Brian Jones

Program Manager

Authoring Services

Martin SawickiLead Program Manager

Authoring Services

Agenda

What is the Research Library?

Demo: Built in services

Demo: Custom services

Demo: Powerful Interaction

Service Deployment

Overview

Task Pane that integrates search tasks into Office

Supports display of contents, forms, pushing data into the app

Widely supported: Word, Excel, PPT, Outlook, Publisher, OneNote, Visio, IE

Third party extensibilityCorporate: technical spec database

Information providers: legal case database

demodemo

Built inBuilt inResearch LibraryResearch Library

Brian JonesBrian JonesProgram ManagerProgram ManagerAuthoring & Collaboration Svcs.Authoring & Collaboration Svcs.

demodemo

CustomCustomResearch LibraryResearch Library

Brian JonesBrian JonesProgram ManagerProgram ManagerAuthoring & Collaboration Svcs.Authoring & Collaboration Svcs.

Web ServerWeb Server

Registration RequestRegistration Request

Registration ResponseRegistration Response

Query RequestQuery Request

Query ResponseQuery Response

Web Service CallsRegistration and Query

demodemo

Creating Powerful Creating Powerful Research SevicesResearch Sevices

Brian JonesBrian JonesProgram ManagerProgram ManagerAuthoring & Collaboration Svcs.Authoring & Collaboration Svcs.

Research Components

I Buy Spy Query

I Buy Spy Response

I Buy Spy Response (Smart Tag)

I Buy Spy Response (Advanced Product Search)

IBuySpy-Query-Response.XML

IBuySpy-Query-REQUEST.XML

IBuySpy-Query-Response-ProductDetail-SmartTag.XML

IBuySpy-Query-Response-WithFormAndResults.XML

DeploymentDeployment

Martin SawickiMartin SawickiLead Program ManagerLead Program ManagerAuthoring & Collaboration Svcs.Authoring & Collaboration Svcs.

ProviderProvider

Key Concepts

Service/Sourcecollection of research data displayed in the Research and Reference task pane.

Providersource of research and reference content typically accessed via an external URL or internal server address. A provider may offer one or more research sources.

ServiceService

Major Deployment Scenarios

Internet/Public serviceFree

For pay

Intranet/Corporate service

Locally on a user’s computerhttp://localhost

Service Deployment Methods

Manual registration

Automatic discovery

Desktop rollout

Deployment: Manual RegistrationUser Interface

User types in the URL; No admin action needed.

Service’s online registration interface is used

Deployment: Manual RegistrationService Registration Interface

Necessary for initial handshake between Office app and the provider

SOAP based 2-way communicationClient sends Registration Request

Provider returns Registration Response1. list of services

2. user makes a choice

3. service registered (in registry)

4. may be on or off

Registration Function

C#:[WebMethod] Public String Registration(String xml)

VB.NET:<WebMethod> Public Function Registration(xml As String) As String

The XML string argument conforms to the RegistrationRequest schema

The XML string returned must conform to the RegistrationResponse schema

Registration Request Sample

<RegistrationRequest revision="2" build="(11.0.5308)" xmlns="urn:Microsoft.Search.Registration.Request">

<SystemInformation><SkuLanguage>en-us</SkuLanguage> <LanguagePack>en-us</LanguagePack> <InterfaceLanguage>en-us</InterfaceLanguage> <Location>US</Location>

</SystemInformation>

</RegistrationRequest>

Registration Response Sample<?xml version="1.0" encoding="utf-8" ?> <ProviderUpdate xmlns="urn:Microsoft.Search.Registration.Response">

<Status>SUCCESS</Status><Providers>

<Provider><Message>This is a sample research library.</Message>

<Id>{9FF837AF-34D6-4a94-BB52-B0F19F3A343A}</Id> <Name>Sample Research library</Name> <QueryPath>http://localhost/Query.asmx</QueryPath> <RegistrationPath>http://localhost/Registration.asmx</RegistrationPath> <AboutPath>http://localhost/about.asmx</AboutPath> <Type>SOAP</Type>

<Services><Service>

<Id>{CD144577-9D90-4144-AE38-0D6553CA4004}</Id>

<Name>Sample service</Name> <Description>Sample

description</Description> <Display>On</Display>

<Category>RESEARCH_GENERAL</Category> </Service>

</Services></Provider>

</Providers> </ProviderUpdate>

Registration ResponseOptional Information

Other info you can specify about your services at registration:

License agreement

Terms of Use

Options webpage URL

Copyright info

Deployment: Manual RegistrationLimitations

How does the user know there is a new Research Library service in the first place?

Need to type in a URL – not friendly

Solution: Automatic discovery services

Deployment: Discovery Services

Online directories of available servicesTo add a service: update your online directory

the new service will be discovered by Office automatically

Discovery services registered in registryup to 5 different discovery services

HKEY_LOCAL_MACHINE\Software\Microsoft\Office\11.0\Common\Research\Discovery"DiscoveryPath1"=http://server1/discovery/discovery.asmx"DiscoveryPath2"=http://server2/discovery/discovery.asmx…"DiscoveryPath5"=http://server5/discovery/discovery.asmx

Discovery Function

C#:[WebMethod] Public String Discovery(String xml)

VB.NET:<WebMethod> Public Function Discovery(xml As String) As String

The XML string argument conforms to RegistrationRequest schema

The XML string returned must conform to the Discovery schema

Deployment: Discovery ServiceResponse

<?xml version='1.0'?><Discovery xmlns='http://schemas.microsoft.com/Office/Research/2002/8/Discovery'>

<!-- Service 1 --><Research autoInstall='false'>

<Id>{80B86BFF-5A43-4ACB-B283-611CCFD99999}</Id><Name>SERVICE 1 NAME</Name><RegistrationPath>http://PATH TO SERVICE 1</RegistrationPath><Description>SERVICE 1 DESCRIPTION</Description>

</Research>

<!-- Service 2 --><Research autoInstall='true'>

<Id>{80B86BFF-5A43-4ACB-B283-611CCFD99999}</Id><Name>SERVICE 2 NAME</Name><RegistrationPath>http://PATH TO SERVICE 2</RegistrationPath>

<Description>SERVICE 2 DESCRIPTION</Description></Research>

</Discovery>

Deployment: Discovery ServiceUser Notification

Admin chooses what to do when new service is discovered:

Automatic install – no user opt-in

Advertise – user notified and given the option to register

Deployment: Discovery ServicePublic/Internet Services

http://office.microsoft.com/marketplace

“Market place” website: Microsoft’s global discovery service

Microsoft’s services

3rd party services

Approval process (Free)

Categorized listings

Deployment: Desktop RolloutYou can pre-register services when deploying OfficeNo user intervention neededDiscovery can be disabled (regkey)Manual registration can be disabled (regkey)Registry entries in the desktop image:

HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Common\Research\Sources\<servicename>

Deployment: Desktop Rollout“Out of the Box” Services

Examples of services registered by default during Office installation:

Thesaurus

MSN® Search

Microsoft Encarta® Encyclopedia

a number of third party services

Deployment Methods and Scenarios

Method:Method:

Scenario:Scenario: InternetInternet(MarketPlace)(MarketPlace)

IntranetIntranet LocalhostLocalhost

ManualManual

DiscoveryDiscovery

Rollout (Registry)Rollout (Registry)

Security

No special considerations – only data is transmittedService can require Windows AuthenticationCookie support

Can read cookies written by the browserCan write cookies that are recognized by the browserShares persistent cookies with Internet ExplorerSupports session and persistent cookies

HTTPS supported

Resources

Research library SDK in beta 2 kit

MSDN online (msdn.microsoft.com/office)‘Build Your Own Research Library with Office 2003 and the Google Web Service API” – By Chris Kunicki

“Customizing the Microsoft Office 2003 Research Task Pane” – by Jan Fransen

Questions…Questions…

evaluationsevaluations

Community Resources

Community Resourceshttp://www.microsoft.com/communities/default.mspx

Most Valuable Professional (MVP)http://www.mvp.support.microsoft.com/

NewsgroupsConverse online with Microsoft Newsgroups, including Worldwidehttp://www.microsoft.com/communities/newsgroups/default.mspx

User GroupsMeet and learn with your peershttp://www.microsoft.com/communities/usergroups/default.mspx

© 2003 Microsoft Corporation. All rights reserved.© 2003 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.