Loading:

Postanowienia noworoczne - a Ty czego nauczysz się w nowym roku? [-25%]

Bot supportowy czatu pod GG BotAPI!

Skrypt poniżej ten kto potrafi w ogóle postawić bota dokładnie wszystko zrozumie. 

Proszę o nie rozpowszechnianie kodu na własną ręke! Jest tylko do osobistego użytku i nie życze sobie by był rozpowszechniany tym bardziej pod cudzym podpisem!



Napisz Artykuł

Listing

<?php
//CASSYNO Bot v1.1 //
//administrator@cassyno.pl //
        require_once('MessageBuilder.php');
        require_once('PushConnection.php');

$db_host= "xxx";
$db_user= "xxx";
$db_pass= "xxx";
$db_name= "xxx";

        $M = new MessageBuilder();
        $M2 = new MessageBuilder();
        $P = new PushConnection('loginbotapi', 'haslo', 'numer');
        $db = new mysqli($db_host, $db_user, $db_pass, $db_name);
        $parts = explode(' ', trim($HTTP_RAW_POST_DATA));
        $from = $_GET['from'];
        $prefix = "CASSYNO Bot:\n";
        $prefix2 = "";
        $default = "To jest moj bot. Jesli chcesz do mnie napisac wpisz /napisz (tresc) !";

        $admin = array('10101081');
        $owners = array('10101081'); //gg admina//
        $ow = array('10101081');

        switch (strtolower($parts[0])) {
        case "/odpisz":
        if(!in_array($from, $admin))
        die($prefix.$default);

        $select = $db->query("SELECT * FROM bot WHERE nick LIKE '".$parts[1]."' LIMIT 1");
@   $p_user = $select->fetch_assoc();
    if($select->num_rows == 0)
      die($prefix."Bląd! Nie ma w bazie uzytkownika: <".$parts[1].'>');
        $msg = $parts;
                $msg[0] = '';
                $msg[1] = '';
                $msg = trim(implode(' ', $msg));
        if(!$msg[1])
{
        $brak = "Podaj tresc wiadomosci do wyslania!";
        die($prefix.$brak);
} else

        $p = $user['nick'].'Wiadomosc wyslana do '.$p_user['nick'].'
        Na numer gg:'
.$p_user['nr'];
        $M->addText("Wiadomość od CASSYNO:\r\n", FORMAT_BOLD_TEXT, 40)->addText($msg, FORMAT_ITALIC_TEXT, 40);
        $M->setRecipients(array($p_user['nr']));
        $P->push($M);
        die($p);
        exit();
break;

        case "/rejestruj":
        $db->query("INSERT INTO bot (nr, nick, block) VALUES (".$from.", '".$parts[1]."', 0)");        
        $M->addText("Witaj! Zarejestrowaleś/aś się teraz możesz ze mną pisać", FORMAT_BOLD_TEXT);
                break;

case "/zablokuj":{
                $select = $db->query("SELECT nick, nr FROM bot WHERE nick='$parts[1]'");
                $row = $select->fetch_assoc();
                $M->addText($parts[1]." Został zablokowany i nie będzie już przeszkadzał", FORMAT_BOLD_TEXT);
                $M2->addText($prefix2, FORMAT_BOLD_TEXT)->addText("Zostajesz zablokowany/a!", FORMAT_BOLD_TEXT)->setRecipients($row['nr']);
                $P->push($M2);
                $db->query("UPDATE bot SET block='1' WHERE nick='$parts[1]'");
                }
                break;         

case "/odblokuj":{
                $select = $db->query("SELECT nick, nr FROM bot WHERE nick='$parts[1]'");
                $row = $select->fetch_assoc();
                $M->addText($parts[1]." Został odblokowany", FORMAT_BOLD_TEXT);
                $M2->addText($prefix2, FORMAT_BOLD_TEXT)->addText("Zostajesz odblokowany/a!", FORMAT_BOLD_TEXT)->setRecipients($row['nr']);
                $P->push($M2);
                $db->query("UPDATE bot SET block='0' WHERE nick='$parts[1]'");
                }
                break;         
               
        case "/install":
$db->query("CREATE TABLE IF NOT EXISTS bot (


  nr int(15) NOT NULL,

  nick varchar(255) NOT NULL,

  block int(1) NOT NULL default '0',
 
 
 


  UNIQUE KEY nr (nr,nick)

) ENGINE=MyISAM  DEFAULT CHARSET=utf8"
);
        break;

        case "/napisz":
                $txt = $parts;
                $txt[0] = '';
                $txt = implode(' ', $txt);
                if(!$txt )
        die($prefix."Zle Wpisz /napisz (tresc wiadomosci)");
                        elseif(strlen($txt) < 5) {
                        die($prefix."Wiadomosc za krotka! Min. 5 znakow!");
                }       elseif(strlen($txt) > 400) {
                        die($prefix."Wiadomosc za dluga! Max. 400 znakow!");
                }
