<?php | |
// recupero il contenuto inviato da Telegram | |
$content = \file_get_contents('php://input'); | |
// converto il contenuto da JSON ad array PHP | |
$update = \json_decode($content, true); | |
// se la richiesta è null interrompo lo script | |
if(!$update) { | |
exit; | |
} | |
// assegno alle seguenti variabili il contenuto ricevuto da Telegram | |
$message = isset($update['message']) ? $update['message'] : null; | |
$messageId = isset($message['message_id']) ? $message['message_id'] : null; | |
$chatId = isset($message['chat']['id']) ? $message['chat']['id'] : null; | |
$firstname = isset($message['chat']['first_name']) ? $message['chat']['first_name'] : null; | |
$lastname = isset($message['chat']['last_name']) ? $message['chat']['last_name'] : null; | |
$username = isset($message['chat']['username']) ? $message['chat']['username'] : null; | |
$date = isset($message['date']) ? $message['date'] : null; | |
$text = isset($message['text']) ? $message['text'] : null; | |
// mi preparo a restitutire al chiamante la mia risposta che è un oggetto JSON | |
// imposto l'header della risposta | |
header('Content-Type: application/json'); | |
// la mia risposta è un array JSON composto da chat_id, text, method | |
// chat_id mi consente di rispondere allo specifico utente che ha scritto al bot | |
// text è il testo della risposta | |
$parameters = array('chat_id' => $chatId, 'text' => $text, 'method' => 'sendMessage'); | |
// converto e stampo l'array JSON sulla response | |
echo \json_encode($parameters); |
This comment has been minimized.
This comment has been minimized.
Ciao Mattia, A presto, `<?php if(!$update) $message = isset($update['message']) ? $update['message'] : ""; $answers = array( $answer = ''; // Verificare che l'ultimo carattere sia un punto di domanda header("Content-Type: application/json"); |
This comment has been minimized.
This comment has been minimized.
Ciao Salvatore, |
This comment has been minimized.
This comment has been minimized.
Ciao riky2001, Poi devi guardare all'oggetto PhotoSize sulla documentazione ufficiale https://core.telegram.org/bots/api#photosize A presto, |
This comment has been minimized.
This comment has been minimized.
Ciao Salvatore, |
This comment has been minimized.
This comment has been minimized.
Ciao @Pietrobreeg, ho letto solo adesso. In effetti il composer.json nel repository su Github è vuoto non serve a nulla :-) Per quanto riguarda il discorso database è possibile fare quanto da te indicato, se ti serve ancora qualche indicazioni fammi sapere. A presto, |
This comment has been minimized.
This comment has been minimized.
salve @salvatorecordiano, ottima guida. Ti volevo chiedere un grande favore, ho creato un bot per un gruppo ed ho la necessita di poter usare usare un modulo per rispondere ad un membro quando questi mi contatti, come posso fare? grazie in anticipo |
This comment has been minimized.
This comment has been minimized.
Salve @salvatorecordiano, prima di tutto complimenti, ottima guida. Mi è stata molto utile.
|
This comment has been minimized.
This comment has been minimized.
Salve a tuti, Una sorta di IA |
This comment has been minimized.
This comment has been minimized.
Salve @salvatorecordiano mi potresti aiutare? Scusa la domanda.. ma proprio non riesco a capire come fai con questi comandi a mandare il comando per inviare il messaggio... |
This comment has been minimized.
This comment has been minimized.
Salve ragazzi, volevo sapere se qualcuno di voi mi può fare un veloce esempio di codice php di un bot di telegram, che abbia: una tastiera inline, che quando viene premuto un tasto, modifica il messaggio della tastiera in un messaggio normale, oppure in un altra tastiera. Scusatemi ma non ne capisco molto |
This comment has been minimized.
This comment has been minimized.
buonasera, volevo sapere se qualcuno saprebbe dirmi come inviare due messaggi consecutivi con il bot |
This comment has been minimized.
This comment has been minimized.
Ciao Salvatore, |
This comment has been minimized.
This comment has been minimized.
Ciao Salvatore, sono alle prime armi con i bot Telegram e ancora ci capisco poco. Volevo chiederti una cosa (ho provato a guardare di qua e di là ma non ho trovato esempi). Come faccio ad inviare una data posizione? Cioè, vorrei inserire delle coordinate, facendo si che compaia nella chat una mappa con il pin su quell'indirizzo. È possibile? |
This comment has been minimized.
This comment has been minimized.
Salvatore il bot ripete obni cosa che scrivo ma non era questo che volevo creare. Volveo creare un bot che rispondesse in un modo specifico a un messaggio specifico. ESEMPIO: Come devo fare? |
This comment has been minimized.
This comment has been minimized.
Ciao Salvatore, grazie per l'esempio. Ho provato facendo doppio Tu hai qualche idea? |
This comment has been minimized.
This comment has been minimized.
Ciao Salvatore, Ho provato a ricaricare il file, ho rifatto il Deploy su Heroku ma continua a dirmi "Build failed" se vado sul log. Non capisco :( |
This comment has been minimized.
This comment has been minimized.
Buona sera, io non conosco php però so programmare in java (livello base) dove posso trovare i file: index, Procfile, composer.json e execute per java? |
This comment has been minimized.
This comment has been minimized.
Ciao @AlbeBi puoi trovare tutta la documentazione di Heroku per Java qui https://devcenter.heroku.com/categories/java-support |
This comment has been minimized.
This comment has been minimized.
grazie mille @salvatorecordiano |
This comment has been minimized.
Ciao!
Ho seguito la tua guida per creare il mio promo bot!
premetto che sono una schiappa a programmare...
Ho utilizzato i tuoi file per creare una lista di risposte che il bot da in automatico, gli voglio far risponedere solo se la domanda presenta in fondo un "?" ma ora il bot mi continua a rispondere "null"...
Come posso fare?
Ti allego il file excecute.php
`<?php
$content = file_get_contents("php://input");
$update = json_decode($content, true);
if(!$update)
{
exit;
}
$message = isset($update['message']) ? $update['message'] : "";
$messageId = isset($message['message_id']) ? $message['message_id'] : "";
$chatId = isset($message['chat']['id']) ? $message['chat']['id'] : "";
$senderId = isset($message['chat']['id']) ? $message['chat']['id'] : "";
$firstname = isset($message['chat']['first_name']) ? $message['chat']['first_name'] : "";
$lastname = isset($message['chat']['last_name']) ? $message['chat']['last_name'] : "";
$username = isset($message['chat']['username']) ? $message['chat']['username'] : "";
$date = isset($message['date']) ? $message['date'] : "";
$text = isset($message['text']) ? $message['text'] : "";
if (!$text) {
// Verificare che l'ultimo carattere sia un punto di domanda
if ($text[sizeof($text) - 1] == '?') {
// Da qui mandi la risposta
$answer = $answers[rand(0, sizeof($answers)-1)];
} else {
// Da qui gli mandi "ehy fammi una domanda"
$answer = "Per poterti rispondere, mi devi fare una domanda...";
}
}
$answers = array(
"Per quanto posso vedere, sì",
"È certo",
"È decisamente così",
"Molto probabilmente",
"Le prospettive sono buone",
"I segni indicano di sì",
"Senza alcun dubbio",
"Sì",
"Sì",
"Ci puoi contare",
"È difficile rispondere, prova di nuovo",
"Rifai la domanda più tardi",
"Meglio non risponderti adesso",
"Non posso predirlo ora",
"Concentrati e rifai la domanda",
"Non ci contare",
"La mia risposta è no",
"Le mie fonti dicono di no",
"Le prospettive non sono buone",
"Molto incerto"
);
header("Content-Type: application/json");
$parameters = array('chat_id' => $chatId, "text" => $answer);
$parameters["method"] = "sendMessage";
echo json_encode($parameters);
`
Dove sbaglio?
Grazie in anticipo...