Rocket.Chat Integration

Free product design tips
Join our newsletter and get insights that will change your product design perspective
By submitting your email you agree to receive the content requested and to LeanCode's Privacy Policy.
or follow us

If you build an app, there is a high chance that you’ll need some way of live communication. While browsing the Internet, you’ll stumble upon lots of examples with different purposes and approaches. The obvious one is apps centered around communication like Messenger or Slack. But some are more hidden, like support chat in the Uber app. Many websites include flashy “contact us” widgets that allow them to communicate with their users if they have any questions.

Once you realize that your app needs a chat too, you have a hard nut to crack - use a solution from the market or go full custom and tailor the communication precisely to your needs. There’s no need to point out that you have to accept its cons no matter which approach you choose. In order to make a rational choice, you need to consider all your requirements. For example… Do you need just plain text chat with no fancy formatting? Do you need attachments? Do you need mentions? Reactions? Do you need “X is typing”? Do you need voice or video? Do you need group chats? Do you need a custom layout? Do you need powerful administration tools? Do you need access to chat history? And most importantly, how much do you want to spend on it?

Zomm integration, custom layout

Recently we were challenged to a difficult problem - develop a chat that has all the “yeses” but doesn’t spend a fortune on it. Based on our experience we knew that going full custom wasn't a viable option so we started digging for other products with the main focus on being able to embed the chat in our app. One of the options was Rocket.Chat as we knew our client used it as their standalone chatting solution before. At first glance, it didn’t seem like something we could go with - just a Slack alternative. But to our surprise, there was a key feature for us hidden in the docs - Embedded Layout. So let's trace back to our requirements:

  • Fancy formatting - ✓
  • Attachments - ✓
  • Mentions - ✓
  • Reactions - ✓
  • “X is typing” - ✓
  • Voice and video - ✓
  • Group chats - ✓
  • Custom layout - ✓
  • Powerful administration tools - ✓
  • Chats history - ✓
  • Cost-efficient - ✓

Regarding cost efficiency - if you already have some infrastructure capability, Rocket.Chat offers a free self-hosted plan where you have negligible running cost if you have a throughput that your infrastructure can handle. All in all, there are solutions that can render my initial assumptions, that you can’t have everything, invalid. Of course, this is no golden hammer - it still has many limitations but with your next project, you might consider using Rocket.Chat.

One additional and not so obvious benefit of using Rocket.Chat is that your users can download a fully featured app with push notifications on their Android/iOS device. So they always stay connected to you. We on our side handle everything from account creation to automatic login when the chat is embedded. But you’re giving your users the opportunity to still make use of chat features when they’re on the go (which might be very useful or unwanted depending on the case).

If you want to read about another case, take a look at our article on Zoom Integration.

Free product design tips
Join our newsletter and get insights that will change your product design perspective
By submitting your email you agree to receive the content requested and to LeanCode's Privacy Policy.
or follow us
Rate this article

No reviews yet!

Are you looking for custom solutions?

Read more

With the requirement of being fully remote, companies were desperately seeking solutions. One of them was Zoom. At LeanCode, we were previously using Zoom as a communication tool with great outcomes. While working on the FutureCollars platform, we applied it as well. See how their backend systems communicate with Zoom API.
Image tile
There are many proposals and specifications that aim to provide new features for web developers that can close the gap with native apps. Let’s take a look at what’s already possible to do in a browser and how the gap between the Web and the native apps gets smaller and smaller.
Image tile
logo

Case Study

Technologies

.NET
React