Skip to main content

Core in-app messaging features

CometChat provides a powerful suite of messaging features. A subset of these features called 'Messaging Core' provide features which are bare minimum to build a good chat user experience.

The following are some of the most used Core features:

  • User to User and Group chat:
    • This is the most basic form of messaging which can exists between two individual users or users that are a part of a group. For a developer's perspective, the actual chat works using the following delivery methods:
    • On the message sender's side, the messages are sent using CometChat UI Kits which use SDKs which act as an API wrapper.
    • On the message receiver's side, the messages are delivered using a Websocket connection to the CometChat plaform which is managed by the SDKs.
    • For more details on Websockets and its connectivity details, please visit Managing Web Sockets in the CometChat SDK.
    • By default, user and group messaging along with Web Socket implementation is available in the UI Kits.
  • Media sharing:
    • Sharing files, videos and other media types are the key in today's messaging world. You can implement media messages using SDKs or UI Kits as well as use Extensions for Gifs and Stickers.
    • By default, support for Media messages is available in the UI Kits.
  • Message Delivery and Read receipts:
    • Message delivery receipts indicate that a message has reached the message receiver. Message read receipt indicates that the message has been read by the message receiver. CometChat supports the following features from a message delivery and read indicator perspective:
    • Mark up to a message as delivered.
    • Mark up to a message as read.
    • Mark all messages after a particular message as unread.
    • To view these features, please visit Delivery and Read receipts in the SDK docs.
    • By default, support delivery and read receipts is available in the UI Kits.
  • Typing indicators:
    • Typing indicators in a conversation provide an indication to other users that a given user is typing a message. To implement typing indicators, visit the Typing indicators section of the SDK docs.
    • By default, support Typing indicators is available in the UI Kits.
  • Mentions (@username):
    • Mentions allow users to refer to a specific user in a conversation. This is done by sending a '@username' in the message to address that user.
    • To implement Mentions, please visit Mentions section in the SDK docs.
    • By default, support for Mentions is available in the UI Kits.
  • Reactions:
    • Reactions on a message allow users to express their emotions using emojis. To implement Reactions, please visit the Reactions section in the SDK docs.
    • By default, support for Reactions is available in the UI Kits.
  • Threaded Conversations:
    • Message threads allow users to branch off a conversation specific to a topic within a conversation in a sub-conversation. Such a conversation is called a Threaded conversation. To implement Threads in a conversation, please visit Threaded Messages section in the docs.
    • By default, support for Threaded conversations is available in the UI Kits.
  • User presence:
    • User presence helps users to understand if a particular user is online and hence available for chat. To implement User presence, please visit the User Presence section in the docs.
    • By default, support for User Presence is available in the UI Kits.