Skip to content

PubNubDevelopers/Customized-Chat-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Customized Chat Application

Customized chat applications powered by the PubNub Chat SDK

This application is designed to be used in conjunction with the Chat Builder Dashboard

Implementation Status

Platforms

Web (TypeScript) Android iOS
Description Web app written in React (Next.js) Native Android application written in Kotlin Native iOS application written in Swift
SDK PubNub JavaScript Chat SDK PubNub Kotlin Chat SDK PubNub Swift Chat SDK
Status Mostly Complete In Progress In Progress
Platform ReadMe Web ReadMe Android ReadMe iOS ReadMe

Features

Feature Description Docs
Logging In The demo allows you to choose from one of a list of pre-existing users
Public Channels Channels anybody can join and send / receive messages Docs
Sending & Receiving messages Send a receive messages reliably and at scale using PubNub's infrastructure Docs
Message History Store and retrieve any number of historic messages, per channel. Docs
Message Reactions (emoji) Add emoji reactions and updates others in real-time that a message's reactions have changed. Docs
Quoting a Message Add context to your message by quoting a previous messages Docs
Pinning a Message Pin a message on a per-channel basis Docs
Replying in a Thread Message threads are first class citizens to keep conversations organized. Docs
Forward a Message Forward a message from one channel to another Docs
Edit Messages Change a message's contents whilst keeping a record of all changes made. Docs
Delete Messages Delete a message which can be (optionally) later recovered. Docs
Restore a deleted Message Restore a previously deleted message Docs
Report a Message for moderation Notify an administrator that a message needs attention (uses BizOps Workspace) Docs
Private Groups A group (channel) intended for a predefined selection of users. Docs
Direct (1:1) Conversations A channel designed for 2 participants only Docs
Group (Channel) Settings Change the metadata associated with a channel such as name or display background Docs
Read Receipts Keep track of which messages have been sent and read Docs
Typing Indicator Be notified when a user or users are typing on a per-channel basis. Docs
Unread Messages Keep track of unread messages per-channel and catch-up on missed activity when reloading the application Docs
Marking Messages as Read Mark messages as read on a per-message, per-channel or global basis Docs
User Presence This application shows global user presence. The Chat SDK also supports per-channel User presence. Docs
Adding File Attachments Exchange file attachments such as images, video and documents. Uses PubNub's serverless storage. Docs
Mentioning Users @Mention a user by name and they will be notified. Docs
Referencing Channels #Reference a channel by name to add context to a message Docs
Your Profile User information is stored in PubNub and edits are shared in real-time with other users Docs
View others' profiles Keep track of all your app's users' public information
Synchronizing Updates Updates to User or Channel metadata are shared in real-time with all app users regardless of scale.
Integration with BizOps Workspace User & Channel Management Manage users and channels, i.e. see and modify their metadata, using PubNub BizOps Workspace Docs
Integration with BizOps Workspace Channel Monitor Monitor and moderate individual channels Docs
Integration with BizOps Workspace User Moderation Mute or Ban users so they are unable to participate in conversations Docs
Mobile Push Messages Automatically send PubNub messages as FCM or APNS messages so your users can continue using your app when it is in the background on mobile. Docs

Demo

Dashboard

  1. Load the dashboard (https://pubnub-chat-builder.netlify.app/)
  2. Configure your application as needed, or use one of the predefined templates
  3. Create and configure a PubNub Keyset from the PubNub Admin Portal
  4. Provide the keyset to the dashboard and follow the instructions to run or build your application.

Get Your PubNub Keys

  1. You’ll first need to sign up for a PubNub account. Once you sign up, you can get your unique PubNub keys from the PubNub Developer Portal.

  2. Sign in to your PubNub Dashboard.

  3. Click Apps, then Create New App.

  4. Give your app a name, and click Create.

  5. Click your new app to open its settings, then click its keyset.

  6. The dashboard will list your keyset requirements. It is important to note the App Context settings: Check the following boxes: User Metadata Events, Channel Metadata Events, Membership Events. Uncheck the following boxes: Disallow Get All Channel Metadata, Disallow Get All User Metadata

  7. Copy the Publish and Subscribe keys and provide them to the dashboard .

Building and Running

Follow the instructions on the dashboard to build or run the customized application for your platform(s) of choice.

Contributing

Please fork the repository if you'd like to contribute. Pull requests are always welcome.

About

Customized chat applications powered by the PubNub Chat SDK

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published