add connection to pool of connections on connecting with the server
handle ping-ing the client to check if it’s alive
Spawn alongside handler in crier_server.
If the client does not respond in time, send a call over to
the remove_client function in crier_user_store.
figure out a way to kill connections when they don’t respond
handle incoming pings from client
parsing input to IRC standards
create a module for interpreting input
migrate error logs to lager
check if nick/username is taken before assigning
Shouldn’t be too hard, just make sure response is `[]` from
a selection query before setting the nick.
send appropriate error codes
Refer to table at the bottom of this doc
find a way to get the address of the server and hostname of the user
Perhaps an environment variable?
send post-reg messages to client if username and nick are set
Use CommonTest, seems to work best (and easiest)
move non-store related business out of crier_user_store
write module doc for all modules
Short description of what module does
add short description of each complicated function
SYNTAX:
:<nick>!~<username>@<host> JOIN #<channel>
host=name of server for us
show NAMES list when joining
handle kicking (banning will be skipped for simplicities sake)
handle user modes (operator, mod..)
use regex for handling IRC messages parsing
Current system is plain stupid, but it works for now ;)
address 2sec lag when messages queue up
IRC response codes
https://www.alien.net.au/irc/irc2numerics.html