
In this introductory session, we will discuss:
Extensible Messaging and Presence Protocol (XMPP) is a communication protocol for message-oriented middleware based on XML (Extensible Markup Language). It enables the near-real-time exchange of structured yet extensible data between any two or more network entities. In this session, we will see what each letters in the XMPP stands for and the features it offers.
I recommend using the 'Ubuntu Server 16' for better compatibility with the Prosody Server.
(In the free tier AMI list, scroll down and you can find the Ubuntu Server 16.0.. LTS)
In this lecture, we will see how we can start an Amazon EC2 Instance.
The configuration include selecting various options for configuring the server.
Allowing the incoming and out going ports especially for XMPP communication and server management.
Creating a key pair to access the server.
How to use the key pair to manage the server.
Using Bitwise SSH client to access the server and login to the server.
I recommend using the 'Ubuntu Server 16' for better compatibility with the Prosody Server.
In this lecture, we will compare few popular open source chat servers available.
Discuss their pros and cons
How and why we are finalizing the Prosody Chat server from the list of others
Installing the Prosody Chat server in our Amazon Ubuntu VPS
This lecture includes the basic configuration of the prosody server
How we can edit the prosody configuration file using text editor or command line
Basics of lua language.
How to save the file and restart the server service to make the changes effective.
SSL Certificates provide secure, encrypted communications between a client device and a server. The old way of plain text chat message exchange is a very risky game during the modern days of expert hackers. So we include an additional layer of security by configuring the SSL certificate for our server and the client devices could encrypt and send the messages
Pidgin is a free and open-source multi-platform instant messaging client, based on a library named libpurple that has support for many instant messaging protocols, allowing the user to simultaneously log into various services from one application
We will download and configure pidgin to use with our XMPP Server
Conversations is a free and open source Jabber/XMPP client for Android. Easy to use, reliable, battery friendly. With built-in support for images, group chats and e2e encryption. We will configure this app to work with our prosody XMPP server
ChatSecure is a messaging application for iOS which allows OTR and OMEMO encryption for the XMPP protocol. ChatSecure is free and open source software available under the GNU General Public License. We will configure ChatSecure app to work with our XMPP Server
We will also initiate a chat in between the devices, iOS and Android
Beginners who are curious about the technology behind chat applications and professionals who want to enhance their knowledge in XMPP server and client technology are welcome to have your skills enhanced.
Also entrepreneurs who wish to start chat server application as a 'Software as a Service' business model are welcome too.