# Class: Chat

## Constructor

#### new Chat(chatService)

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `chatService` | AvayaClientServices.Services.Conference.ChatService |

## Methods

#### addOnChatMessageReceivedCallback(callback) → {void}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `callback` | AvayaClientServices.Services.Conference.Chat#onChatMessageReceivedCallback |

  ##### Returns:

  { void }

#### addOnChatServiceAvailableCallback(callback) → {void}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `callback` | AvayaClientServices.Services.Conference.Chat#onChatServiceAvailableCallback |

  ##### Returns:

  { void }

#### addOnChatServiceUnavailableCallback(callback) → {void}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `callback` | AvayaClientServices.Services.Conference.Chat#onChatServiceUnavailableCallback |

  ##### Returns:

  { void }

#### getAllMessages() → {AvayaClientServices.Base.DataSet.<AvayaClientServices.Services.Conference.ChatMessage>}

  ##### Returns:

  { AvayaClientServices.Base.DataSet.<AvayaClientServices.Services.Conference.ChatMessage> }

#### getAllPrivateMessages() → {AvayaClientServices.Base.DataSet.<AvayaClientServices.Services.Conference.ChatMessage>}

  ##### Returns:

  { AvayaClientServices.Base.DataSet.<AvayaClientServices.Services.Conference.ChatMessage> }

#### getAllPublicMessages() → {AvayaClientServices.Base.DataSet.<AvayaClientServices.Services.Conference.ChatMessage>}

  ##### Returns:

  { AvayaClientServices.Base.DataSet.<AvayaClientServices.Services.Conference.ChatMessage> }

#### removeOnChatMessageReceivedCallback(callback) → {void}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `callback` | AvayaClientServices.Services.Conference.Chat#onChatMessageReceivedCallback |

  ##### Returns:

  { void }

#### removeOnChatServiceAvailableCallback(callback) → {void}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `callback` | AvayaClientServices.Services.Conference.Chat#onChatServiceAvailableCallback |

  ##### Returns:

  { void }

#### removeOnChatServiceUnavailableCallback(callback) → {void}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `callback` | AvayaClientServices.Services.Conference.Chat#onChatServiceUnavailableCallback |

  ##### Returns:

  { void }

#### sendPrivateMessage(message, participant) → {AvayaClientServices.Base.Promise}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `message` | string |
  `participant` | AvayaClientServices.Services.Conference.Participant |

  ##### Returns:

  { AvayaClientServices.Base.Promise }

#### sendPublicMessage(message, message) → {AvayaClientServices.Base.Promise}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `message` | string |
  `message` | string |

  ##### Returns:

  { AvayaClientServices.Base.Promise }

## Type Definitions

#### onChatMessageReceivedCallback(chat, message) → {void}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `chat` | AvayaClientServices.Services.Conference.Chat |
  `message` | AvayaClientServices.Services.Conference.ChatMessage |

  ##### Returns:

  { void }

#### onChatServiceAvailableCallback(chat) → {void}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `chat` | AvayaClientServices.Services.Conference.Chat |

  ##### Returns:

  { void }

#### onChatServiceUnavailableCallback(chat) → {void}

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `chat` | AvayaClientServices.Services.Conference.Chat |

  ##### Returns:

  { void }