HTTPS SSH
Edit: This project is no longer mantained. I'll leave it in bitbucket just for the joy of seeing
the code I wrote some time ago...

I did it just because I wanted to learn Erlang. For all the tests I've done the chat seems very
stable, but I would not use it in production in any case.  After having finished this web chat,
I read the XMPP The definitive Guide [1] and I thougt: nice I've implmented half of the protocol
of XMPP without even know it (well, sometimes not in a very clever way but, you know...). I strongly
recommend you to learn more about XMPP, BOSH and find a good XMPP server like ejabberd.

Ah! And I always wanted to have screenshots of the application, so here they are (old ones):
http://4.bp.blogspot.com/-KA6LH4jhYLU/T33GjBasOPI/AAAAAAAAAZA/-SJ53Tkr8w8/s1600/gaab_login.png
http://1.bp.blogspot.com/-0u7kF2hS_LM/T33GeTCcBdI/AAAAAAAAAY0/uzL9JJzwAxM/s1600/gaab_capture1.png

[1] http://shop.oreilly.com/product/9780596521271.do


---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ----------


Description
===========
Web Chat Server written from the scratch in Erlang. Can handle hight load (50K+ users and 1500 messages/second).

Usage
=====
Just create an account, add your friends and chat with them. It's a chat, there are no secrets on the usage. Any conversation is recorded.

Install
=======
Install required system dependences:
$ sudo aptitude install erlang git

Install recommended system dependencies:
$ sudo aptitude install mercurial

Clone the project from bitbucket to the current directory:
$ hg clone https://bitbucket.org/inedit00/gaab


Download and compile all Erlang dependences listed in rebar.config:
$ cd gaab
$ make

Run the application:
$ ./start-dev.sh


BASIC CHAT FUNCTIONALITY TEST
-----------------------------
(gaab_dev@tpad)1> Bob = gaab_server:login("bob").
	<0.98.0>
(gaab_dev@tpad)2> Alice = gaab_server:login("alice").
	<0.100.0>
(gaab_dev@tpad)3> gaab_user:send_message(Bob, "alice", "Hi Alice!").
	[alice] Message received from bob: "Hi Alice!"
	ok
(gaab_dev@tpad)4> gaab_user:send_message(Alice, "bob", "Hi, darling.").
	[bob] Message received from alice: "Hi, darling."
	ok
(gaab_dev@tpad)5> gaab_user:send_message(Alice, "ted", "Ted, are you online?").
	Ummm.... the user "ted" seems to be offline. Message not delivered.
	ok

DOC
----
Create the documentation of the project:
$ make edoc

License
========
Copyright (C) Jan Carreras Prat 2012.
License: This project is under GPL3. See the COPYING file or take a look to http://www.gnu.org/licenses