Search This Blog

Featured Post

Machine Learning, Big Data, AI, Deep Learning

Tuesday, April 23, 2019

Create an instant messager

How to create an instant messager like whatsapp

Erlang: This is the chief programming language used to develop the epic chat app Whatsapp. The Erlang programming language was most appreciated for its performance reasons, speed and scalability.

Ejabberd: open source jabber resembles (WhatsApp clone);  XMPP (Extensible Messaging and Presence Protocol) protocol to handle the message delivery system over on any local area network or the Internet.The Ejabberd server is developed using certain pluggable modules which enables wide features such as:

One-on-one Chat
Contact actual and presence listing
Store and forward (Offline messages)
Personal Event Protocol (PEP) and Message typing specification
Multi-User Chat (MUC) — Group Chat
Privacy Setting and Account Spoofing
Message Archive Management (MAM)

FreeBSD: WhatsApp, which has sent over billions of messages every day on its platform, has been built on FreeBSD.The FreeBSD being a single distributor have many advantages with Installation and provided easy creation of binary packages.

YAWS: (Yet Another Web Server) is written entirely in Erlang. YAWS runs as an embedded web server on the combination in another Erlang application.

Lighttpd: Lighttpd is an open source web server. The lightweight web server is deployed on WhatsApp to acquire a secure, flexible, fast and compliant feature.

PHP:  PHP is an open source language . In combination with AJAX, a powerful web development technology to display data from the database using Ajax to develop responsive real-time chat app.

BEAM: BEAM is a virtual machine to run the Erlang. It is a bunch of built-in functions such as if-simple network interface tool. BEAM interface to support the functions — Schedulers, Processes, Message passing, Memory Management and Multi-core etc.

Custom XMPP Server: Whatsapp encoded XMPP server to its functionality by reducing the byte of the keywords. The technology is used to enable message exchange in a real-time. The XML format is a human-oriented and it’s not meant to be read by any machine learning.

HTML5 WebSockets: The WebSocket is a feature in HTML5 used to establish a solid connection between the web browser and the server. The WebSocket data are directly sent over a socket which provides faster and persistent communication between the server and web browser.

Mnesia DB: This is a real-time database management system written in the Erlang language. Mnesia is a soft database that allows for store the messages, files, images, videos, documents and the rest multimedia files that running on your app. This is a kind of technology that goes beyond your expectation that has the potential to store any amount of data.

Reference https://hackernoon.com/how-to-build-your-own-real-time-chat-app-like-whatsapp-9d1d058afd5b
Reference https://octodev.net/how-to-develop-a-chat-app-like-whatsapp/

Create an instant messager with Python


Reference https://medium.com/swlh/lets-write-a-chat-app-in-python-f6783a9ac170

Create an instant messager with Java


Reference https://towhidz.wordpress.com/2012/03/03/simple-chat-applicationclient-server-in-android/


No comments:

Post a Comment