Contextual application deployment is designed to be flexible and support security for enterprises, independent software vendors, and system integrators.

Understanding Install and Run-Time Registration

There are two ways to register a contextual application:

  • Install Registration

  • Run-Time Registration

These two choices are compatible. In fact, the recommended practice is to perform install registration to install the contextual application, and then run-time registration every time the application launches.

Install Registration

Install Registration uses a setup application or group policy to place entries into the registry. In this case, package registration data persists after Microsoft Lync 2010 signs out or exits. Use Install Registration for greater control of package setup. For more information, see Walkthrough: Perform Install Registration for an Extensibility Application .

Install Registration is a good choice for scenarios like the following:

Anytime a sales manager gets a call from an outside customer, she wants to see, by default, her Customer Relationship Management (CRM) record for that person. But, the particular view of that application that she sees is based on her role, and the administrator has set up pools of GPO settings to make sure different roles see different views of the CRM application.

Run-Time Registration

In contrast with Install Registration, Run-Time Registration uses an application to modify package registration data at run-time. Use Run-Time Registration for flexible package setup and the security advantages. In this case package registration data is added to the Lync 2010 registration pool, and resets after Lync 2010 signs out. Use the ApplicationRegistration class to perform Run-Time Registration. For more information, see Walkthrough: Perform Run-Time Registration for an Extensibility Application .

Run-time Registration is a good choice for scenarios like the following:

An application only wants to provide a contextual experience when it's running. Sam is a financial advisor who uses Lync 2010 to talk with his clients. When his market tracking software is open and he gets a call from a customer, it changes the application view to show the customer's portfolio. This call is automatically noted in the finance software for auditing reasons. Because of auditing requirements a customized view is not available unless the finance software is running.

Interaction Between Run-Time and Install Registration

Run-Time registration doesn't change Windows registry entries. Instead it creates a new application package that exists in the Lync 2010 registration pool until the current Lync 2010 user signs out. Run-Time registration can exist without Install registration, but if you use Run-Time registration consider using Install Registration also. In a case where both Run-Time and Install registration occur with the same application ID, the Run-Time registration overrides the Install registration during the life of the session. When the user signs out, the Run-Time registration resets and the Install registration activates.

Register the Contextual Conversation Package

Contextual conversation packages can be installed to a URL or file path. To simplify management of the package, install it to a URL. After registering the contextual application with Microsoft Lync 2010, the following features are available.

  • Specify a default application to provide a context when none is available. For example, when a sales manager gets a call, a CRM application automatically launches and displays key information about the caller. For more information, see Understand the Role of the Default Package .

  • Specify rich context handling and applications. For example, when two oil field engineers consult about a field, the company's line-of-business application automatically starts to run and it provides various graphical displays that represent geological data. For more information, see Consume Data and Handle Events in a Contextual Conversation .

To register a context package

  1. Install the context application.

  2. Add registry keys as appropriate. See the keys listed in the following table.

  3. Perform steps one and two on both the sending and receiving computers.

Registration Data Values

Add the context application GUID as a key under either of these two paths:

  • HKEY_CURRENT_USER\Software\Microsoft\Communicator\ContextPackages

  • HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Communicator\ContextPackages

For more information on application GUIDs, see the topic Create GUID (guidgen.exe).

The following table lists values to add to this key.

Value name

Type

Description

Name

REG_SZ

The name of the context application. For example "Blue Yonder Airlines".

InstallLink

REG_SZ

Specifies a URL pointing to an installation file you provide. A clickable link displays if no package is installed on the receiving computer.

DefaultContextPackage

REG_DWORD

Specifies whether this package is the default package for all unassigned calls. 0 = false, 1 = true.

ExtensibilityWindowSize

REG_DWORD

Sets the minimum size of the extensibility window. 0 = small (300 x 200 pixels), 1 = medium (400 x 600 pixels), 2 = large (800 x 600 pixels).

InternalURL

REG_SZ

Specifies a context application URL in the Microsoft Lync Server 2010 domain. The application automatically detects which URL to use, InternalURL or ExternalURL, based on the client location. This entry also accepts the three optional parameters described in the following table.

ExternalURL

REG_SZ

Specifies a context application URL located outside of the Microsoft Lync Server 2010 domain. The application automatically detects which URL to use, InternalURL or ExternalURL, based on the client location. This entry also accepts the three optional parameters described in the following table.

Path

REG_SZ

Specifies the path to a desktop application and determines whether the launch link appears. If not present, then the launch link will not appear.

Parameters

REG_SZ

Specifies one or more parameters for the Path value. This entry also accepts the three optional parameters described in the following table.

Parameter

Description

%AppData%

Use this parameter to obtain the application data sent in a contextual conversation. Size limit is 2k.

%AppId%

Use this parameter to obtain the the application GUID sent in a contextual conversation.

%AppName%

Use this parameter to obtain the the application name sent in a contextual conversation.

See Also