SHARE
TWEET

Untitled

a guest Dec 29th, 2016 94 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2. // recupero il contenuto inviato da Telegram
  3. $content = file_get_contents("php://input");
  4. // converto il contenuto da JSON ad array PHP
  5. $update = json_decode($content, true);
  6. // se la richiesta è null interrompo lo script
  7. if(!$update)
  8. {
  9.   exit;
  10. }
  11. // assegno alle seguenti variabili il contenuto ricevuto da Telegram
  12. $message = isset($update['message']) ? $update['message'] : "";
  13. $messageId = isset($message['message_id']) ? $message['message_id'] : "";
  14. $chatId = isset($message['chat']['id']) ? $message['chat']['id'] : "";
  15. $firstname = isset($message['chat']['first_name']) ? $message['chat']['first_name'] : "";
  16. $lastname = isset($message['chat']['last_name']) ? $message['chat']['last_name'] : "";
  17. $username = isset($message['chat']['username']) ? $message['chat']['username'] : "";
  18. $date = isset($message['date']) ? $message['date'] : "";
  19. $text = isset($message['text']) ? $message['text'] : "";
  20. // pulisco il messaggio ricevuto togliendo eventuali spazi prima e dopo il testo
  21. $text = trim($text);
  22. // converto tutti i caratteri alfanumerici del messaggio in minuscolo
  23. $text = strtolower($text);
  24. // mi preparo a restitutire al chiamante la mia risposta che è un oggetto JSON
  25. // imposto l'header della risposta
  26. header("Content-Type: application/json");
  27.  
  28. $response = '';
  29. //INSERIRE QUI LA LOGICA DEL BOT
  30. if (strpos($text, "!") === 0) {
  31.    
  32.     if(strpos(!$text, "!start") === 0 || $text=="!ciao")
  33.     {
  34.         $response = "Ciao $firstname, benvenuto!";
  35.     }
  36.     elseif($text=="!domanda 1")
  37.     {
  38.         $response = "risposta 1";
  39.     }
  40.     elseif($text=="!domanda 2")
  41.     {
  42.         $response = "risposta 2";
  43.     }
  44.     elseif(trim($text) === "!quote")
  45.     {
  46.         //inserire query php per quote
  47.         //////////////////////////////////////////////////////////////////////////////
  48.        
  49.             $servername = "localhost";
  50.             $username   = "lospaturno";
  51.             $password   = "stocazzo";
  52.             $dbname     = "my_lospaturno";
  53.  
  54.             // Create connection
  55.             $conn = new mysqli($servername, $username, $password, $dbname);
  56.             // Check connection
  57.             if ($conn->connect_error) {
  58.                 die("Connection failed: " . $conn->connect_error);
  59.             }
  60.  
  61.             $sql = "SELECT quote, user FROM quote ORDER BY RAND() LIMIT 1;";
  62.             $result = $conn->query($sql);
  63.            
  64.             while ($row = $result->fetch_assoc()) {
  65.                     $response.= "\"".$row["quote"]."\" (added by ".$row["user"].")";
  66.                 }
  67.             $conn->close();
  68.     }
  69.        
  70.     elseif ((strpos($text, "!quote" === 0 ) AND ($text != "!quote"))) {
  71.         //elabora la chiave di ricerca trimmando e poi splittando dove c'è il primo spazio
  72.         $text=trim("$text");
  73.         list($comando, $search) = split(" ", $text, 2);
  74.            
  75.             $servername = "localhost";
  76.             $username = "lospaturno";
  77.             $password = "stocazzo";
  78.             $dbname   = "my_lospaturno";
  79.  
  80.             // Create connection
  81.             $conn = new mysqli($servername, $username, $password, $dbname);
  82.             // Check connection
  83.             if ($conn->connect_error) {
  84.                 die("Connection failed: " . $conn->connect_error);
  85.             }
  86.  
  87.             $sql = "SELECT quote, user FROM quote WHERE quote LIKE '$search' ";
  88.             $result = $conn->query($sql);
  89.            
  90.             if (mysqli_num_rows($result)=== 0) {
  91.                 $response = "Nessuna citazione trovata con quella parola";
  92.             }
  93.             else {
  94.                 while ($row = $result->fetch_assoc()) {
  95.                     $response.= "\"".$row["quote"]."\" (added by ".$row["user"].")";
  96.                 }
  97.             }
  98.             $conn->close();
  99.        
  100.     }
  101.         //////////////////////////////////////////////////////////////////////////////
  102.        
  103.    
  104.     else
  105.     {
  106.         $response = "Comando non valido!"; 
  107.     }    
  108.  
  109. }
  110. elseif($text=="chi?") {
  111.     $response = "Stocazzo!";
  112. }
  113.  
  114.  
  115. // la mia risposta è un array JSON composto da chat_id, text, method
  116. // chat_id mi consente di rispondere allo specifico utente che ha scritto al bot
  117. // text è il testo della risposta
  118. $parameters = array('chat_id' => $chatId, "text" => $response);
  119. // method è il metodo per l'invio di un messaggio (cfr. API di Telegram)
  120. $parameters["method"] = "sendMessage";
  121. // converto e stampo l'array JSON sulla response
  122. echo json_encode($parameters);
  123.  
  124. ?>
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top