Package com.avaya.clientservices.call

## Interface ChatListener

-     public interface ChatListener

  The client application is notified about status updates reported by the server through the ChatListener object.

  These updates may be the result of local operations on the `Chat` object as well as remote changes initiated by either the server or other users on the conference call.

  See Also:
    `Chat.addListener(ChatListener)`, `Chat.removeListener(ChatListener)`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `onChatAllMessagesChanged​(Chat chat, DataCollectionChangeType changeType, java.util.List<ChatMessage> messages)` | Called to report a change in the chat's list of all chat messages.
    `void` | `onChatPrivateMessagesChanged​(Chat chat, DataCollectionChangeType changeType, java.util.List<ChatMessage> messages)` | Called to report a change in the chat's list of private chat messages.
    `void` | `onChatPublicMessagesChanged​(Chat chat, DataCollectionChangeType changeType, java.util.List<ChatMessage> messages)` | Called to report a change in the chat's list of public chat messages.
    `void` | `onChatServiceAvailable​(Chat chat)` | Called to report that the chat services have a healthy signaling path.
    `void` | `onChatServiceUnavailable​(Chat chat)` | Called to report that the chat services do not have a healthy signaling path.

- - ### Method Detail

    - #### onChatServiceAvailable

          void onChatServiceAvailable​(Chat chat)

      Called to report that the chat services have a healthy signaling path. Depending on the network topology, the chat services may be provided over the same signaling connection as the collaboration or over a different connection. This is why a separate service available/unavailable callback is provided for the Chat object.
      Parameters:
        `chat` - The chat service that the callback is associated with.

    - #### onChatServiceUnavailable

          void onChatServiceUnavailable​(Chat chat)

      Called to report that the chat services do not have a healthy signaling path. Depending on the network topology, the chat services may be provided over the same signaling connection as the collaboration or over a different connection. This is why a separate service available/unavailable callback is provided for the Chat object.
      Parameters:
        `chat` - The chat service that the callback is associated with.

    - #### onChatAllMessagesChanged

          void onChatAllMessagesChanged​(Chat chat,
                                        DataCollectionChangeType changeType,
                                        java.util.List<ChatMessage> messages)

      Called to report a change in the chat's list of all chat messages.
      Parameters:
        `chat` - The chat object that the callback is associated with.
        `changeType` - Indicates the type of change that occurred to the message list.
        `messages` - The messages that have changed. Note that for a change type of COLLECTION_CLEARED this list will be empty.
      See Also:
        `Chat.getAllMessages()`

    - #### onChatPublicMessagesChanged

          void onChatPublicMessagesChanged​(Chat chat,
                                           DataCollectionChangeType changeType,
                                           java.util.List<ChatMessage> messages)

      Called to report a change in the chat's list of public chat messages.
      Parameters:
        `chat` - The chat object that the callback is associated with.
        `changeType` - Indicates the type of change that occurred to the message list.
        `messages` - The messages that have changed. Note that for a change type of COLLECTION_CLEARED this list will be empty.
      See Also:
        `Chat.getPublicMessages()`

    - #### onChatPrivateMessagesChanged

          void onChatPrivateMessagesChanged​(Chat chat,
                                            DataCollectionChangeType changeType,
                                            java.util.List<ChatMessage> messages)

      Called to report a change in the chat's list of private chat messages.
      Parameters:
        `chat` - The chat object that the callback is associated with.
        `changeType` - Indicates the type of change that occurred to the message list.
        `messages` - The messages that have changed. Note that for a change type of COLLECTION_CLEARED this list will be empty.
      See Also:
        `Chat.getPrivateMessages()`