This chat app emulates the same idea of running a chat app using something like Google Firebase.
It has the advantages of software like https://www.ringcentral.com/digital-customer-engagement.html or any other customer engagement service, FREE OF COST. It has no concurrent connection limit
Your chats are on the right, theirs are on the left.
- Embed the HTML and script into your index.html file
- Run the app.js using Node
node app.js
- Open the chat on the Index pages
Add support for keeping message logs in localStorageRefreshing or navigating should keep the session open, and reload the chat since VT is not an SPAAdd support for auto-connecting if the chat window is already open and user navigates or refresh (will need to store the value of the connected room then use JS to reopen and reconnect to a specific room using join_room directly)If msg == room is full, setTimeout every 30 seconds join_random_room until joinedRoom == trueBold the message senders nameFix the date stampRender messages on opposite sidesupdate styles of chatFix hovering date to either stay updated or to scroll.Add "User is typing..." feature~~ SCRAPPED: 11) Edit scrollwheel style~~- use userid instead of username
- wrap the forEach's in asynchronous function calls to prevent race conditions
Gif of new version of chat
Image of chat that fills up the screen from Customer Service perspective
Image of chat that fills up the screen from Customers perspective
Image of the retrying connection function
Image of the retrying connection function finding an available room
Image of swapping customers from the Customer Service Representative perspective