Je ne trouve pas d'exemple d'envoi de message par protocole télégramme depuis php. J'ai essayé d'utiliser this mais j'ai échoué. Pouvez-vous me donner des exemples?
J'utilise la fonction suivante:
function sendMessage($chatID, $messaggio, $token) {
echo "sending message to " . $chatID . "\n";
$url = "https://api.telegram.org/bot" . $token . "/sendMessage?chat_id=" . $chatID;
$url = $url . "&text=" . urlencode($messaggio);
$ch = curl_init();
$optArray = array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true
);
curl_setopt_array($ch, $optArray);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
et vous appelez de cette façon
$token = "<insert bot token here>";
$chatid = "<chatID>";
sendMessage($chatid, "Hello World", $token);
Manière simple:
$token = "YOUR_BOT's_TOKEN";
$data = [
'text' => 'your message here',
'chat_id' => 'the_chat_id_here'
];
file_get_contents("https://api.telegram.org/bot$token/sendMessage?" . http_build_query($data) );
Il semble bien que ce soit un article assez ancien, mais sans réponse, alors j'espère que cela aide quelqu'un. Vous auriez pu utiliser l'exemple du référentiel suivant Telegram Bot Client en PHP que je développe actuellement. C'est la méthode que j'ai utilisée pour envoyer un message.
// initialise variables here
$chat_id = 1231231231;
// path to the picture,
$text = 'your text goes here';
// following ones are optional, so could be set as null
$disable_web_page_preview = null;
$reply_to_message_id = null;
$reply_markup = null;
$data = array(
'chat_id' => urlencode($chat_id),
'text' => urlencode($text),
'disable_web_page_preview' => urlencode($disable_web_page_preview),
'reply_to_message_id' => urlencode($reply_to_message_id),
'reply_markup' => urlencode($reply_markup)
);
$url = https://api.telegram.org/botYOUR_TOKEN_GOES_HERE/sendMessage;
// open connection
$ch = curl_init();
// set the url
curl_setopt($ch, CURLOPT_URL, $url);
// number of POST vars
curl_setopt($ch, CURLOPT_POST, count($data));
// POST data
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
// To display result of curl
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// execute post
$result = curl_exec($ch);
// close connection
curl_close($ch);