Topic Last Modified: 2013-03-07

Returns the eligible principals for a Persistent Chat category or chat room. Eligible principals include allowed members or managers (for a category of chat room) as well as allowed presenters (chat room only). This cmdlet was introduced in Lync Server 2013.


Get-CsPersistentChatEligiblePrincipal -Category <String> <COMMON PARAMETERS>
Get-CsPersistentChatEligiblePrincipal -Room <String> [-Presenters <SwitchParameter>] <COMMON PARAMETERS>
COMMON PARAMETERS: [-Filter <String>] [-PersistentChatPoolFqdn <String>] [-ResultSize <Int32>]


Example 1

The command shown in Example 1 returns information about the eligible principals for the Persistent Chat category ITChat.

Copy Code
Get-CsPersistentChatEligiblePrincipal -PersistentChatPoolFqdn "" -Category "ITChat"

Example 2

In Example 2, information is returned for all the eligible presenters for the chat room HelpDeskChatRoom.

Copy Code
Get-CsPersistentChatEligiblePrincipal -PersistentChatPoolFqdn "" -Room "HelpDeskChatRoom" -Presenters

Example 3

Example 3 is a variation on the command shown in Example 2; in this example, however, information is returned only for Persistent Chat presenters which do not represent user accounts. To do this, the Get-CsPersistentChatEligiblePrincipal cmdlet is first used to return all the presenters for the chat room HelpDeskChatRoom. That collection is then piped to the Where-Object cmdlet, which selects only those presenters where the PersistentChatPrincipalType property is not equal to (-ne) "user".

Copy Code
Get-CsPersistentChatEligiblePrincipal -PersistentChatPoolFqdn "" -Room "HelpDeskChatRoom" -Presenters | Where-Object {$_.PersistentChatPrincipalType -ne "user"}

Detailed Description

The Persistent Chat service (which replaces the Group Chat service used in Microsoft Lync Server 2010) provides organizations with messaging and collaboration capabilities similar to those found in Internet discussion forums: users can exchange messages in real-time, yet can also revisit and restart those conversations at any time. Conversations can be based around specific topics, and these conversations can be made available to everyone or to only a selected set of users. Likewise, individual chat rooms can be configured so that anyone can post a message or configured so that only designated presenters can post messages.

Chat categories provide the option of specifying certain users as Creators; that is, users who are allowed to create chat rooms within the category. Likewise, chat rooms provide the option of specifying users as Managers and/or Presenters. In order to be assigned any of these roles, however, the users in question must appear on the AllowedMembers list for the specified category/room. You can retrieve the list of allowed members for a room or category by using the Get-CsPersistentChatRoom cmdlet and the Get-CsPersistentChatCategory cmdlets However, if a security group, OU, or domain has been added to the allowed members list you will not see the names of the users in that security group, OU, or domain. For example, if the security group FinanceManagers is on the allowed list you will not see the names of the users who belong to FinanceManagers; instead, you will only see the name of the group.

To view the names of all the users in that group (as well as the names of all the users on the allowed members list for a category or room) use the Get-CsPersistentChatEligiblePrincipal room instead.

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 command-line interface prompt:

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

Lync Server Control Panel: The functions carried out by the Get-CsPersistentChatEligiblePrincipal cmdlet are not available in the Lync Server Control Panel.


Parameter Required Type Description




Name of the Group Chat category for which eligible principals are to be returned. You must use either the Category or the Room parameter when calling the Get-CsPersistentChatEligiblePrincipal cmdlet; however, you cannot use both of those parameters in the same command.




Name of the Group Chat room for which eligible principals are to be returned. You must use either the Category or the Room parameter when calling the Get-CsPersistentChatEligiblePrincipal cmdlet; however, you cannot use both of those parameters in the same command.




Provides a way to filter for eligible principals by using a wildcard search. For example:

-Filter "*smith*"

Note that the Filter parameter can only filter on user SIP addresses.




Fully qualified domain name of the persistent Chat pool. For example:

-PersistentChatPoolFqdn ""




When included in the command, returns the eligible presenters for a Persistent Chat chat room. When not included in the command, the Get-CsPersistentChatEligiblePrincipal cmdlet returns eligible members and managers instead.

This parameter can only be used along with the Room parameter, and can only return information for rooms configured as auditoriums.




Enables you to limit the number of records returned by the cmdlet. For example, to return seven Persistent Chat principals (regardless of the number of users that are in your forest) include the ResultSize parameter and set the parameter value to 7. Note that there is no way to guarantee which seven principals will be returned.

The result size can be set to any whole number between 0 and 2147483647, inclusive. If set to 0 the command will run, but no data will be returned. If you set the ResultSize to 7 but you have only three principals in your forest, the command will return those three principals, and then complete without error.

Input Types

None. The Get-CsPersistentChatEligiblePrincipal cmdlet does not accept pipelined data.

Return Types

The Get-CsPersistentChatEligiblePrincipal cmdlet returns instances of the Microsoft.Rtc.Management.GroupChat.Cmdlets.ADPersistentChatPrincipal object.

See Also