Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz

03.08.2007, 02:05
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
PHP IRC bot
Наверно самый простой и легкий скрипт бота..
PHP код:
<?php
// Config
$authuser = ':Canuck!adok.adok@40.yearold.virgin'; //In this format :name!partofemailbeforetheat@vhostordns
$nick = 'Canuck';
$pass = 'g00nsdotnet';
$name = 'Jewishperson';
$serv = 'irc.g00ns.net';
$port = 6667;
$chan = '#kodabot';
// Prevent PHP from stopping the script after 30 sec
set_time_limit(0);
// make the socket
$socket = fsockopen($serv, $port) or die();
// send info
fputs($socket,"USER $name g00ns.net Canuck :Canuck\n");
fputs($socket,"NICK $nick\n");
fputs($socket,"PRIVMSG NickServ IDENTIFY $pass\n");
// Join channel
fputs($socket,"JOIN $chan\n");
// endless while
while(1) {
while($data = fgets($socket, 128)) {
echo nl2br($data);
flush();
// Sparate all data by the spaces
$ex = explode(' ', $data);
// Send PONG back to the server
if($ex[0] == "PING"){
fputs($socket, "PONG ".$ex[1]."\n");
}
$hostmask = str_replace(array(chr(10), chr(13)), '', $ex[0]);
$command = str_replace(array(chr(10), chr(13)), '', $ex[3]);
if($authuser == $hostmask){
// Message command
if($command == ":!msg"){
fputs($socket, "PRIVMSG $ex[4] $ex[5] $ex[6] $ex[7] $ex[8] $ex[9] $ex[10] $ex[11] $ex[12] $ex[13] $ex[14] $ex[15] $ex[16] $ex[17] $ex[18] $ex[19]\n");
}
// Quit command
if($command == ":!water"){
fputs($socket,"PRIVMSG $ex[2] I'm melting! Oh what a world, what a world!\n");
fputs($socket,"QUIT *melts*\n");
}
// Kick command
if($command == ":!kick"){
fputs($socket,"KICK $ex[2] $ex[4]\n");
}
// join command
if($command == ":!join"){
fputs($socket,"JOIN $ex[4]\n");
}
// Op command
if($command == ":!op"){
fputs($socket,"MODE $ex[2] +o $ex[4]\n");
}
// Halfop command
if($command == ":!hop"){
fputs($socket,"MODE $ex[2] +h $ex[4]\n");
}
// Voice command
if($command == ":!voice"){
fputs($socket,"MODE $ex[2] +v $ex[4]\n");
}
// Kickban command
if($command == ":!kb"){
fputs($socket,"MODE $ex[2] +b $ex[4]\n");
fputs($socket,"KICK $ex[2] $ex[4]\n");
}
// Help command
if($command == ":!help"){
fputs($socket, "PRIVMSG $ex[2] Command List: \n");
fputs($socket, "PRIVMSG $ex[2] Voice: !voice [name]\n");
fputs($socket, "PRIVMSG $ex[2] Halfop: !hop [name]\n");
fputs($socket, "PRIVMSG $ex[2] Op: !op [name]\n");
fputs($socket, "PRIVMSG $ex[2] Kick: !kick [name]\n");
fputs($socket, "PRIVMSG $ex[2] Kick ban: !kb [name]\n");
fputs($socket, "PRIVMSG $ex[2] Join a channel: !join [channel]\n");
fputs($socket, "PRIVMSG $ex[2] Message: !msg [name/channel] [messge]\n");
}
}
}
}
?>
(c) g00n
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|