else{
                $select = $db->query("SELECT * FROM bot WHERE nr='".$from."' LIMIT 1");
                $row = $select->fetch_assoc();
                if($select->num_rows == 0){
      die($prefix."Nie masz nicka! Wpisz /rejestruj (twoj_nick)");
                }
                $M->addText($prefix2."Wiadomosc wysłana! \nOdpowiem jak odczytam!", FORMAT_BOLD_TEXT);
                $M2->addText($prefix2, FORMAT_BOLD_TEXT)->addText("Wiadomosc od: ". $row['nick']." \r\n Z Numeru gg:". $row['nr']." \r\n----\r\n".$txt, FORMAT_BOLD_TEXT)->setRecipients($admin);
                $P->push($M2);
                }break;

        case "/time":
                $M->addText($prefix."Godzina: ".date("H:i:s")."\nData: ".date('d.m.Y')."r.\r\nDzien: ".date(z)."\n", FORMAT_BOLD_TEXT);
                break;

        case "/status":
                if(!in_array($from, $admin))
                die($prefix.$default);

                $M->addText($prefix."-> FFC [opis] -- PoGGadaj ze mną \r\n -> BACK [opis] -- Dostępny \r\n -> AWAY [opis] -- Zaraz Wracam \r\n -> DND [opis] -- Nie Przeszkadzać \r\n -> INVISIBLE [opis] -- Niewidoczny \r\n -> OPIS -- zmienia opis bota", FORMAT_BOLD_TEXT);
                break;
        case "/opis":
                if(!in_array($from, $admin))
                die($prefix.$default);

                $opis = $parts;
                $opis[0] = '';
                $opis = trim(implode(' ', $opis));
                $P->setStatus($opis);
                die($prefix."Moj panie. Zmieniles opis na: \r\n ".$opis);
                break;
        case "/poggadaj":
                if(!in_array($from, $admin))
                die($prefix.$default);

                $status = $parts;
                $status[0] = '';
                $status = trim(implode(' ', $status));
                $P->setStatus($status, STATUS_FFC);
                die($prefix."Moj panie. Zmieniles status na: PoGGadaj ze mną \r\n ".$status);
                break;
        case "/dostepny":
                if(!in_array($from, $admin))
                die($prefix.$default);

                $status = $parts;
                $status[0] = '';
                $status = trim(implode(' ', $status));
                $P->setStatus($status, STATUS_BACK);
                die($prefix."Moj panie. Zmieniles status na: Dostępny \r\n ".$status);
                break;
        case "/zw":
                if(!in_array($from, $admin))
                die($prefix.$default);

                $status = $parts;
                $status[0] = '';
                $status = trim(implode(' ', $status));
                $P->setStatus($status, STATUS_AWAY);
                die($prefix."Moj panie. Zmieniles status na: Zaraz Wracam \r\n ".$status);
                break;
        case "/nieprzeszkadzac":
                if(!in_array($from, $admin))
                die($prefix.$default);

                $status = $parts;
                $status[0] = '';
                $status = trim(implode(' ', $status));
                $P->setStatus($status, STATUS_DND);
                die($prefix."Moj panie. Zmieniles status na: Nie Przeszkadzać \r\n ".$status);
                break;
        case "/niewidoczny":
                if(!in_array($from, $admin))
                die($prefix.$default);

                $status = $parts;
                $status[0] = '';
                $status = trim(implode(' ', $status));
                $P->setStatus($status, STATUS_INVISIBLE);
                die($prefix."Moj panie. Zmieniles status na: Niewidoczny \r\n ".$status);
                break;

        case "/help":
        case "/pomoc":
$komendy .= "Komendy:";
$komendy .= "\nJeszcze ci pomagać? haha";
$M->addText($prefix2, FORMAT_BOLD_TEXT)->addText($komendy);
        break;
        case "/ver":
        $M->addText("CASSYNO Bot v1.1\nadministrator@cassyno.pl", FORMAT_BOLD_TEXT);
        break;
case "/u":
case "/online":
$sel = $db->query("SELECT * FROM `users` WHERE online=1");
$i = 0;
while($row = $sel->fetch_assoc()){
$a .= '';
$i++;
        if ($i==0 || $i==5 || $i>5)
        $ile = "osób";
        if ($i==1)
        $ile = "osoba";
        if ($i>1 && $i<5)
        $ile = "osoby";
$users .= "\r\n $i) ".$row['nick'].'   Staff: '.$row['rank'].'';
}
$i = (string) $i;
$M->addText($prefix."Zalogowani: $i $ile $a\r\n".trim($users));
break;
default:
        $M->addText($prefix2.$default);
break;
  }
  $M->reply();

//CASSYNO 2011//
?>


Ten wpis posiada swój wątek na forum

Wszystkie pytania prosimy kierować właśnie tam ponieważ komentarze to miejsce na poprawki do kodu lub alternatywne rozwiązania i pytania nie będą publikowane

http://forum.funkcje.net/forum/viewtopic.php?f=2&t=12676

Dane do logowania na forum są takie same jak na funkcje.net



Dodano przez: cassyn Ranga: Poziom 5 Punktów: 102
Komentarze użytkowników
Bardzo przydatny skrypt dla firm.
autor: body31 | 12711 | 2012-01-18 12:33:12


    • Treść komentarza
      Kod do komentarza (opcjonalnie)
      PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
      Autor
      Token
      token

       

       








funkcje.net
Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-17 v.1.5 | design: diviXdesign & rainbowcolors