When I work a software development company before, one from our enterprice client wanted to make instant messaging platform for their product support. At that time I already researched every single instant messaging giants in the world. So, lets get started:
First of all you need to know that for Instant messaging you need to make or use one of the famous protocols that exists. To build this you need much much much work to do. Main thing is protocols.
Facebooks messenger built with MQTT. MQTT is specifically designed for applications like sending telemetry data to and from space probes, so it is designed to use bandwidth and batteries sparingly. And everything else (messaging logic, smileys and so on) is up to you and can be done most of server side languages. You should read this post if you want more: Building Facebook Messenger
My thoughts about MQTT protocol is that this is very fundamental and facebook choose it because they can build and continue to customize their protocol very easy with that.
Whatsapp took a different way. Whatsapp used XMPP protocol. They customized the protocol of course. Whatsapp use erlang for instant messaging processes. Erlang is very popular language on this area (Messaging). Nothing more. There you can find more Protocols and libraries for building online chat like these. They use Ejabberd - XMPP server: http://docs.ejabberd.im/u
BONUS:
Do you ever heard about Telegram?
They built their own protocol and in my opinion this protocol is the safest protocol ever. They are using their own protocol, so you can send any file you want (video, document, zip ...) in any size you want. If you want telegram suggests you to resize image to send but if you want to send original you dont have to send file compressed or low quality. Check this out: https://telegram.org/
0 comments:
Post a Comment