Clear-CsPersistentChatRoom
Removes all the content from a Persistent Chat chat room beginning with the oldest item in the room and continuing through the specified end date. This cmdlet was introduced in Lync Server 2013.
Syntax
Clear-CsPersistentChatRoom
[-Identity] <String>
-EndDate <DateTime>
[-Confirm]
[-WhatIf]
[<CommonParameters>]
Clear-CsPersistentChatRoom
[-Instance] <ChatRoom>
-EndDate <DateTime>
[-Confirm]
[-WhatIf]
[<CommonParameters>]
Description
The Persistent Chat service 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.
Persistent Chat discussions take the form of messages posted in individual chat rooms; chat rooms are discussion forums based on specific topics. By design, messages posted in a chat room remain there forever; at any time, users can return to the room and review all the messages that have been previously posted.
However, there might be times when administrators need to clear a chat room of all (or at least some) of its messages; this might done to free up space in the database or because the chat room is changing its focus.
Regardless, the Clear-CsPersistentChatRoom
cmdlet provides a way for you to delete all the messages in a chat room or to delete all the message posted during a specified period of time (for example, all the messages posted before August 1, 2018).
NOTE: To remove a more finely-targeted set of messages (for example, all the messages posted by a specific user) use the Remove-CsPersistentChatMessage 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 "Clear-CsPersistentChatRoom"}
Skype for Business Server Control Panel: The functions carried out by the Clear-CsPersistentChatRoom
cmdlet are not available in the Skype for Business Server Control Panel.
Examples
-------------------------- Example 1 --------------------------
Clear-CsPersistentChatRoom -Identity "atl-cs-001.litwareinc.com\ITChatRoom" -EndDate "3/1/2018"
The command shown in Example removes all the content from the Persistent Chat chat room ITChatRoom that was added to the room on or before March 1, 2018.
-------------------------- Example 2 --------------------------
Get-CsPersistentChatRoom | Clear-CsPersistentChatRoom -EndDate "3/1/2018" -Confirm:$False
In Example 2, content added on or before March 1, 2018 is removed from all the chat rooms in the organization.
To do this, the command first calls the Get-CsPersistentChatRoom
cmdlet without any parameters in order to return a collection of all the chat rooms in the organization.
That collection is then piped to the Clear-CsPersistentChatRoom
cmdlet, which removes content added on or before March 1, 2018 from each room in the collection.
Note that, in order to suppress the confirmation prompt which would otherwise appear each time you tried to clear a different chat room, the Confirm parameter is added using this syntax: -Confirm:$False
Parameters
-Confirm
Prompts you for confirmation before executing the command. If you set the value of this parameter to False then you will not get a confirmation prompt when you run the cmdlet:
-Confirm:$False
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Lync Server 2013, Skype for Business Server 2015 |
-EndDate
Indicates the last date for which content should be removed. For example, if you specify an EndDate of 3/1/2018 (March 1, 2018 in US English) then all the Persistent Chat content added to the room on or before 3/1/2018 will be deleted.
You must specify an EndDate when running the Clear-CsPersistentChatRoom
cmdlet.
Type: | DateTime |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Lync Server 2013, Skype for Business Server 2015 |
-Identity
Identity of the chat room whose content is to be removed. For example:
-Identity "atl-cs-001.litwareinc.com\ITChatRoom"
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Lync Server 2013, Skype for Business Server 2015 |
-Instance
Allows you to pass a reference to an object to the cmdlet rather than set individual parameter values.
Type: | ChatRoom |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Applies to: | Lync Server 2013, Skype for Business Server 2015 |
-WhatIf
Describes what would happen if you executed the command without actually executing the command.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Lync Server 2013, Skype for Business Server 2015 |
Inputs
The Clear-CsPersistentChatRoom
cmdlet accepts pipelined instances of the Microsoft.Rtc.Management.GroupChat.Cmdlets.ChatRoomObject object.
Outputs
None. Instead, Clear-CsPersistentChatRoom
modifies existing instances of the Microsoft.Rtc.Management.GroupChat.Cmdlets.ChatRoomObject object.