Irc_bot ( mon premier programme !!! )

Contenu du snippet

Hello world , lol , bah moi pour ma premiere source g préférer apprendre ac les sockets , heyhey c plus interressant . Bon ce bot ne fé que se connecté à l'irc , il join un canal à la connection , se reconnect après déconnection .

Je compte l'ameliorer en ajoutant des raws commandes ms fo que je trouve comment filtrer les messages reçu par le server ( lol il fo que je puisse récuperer des bou de message pr les comprarers )
!Help! si vous pouvez m'aider , no problem !Help!

si vous compilez en console , vs pouvez rajouté ceci a la fin du prog pour savoir se qui est envoyé par le server :
printf("bot :%s",buff);

Source / Exemple :


#include <winsock2.h>
#pragma comment(lib, "ws2_32.lib")

char *server = "127.0.0.1";
int port = 6667;
char *nick = "nick-bot";
char *chan = "#chan";
char buff[4096];
char tmp[4096];

void main()
{

while (1) { 

WSADATA WSAData;
WSAStartup(MAKEWORD(2,0), &WSAData);
SOCKET sock;
SOCKADDR_IN sin;
sock = socket(AF_INET, SOCK_STREAM, 0);
sin.sin_addr.s_addr			= inet_addr(server);
sin.sin_family				= AF_INET;
sin.sin_port				= htons(port);
connect(sock, (SOCKADDR *)&sin, sizeof(sin));

memset(tmp,0,255);
wsprintf(tmp,"USER azerteam \"\" \"127.0.0.1\" :%s%c",nick,10);
send(sock,tmp,strlen(tmp),0);

memset(tmp,0,255);
wsprintf(tmp,"NICK %s%c",nick,10);
send(sock,tmp,strlen(tmp),0);

Sleep(100);

memset(tmp,0,255);
wsprintf(tmp,"JOIN %s%c",chan,10);
send(sock,tmp,strlen(tmp),0);

while (1) { 
memset(buff,0,255);
recv( sock,buff,255,0);

if ( strstr(buff,"PING") != 0 ) { 
send(sock,"PONG :\r\n",6,0);
}

if ( strlen(buff) == 0 ) { 
closesocket(sock);
break; 
}
memset(buff,0,255);
};
}

}

Conclusion :


Have fun

by abdoulax

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.