ChatRoom Class

Definition

Describes a chat room. A chat room is a topic oriented, access controlled forum for posting real-time messages to be shared with a group of users. Chat rooms optionally support logging of chat history, which is available to members for review or query. To obtain a reference to a ChatRoom, and access other metadata about the chat room, see ChatRoomManagementServices.

public ref class ChatRoom
public class ChatRoom
type ChatRoom = class
Public Class ChatRoom
Inheritance
ChatRoom

Remarks

This class describes the configuration of a chat room. To send and receive messages in a chat room, you must be a member, and join the chat room using BeginJoin(ChatRoomSummary, AsyncCallback, Object). To facilitate this process, ChatRoom supports an implicit conversion to ChatRoomSummary. (See Implicit(ChatRoom to ChatRoomSummary))

Chat rooms belong to a Category, which provides logical groupings of chat rooms, as well as a set of common properties applying to all chat rooms in the category. The category is identified by the ParentCategoryUri.

Each chat room describes its purpose with metadata such as Name and Description. In addition, the chat room has properties which can be set to control its behavior. Permission to join or manage a chat room is controlled by an access control list. Users must be in scope on the Category in order to be added as a member. To find users who are eligible to be granted a specific role on a chat room, see BeginFindUsersOrGroupsForRole(ChatRoomRole, Uri, String, AsyncCallback, Object)

Properties

AddIn

Gets the add-in for this chat room. An add-in is a web page that can be embedded in a chat room. The chat room interacts with the add-in, sending it notification of inbound and outbound messages. The add-in also has access to metadata about the chat room and the messages which are posted to it. An add-in must be registered with the system before it can be used on a chat room.

ChangeHistory

Gets the change history of this chat room.

ChatRoomUri

Gets the URI of the chat room. The URI provides a unique key for identifying a chat room. The URI is generated by the Persistent Chat Server when the chat room is created, and is never changed.

Description

Gets the description of this chat room. The description is optional, and is used only to provide additional details about the purpose of this chat room.

FileStoreUri

Gets the file store URI. The file store URI is address of the web service to which files will be uploaded when posted to this chat room.

IsAuditorium

Gets a value indicating whether this chat room is an auditorium-style room. When true, only those users who are on the Presenters list may post messages. Other members of the chat room can read the messages and chat history, but may not participate in the conversation. The default value of this setting is false, which means that any user who is a member of the chat room may participate in the conversation.

IsDisabled

Gets a value indicating whether this chat room is disabled. Once created, a chat room cannot be deleted. However, it can be disabled; disabling a chat room prevents users from joining the chat room, or reading the chat history.

Name

Gets the name of the chat room. The chat room name is a short, unique name which identifies the purpose of the room.

ParentCategoryDescription

Gets the description of the parent category of this chat room. Chat rooms are organized hierarchically into categories. Each category may contain any number of chat rooms. Each chat room and category in the system has precisely one parent category. There is a single top-level chat room category, called the root category, which is referenced by the RootCategoryUri To change the parent category, use BeginChangeParentCategory(ChatRoom, Uri, AsyncCallback, Object).

ParentCategoryName

Gets the name of the parent category of this chat room. Chat rooms are organized hierarchically into categories. Each category may contain any number of chat rooms. Each chat room and category in the system has precisely one parent category. There is a single top-level chat room category, called the root category, which is referenced by the RootCategoryUri To change the parent category, use BeginChangeParentCategory(ChatRoom, Uri, AsyncCallback, Object).

ParentCategoryUri

Gets the URI of the parent category of this chat room. Chat rooms are organized hierarchically into categories. Each category may contain any number of chat rooms. Each chat room in the system has precisely one parent category. There is a single top-level chat room category, called the root category, which is referenced by the RootCategoryUri To change the parent category, use BeginChangeParentCategory(ChatRoom, Uri, AsyncCallback, Object).

Privacy

Gets the visibility of this chat room. Visibility defines the behavior of searches, in which a user queries the system for chat rooms matching a certain criteria (See BeginBrowseChatRoomsByCriteria(String, Boolean, Boolean, Boolean, AsyncCallback, Object) or BeginBrowseChatRoomsByCriteria(String, Boolean, Boolean, Boolean, Int32, AsyncCallback, Object)). Chat rooms which are not visible to a user will not appear in the search results. Visibility can also determine who can join a chat room. When Open, the chat room is visible to all users and can be joined by all users in scope on the parent category. When Private, the chat room is visible to all users in scope on the parent category. If Hidden, the chat room will only be visible to its members. The default value is Private.

SendInvitationsToMembers

Gets the default behavior of this chat room for sending invitations to new members. Invitations are issued by the persistent chat server when a user connects, and subsequently when a new user is added to the member list.

The value of this property is derived by combining the value set on this instance (if any) with the value that is inherited from the parent category. The default value is null, which causes the chat room to inherit the value set by the parent category. The setting can be overriden only if the parent category counterpart is set to true.

Operators

Implicit(ChatRoom to ChatRoomSummary)

Performs an implicit conversion from ChatRoom to ChatRoomSummary.

Applies to