i99dev / ft_irc Goto Github PK
View Code? Open in Web Editor NEWimplementation of the IRC network
implementation of the IRC network
I have connected our server to irssi client. I tried to send the first message (the welcome message) to establish the connection and to be able to receive the commands from the client. I think now we need to move to the next step which is parsing these messages and execute: (the commands and the chatting processes).
The welcome message was:
:ft_irc 001 sasori :Welcome to the Internet Relay Network [email protected]\r\n
MODE &oulu +b *!*@*.edu +e *!*@*.bu.edu
MODE #bu +be *!*@*.edu *!*@*.bu.edu
Good news, wildcards support *
and ?
All methods come under the Message class
If you want to check if Messages have wildcard only, you can call _message->getMask().size()
if > 0, that means wildcard function implementation
The type like *
and ?
if you want to check only call _message->getType()
for more understanding, you can check to commend Privmsg
. There is an example if the user use
/msg *dev hi all
--> will send message to all username end with dev ex: i99dev
There is a very important method call bool match_wildCard(std::string const &str);
use to get what is value match and use it also Privmsg
good example any questions please let me know
I want to do async-promise function to help us handle many requests coming from clients or server
any one want read more about Promis Link
This command consists of two different parts: user mode and channel mode.
next commands I am going to do..
5.1 Connection 'Liveness'
To detect when a connection has died or become unresponsive, the
server MUST poll each of its connections. The PING command (See "IRC
Client Protocol" [IRC-CLIENT]) is used if the server doesn't get a
response from its peer in a given amount of time.
If a connection doesn't respond in time, its connection is closed
using the appropriate procedures.
try to fix issue when a new user tries to connect with the server same username
_
.I will develop and create a server with a socket to run the server without any commend
There might be leaks when you exit the program in terms of the error in the function ft::Server::create_socket .. please make sure to free everything in the class before exiting
Would you please store this temp string in the wildcard class, with its getter function... I need it
Line 140 in 1a607c1
if you change your nick name it should send a message to all channels you have joined that you changed your nick name from ... to ...
there is a bug with the nickname command. I will try to fix it by putting a condition to reject any nickname, including a special character
This is the list of the commands that are only allowed for the channel operators:
I will handle msg user to user from PriveMsg
I am working on the command part
when using telnet and sending any empty msg there is a segfault and now it fixes it
limechat, weechat, textualchat
work under branch name fix_server_respose
I will save user info and details on it, please use the link above for more information.
Create a new branch name, add_client_class
.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.