irc.webm
About · Project Structure · Features · Usage
The goal of the project is to develop an IRC server in C++ 98
Make && ./ircserv [Port] [Password]Then you can connect using an IRC client, such as irssi, which the server has been developped for.
.
├── 📁include/
│ ├── Client.hpp
│ ├── Channel.hpp
│ ├── Command.hpp
│ ├── Ircserver.hpp
│ ├── Message.hpp
│ └── ft_irc.hpp
├── 📁srcs/
│ └── *.cpp
└── Makefile
- 📂 include: All class declaration
- 📂 src: All class definition
This project has been made following this documentation. However, it does not implements every single features, such as multi server or some commands.
These are all the commands implemented in the server.
CAP
PASS
NICK
USER
OPER
MODE
QUIT
MSG
JOIN
PART
PING
PONG
TOPIC
LIST
INVITE
KICK
WHO
KILL
WALLOPS
NOTICE
WHOIS
You can join/create a channel using JOIN command. We implemented channel modes aswell. Inside a channel, use MODE +[modes] to enable some modes or MODE -[modes] to disable.
Supported channel modes:
kadds a password to a channelichannel is in invite only modellimits the number of membersmonly authorized members of channel are allowed to talknthe channel can not receive messages from external usersschannel is hidden from non-member userstonly channel administrators can edit the topicbtarget user is banned from the channelotarget user becomes a channel administrator
Users can change their mode using MODE +[modes].
Supported user modes:
ouser becomes server administrator (password is required)iuser is hidden from other usersouser receivesWALLOPSmessages
