Topic Last Modified: 2014-02-21

Tests the ability of a user to employ group expansion. Lync Server enables users to configure an Active Directory distribution group as a contact. When you "expand" a group you will see the name and presence information for each member of the group. This cmdlet was introduced in Lync Server 2010.

Syntax

Test-CsGroupExpansion -TargetFqdn <String> [-Authentication <TrustedServer | Negotiate | ClientCertificate | LiveID>] [-External <SwitchParameter>] [-RegistrarPort <Int32>] [-UserSipAddress <String>] <COMMON PARAMETERS>
Test-CsGroupExpansion -UserCredential <PSCredential> -UserSipAddress <String> [-Authentication <TrustedServer | Negotiate | ClientCertificate | LiveID>] [-External <SwitchParameter>] [-RegistrarPort <Int32>] [-TargetFqdn <String>] <COMMON PARAMETERS>
Test-CsGroupExpansion -TargetUri <String> -UserSipAddress <String> [-Authentication <TrustedServer | Negotiate | ClientCertificate | LiveID>] [-WebCredential <PSCredential>] <COMMON PARAMETERS>
COMMON PARAMETERS: -GroupEmailAddress <String> [-DomainController <String>] [-Force <SwitchParameter>] [-OutLoggerVariable <String>] [-OutVerboseVariable <String>]

Examples

EXAMPLE 1

The command shown in Example 1 connects to the Registrar pool atl-cs-001.litwareinc.com in order to verify group expansion. To run the test, the command uses the group FinanceGroup@litwareinc.com.

Copy Code
Test-CsGroupExpansion -TargetFqdn atl-cs-001.litwareinc.com -GroupEmailAddress FinanceGroup@litwareinc.com 

Detailed Description

Users sometimes need to communicate on a regular basis with all the members of an Active Directory distribution group; for example, that group might comprise all the members of a team or all the people assigned to a particular project. In recognition of this, Lync Server allows you to configure a distribution group as a contact. If you do this, you can then send the same instant message to all the group members simply by addressing the message to the group rather than each individual member of that group.

There might also be times when you need to communicate with (or check the presence of) certain individuals in the group. Group expansion enables you to quickly and easily view all the group members and their current status. In addition to that, you can also select one or more group members, and then send an instant message just to those users rather than to all the members of the group.

Group expansion is enabled and disabled by using the Set-CsWebServiceConfiguration cmdlet. If group expansion is enabled, you can determine whether the feature is working by running the Test-CsGroupExpansion cmdlet. With this cmdlet, you specify an Active Directory distribution group by using the group’s email address. The Test-CsGroupExpansion cmdlet then uses group expansion to retrieve the group membership and compare the retrieved list with the membership of the group email address that you supplied. If the two lists match, then group expansion is working correctly.

Note that you can test group expansion in two different ways: by testing the service itself or by testing the associated web service.

Who can run this cmdlet: 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 "Test-CsGroupExpansion"}

Parameters

Parameter Required Type Description

GroupEmailAddress

Required

System.String

Email address of the targeted distribution group. For example: -GroupEmailAddress "FinanceGroup@litwareinc.com".

TargetFqdn

Required

System.String

Fully qualified domain name (FQDN) of the Registrar pool where group expansion is to be tested. For example: -TargetFqdn "atl-cs-001.litwareinc.com".

Note that you cannot use both the TargetUri parameter and the TargetFqdn parameter in the same command.

TargetUri

Required

System.String

Uniform Resource Identifier (URI) of the Group Expansion Web service. For example: -TargetUri "https://atl-cs-001.litwareinc.com/groupexpansion".

Note that you cannot use both the TargetUri parameter and the TargetFqdn parameter in the same command.

UserCredential

Required

System.Management.Automation.PSCredential

User credential object for the user account to be used in the test. The value passed to UserCredential should be an object reference obtained by using the Get-Credential cmdlet. For example, this code returns a credentials object for the user litwareinc\kenmyer and stores that object in a variable named $x:

$x = Get-Credential "litwareinc\kenmyer"

You will need to supply the user password when running this command.

The user credential is not required if you are running the test under the credentials of the logged-on user and using the TargetFqdn parameter. The user credential is required if you are using the TargetUri parameter.

Authentication

Optional

Microsoft.Rtc.Management.SyntheticTransactions.SipSyntheticTransaction+AuthenticationMechanism

Type of authentication used in the test. Allowed values are:

* TrustedServer

* Negotiate

* ClientCertificate

* LiveID

DomainController

Optional

System.String

Enables you to connect to the specified domain controller in order to test group expansion. To connect to a specific domain controller, include the DomainController parameter followed by the fully qualified domain name (FQDN) of that server. For example:

-DomainController "atl-dc-001.litwareinc.com"

External

Optional

System.Management.Automation.SwitchParameter

Enables you to verify that external users can use group expansion.

Force

Optional

System.Management.Automation.SwitchParameter

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

OutLoggerVariable

Optional

System.String

When present, detailed output from running the cmdlet will be stored in the specified variable. This variable includes a pair of methods – ToHTML and ToXML – that can then be used to save that output to either an HTML or an XML file.

To store output in a logger variable named $TestOutput use the following syntax:

-OutLoggerVariable TestOutput

Note: Do not use prepend a $ character when specifying the variable name.To save the information stored in the logger variable to an HTML file, use a command similar to this:

$TestOutput.ToHTML() > C:\Logs\TestOutput.html

To save the information stored in the logger variable to an XML file, use a command similar to this:

$TestOutput.ToXML() > C:\Logs\TestOutput.xml

OutVerboseVariable

Optional

System.String

When present, detailed output from running the cmdlet will be stored in the specified variable. For example, to store output in a variable named $TestOutput use the following syntax:

-OutVerboseVariable TestOutput

Do not prepend a $ character when specifying the variable name.

RegistrarPort

Optional

System.Int32

SIP port used by the Registrar service. This parameter is not required if the Registrar uses the default port 5061.

UserSipAddress

Optional

System.String

SIP address of the user to be used in the test. If this parameter is not specified, then the Test-CsGroupExpansion cmdlet will conduct its checks using the account of the logged-on user.

WebCredential

Optional

System.Management.Automation.PSCredential

An object containing user credentials for accessing the Location Information service. This object can be retrieved by calling the Get-Credential cmdlet and supplying the appropriate credentials.

This parameter is required if the TargetUri and UserSipAddress parameters are specified, and the computer on which the command is run does not have a server certificate.

Input Types

None. The Test-CsGroupExpansion cmdlet does not accept pipelined input.

Return Types

The Test-CsGroupExpansion cmdlet returns an instance of the Microsoft.Rtc.SyntheticTransactions.TaskOutput object.

See Also