Topic Last Modified: 2012-03-23

Import-CsLegacyConfiguration enables you to import a number of configuration settings from Microsoft Office Communications Server 2007 R2 or Microsoft Office Communications Server 2007 to Microsoft Lync Server 2010. This helps provide interoperability between Lync Server 2010 and your earlier installation of Office Communications Server 2007 R2 or Office Communications Server 2007.

Import-CsLegacyConfiguration [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-ReplaceExisting <SwitchParameter>] [-Report <String>] [-WhatIf [<SwitchParameter>]]

Import-CsLegacyConfiguration is used in conjunction with the Merge-CsLegacyTopology cmdlet to enable organizations to migrate from a previous version of Office Communications Server (either Office Communications Server 2007 R2 or Office Communications Server 2007) to Lync Server 2010. Import-CsLegacyConfiguration is used to import voice policies; location profiles (for instance, dial plans); voice routes; voice normalization rules; meeting policies; external access policies; archiving policies; presence policies; Communicator Web Access URL settings; and dial-in conferencing access numbers.

Before you can run Import-CsLegacyConfiguration, you must first install the Windows Management Instrumentation (WMI) Backward Compatibility interfaces package; this application is installed by running OCSWMIBC.msi. After installing the Compatibility interfaces package, you should next run Merge-CsLegacyTopology. When Merge-CsLegacyTopology finishes, you should publish the merged topology by using Topology Builder. After publishing the merged topology, you can then call Import-CsLegacyConfiguration. The Import-CsLegacyConfiguration cmdlet uses WMI to read legacy data from the earlier version of Office Communications Server. Import-CsLegacyConfiguration then takes the retrieved data and creates corresponding objects in Lync Server. For example, for each voice policy found in your installation of Office Communications Server, a corresponding voice policy will be created in your new installation of Lync Server.

Import-CsLegacyConfiguration should be re-run whenever you make changes to any of the following Office Communications Server items: voice policies; location profiles; voice routes; voice normalization rules; meeting policies; external access policies; archiving policies; presence policies; Communicator Web Access URL settings; and dial-in conferencing access numbers. By default, only new items added to your Office Communications Server topology will be imported when you re-run Import-CsLegacyConfiguration. To import modified objects you must do two things. First, confirm that no changes have been made to the corresponding item (for example, a voice policy) in the Lync Server copy of the configuration. Second, run Import-CsLegacyConfiguration along with the ReplaceExisting parameter; this causes Import-CsLegacyConfiguration to import modified objects and to overwrite the corresponding object currently in Lync Server. Note that objects deleted from the Communications Server 2007 R2 topology do not result in corresponding deletions in Lync Server. You will need to manually remove those in Lync Server.

It’s important to know that the Move-CsLegacyUser cmdlet relies on information imported by Import-CsLegacyConfiguration. That means that, when running Move-CsLegacyUser, you might receive an error message telling you that you must run Import-CsLegacyConfiguration before proceeding. If that happens you must re-run Import-CsLegacyConfiguration before you will be able to move the legacy user.

Who can run this cmdlet: By default, members of the following groups are authorized to run the Import-CsLegacyConfiguration cmdlet locally: RTCUniversalServerAdmins. To return a list of all the role-based access control (RBAC) roles this cmdlet has been assigned to (including any custom RBAC roles you have created yourself), run the following command from the Windows PowerShell prompt:

Get-CsAdminRole | Where-Object {$_.Cmdlets –match "Import-CsLegacyConfiguration"}


Parameter Required Type Description



Switch Parameter

If present, this parameter instructs Import-CsLegacyConfiguration to overwrite any previously imported policies or settings that have changed since the last time the cmdlet was run.



Switch Parameter

Suppresses the display of any non-fatal error message that might occur when running the command.




Enables you to specify a file path for the log file created when the cmdlet runs. For example: -Report "C:\Logs\ImportConfiguration.html"



Switch Parameter

Describes what would happen if you executed the command without actually executing the command.



Switch Parameter

Prompts you for confirmation before executing the command.

None. Import-CsLegacyConfiguration does not accept pipelined input.

Import-CsLegacyConfiguration does not return any objects or values.

-------------------------- Example 1 ------------------------


The command shown in Example 1 merges voice policies and other settings from Communications Server 2007 or Communications Server 2007 R2 with an installation of Lync Server.

-------------------------- Example 2 ------------------------

Import-CsLegacyConfiguration -ReplaceExisting

The command shown in Example 2 is a variation of the command shown in Example 1. In this case, however, the ReplaceExisting parameter is included. This parameter instructs the cmdlet to use the imported data to resolve name collisions. For example, suppose you try to import a voice route named LocalRoute, and a voice route by that name already exists in your Lync Server installation. Because you included the ReplaceExisting parameter, the Lync Server route will be replaced by the voice route being imported.