[This is preliminary documentation and is subject to change. Blank topics are included as placeholders.]

Returns information about the client policies configured for use in your organization. Among other things, client policies help determine the features of Microsoft Communicator "14" that are made available to users; for example, you might give some users the right to transfer files while denying this right to other users. Many of the client policies used in Microsoft Communications Server 2010 are derived from the Group Policy settings used in Microsoft Office Communications Server 2007 R2.

Syntax

Get-CsClientPolicy [-Identity <XdsIdentity>] [-LocalStore <SwitchParameter>]
Get-CsClientPolicy [-Filter <String>] [-LocalStore <SwitchParameter>]

Parameters

Parameter Required Type Description

Identity

Optional

XdsIdentity

Indicates the unique identifier of the client policy to be returned. To refer to the global policy use this syntax: -identity global. To refer to a site policy use syntax similar to this: -Identity site:Redmond. To refer to a tag policy, use syntax like this: -Identity tag:SalesDepartmentPolicy. If this parameter is omitted then all the client policies configured for use in your organization will be returned.

Filter

Optional

String

Enables you to use wildcard characters when indicating the policy (or policies) to be returned. For example, to return all the policies configured at the site scope you use this syntax: -Filter site:*. This works because, by definition, any policy configured at the site scope must have an Identity (the only property you can filter on) that begins with the string value "site:". To return a collection of all the tag policies that have an Identity that begins with "Tag:Sales" use this syntax: -Filter tag:Sales*.

LocalStore

Optional

Switch Parameter

This parameter is for testing purposes only.

Detailed Description

In Communications Server 2010 client policies replace the Group Policy settings used in previous versions of the product. In Microsoft Office Communicator 2007 and Office Communicator 2007 R2, Group Policy was used to help determine what users could do with Communicator and with Live Meeting; for example, there were Group Policy settings that determined whether or not users could save a transcript of their instant messaging sessions; whether information from Microsoft Outlook was incorporated into their presence information; and whether or not users could include emoticons or formatted text in instant messages.

As useful, and as powerful, as Group Policy is, however, the technology still has some limitations, especially when applied to Microsoft Communications Server. For one thing, Group Policy is designed to be applied on a per-domain or per-OU basis; that makes it difficult to target policies towards a more select group of users (for example, all the users who work in a particular department, or all the users who have a particular job title). For another, Group Policy is only applied to users who log on to the domain, and who log on using a computer; Group Policy is not applied to users who access Microsoft Communications Server over the Internet or who access the system by using a cell phone. This means that the same user can have a very different experience depending on the device her or she uses to log on, and where he or she logs on from.

To help address these inconsistencies Communications Server 2010 uses client management policies instead of Group Policies. Client policies are applied each time a user accesses the system, regardless of where the user logs on from and regardless of the type of device he or she is using. In addition, client policies - like other Communications Server 2010 policies - can readily be targeted towards select groups of users; you can even create a custom policy that’s assigned to a single user.

In case you’re wondering, many of the Group Policy settings from Office Communications Server 2007 R2 have been migrated to the new client policies; client policies contain a number of settings - DisableRTFIM; DisableOneNote12Integration; EnableTracing - that have been carried over from Office Communications Server 2007 R2. In addition, client policies also include settings such as DisablePoorNetworkWarnings and DisplayPhoto - that are unique to Communications Server 2010.

Client policies can be configured at the global, site, and tag scopes. (Policies configured at the tag scope can be assigned to a user or group of users.) The Get-CsClientPolicy cmdlet enables you to return information about the client policies that have been configured for use in your organization.

Return Types

Get-CsClientPolicy returns instances of the Microsoft.Rtc.Management.WriteableConfig.Policy.Client.ClientPolicy object.

Examples

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

Copy Code
Get-CsClientPolicy

In the example shown above, Get-CsClientPolicy is called without including any additional parameters. When called like this, Get-CsClientPolicy returns a collection of all the client policies configured for use in your organization.

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

Copy Code
Get-CsClientPolicy -Identity tag:SalesPolicy

In Example 2, Get-CsClientPolicy is used to return the client policy that has an Identity equal to tag:SalesPolicy. Because identities are unique, this command can never return more than one item.

-------------------------- Example 3 --------------------------

Copy Code
Get-CsClientPolicy -Filter tag:*

Example 3 uses the -Filter parameter to return all the client policies that have been configured at the tag scope. The filter value "tag:*" tells Get-CsClientPolicy to return only those policies where the Identity begins with the string value "tag:".

-------------------------- Example 4 --------------------------

Copy Code
Get-CsClientPolicy -Filter tag:* | Format-Table -Property Identity, ShowRecentContacts, DisplayPhoto, EnableAppearOffline

Example 4 also returns all the client policies that have been configured at the tag scope. In this case, however, the command does not display all the property values for these policies. Instead, the entire collection of policies and their property values is piped to the Format-Table cmdlet. Format-Table, and the -Property parameter, then combine to display (in tabular format) only these property values: Identity, ShowRecentContacts, DisplayPhoto, and EnableAppearOffline.

-------------------------- Example 5 --------------------------

Copy Code
Get-CsClientPolicy | Where-Object {$_.DisableSavingIM -eq $True}

The preceding command returns a collection of all the client policies where the DisableSavingIM property is True. To do this, Get-CsClientPolicy is first called, without any parameters, in order to return a collection of all the client policies configured for use in the organization. This collection is then piped to the Where-Object cmdlet, which selects only those policies where the DisableSavingIM property is equal to (-eq) true ($True).

-------------------------- Example 6 --------------------------

Copy Code
Get-CsClientPolicy | Where-Object {$_.DisableSavingIM -eq $True -and {$_.EnableIMAutoArchiving -eq $False}

In Example 6 the only client policies that are returned are the ones that meet a pair of criteria: the DisableSavingIM property must be True and the EnableIMAutoArchiving property must be False. To do this, the command first calls Get-CsClientPolicy to return a collection of all the client policies configured for use in the organization. That collection is then piped to Where-Object, which picks out only those policies that meet both of the following criteria: DisableSavingIM must be equal to (-eq) True ($True) and EnableIMAutoArchiving must be equal to False ($False). The -and operator tells Where-Object that only objects that meet all the specified criteria should be selected.

-------------------------- Example 7 --------------------------

Copy Code
Get-CsClientPolicy | Where-Object {$_.DisableSavingIM -eq $True -or {$_.EnableIMAutoArchiving -eq $False}

Example 7 is a variation of the command shown in example 6. This time around, however, policies are selected as long as they meet one of the following criteria: either the DisableSavingIM property must be True and/or the EnableIMAutoArchiving property must be False. To accomplish this task, the command first calls Get-CsClientPolicy to return a collection of all the client policies configured for use in the organization. That collection is then piped to Where-Object, which picks out only those policies that meet at least one of the following criteria: DisableSavingIM must be equal to (-eq) True ($True) and/or EnableIMAutoArchiving must be equal to False ($False). The -or operator tells Where-Object that any object that meets at least one of the specified conditions should be selected.