Skip to content

Instantly share code, notes, and snippets.

@thoanny
Last active February 11, 2021 08:33
Show Gist options
  • Save thoanny/df9acea3ffabfc8db32113502a0c3e93 to your computer and use it in GitHub Desktop.
Save thoanny/df9acea3ffabfc8db32113502a0c3e93 to your computer and use it in GitHub Desktop.
Envoyer un message sur un canal textuel de Discord, grâce à PHP
<?php
$url = ''; // Adresse de votre webhook
$data = array(
'content' => "", // Contenu du message, peut être formaté en Markdown
// Seuls les emojis de Discord fonctionnent
// Limité à 2000 caractères
'username' => '', // Remplacer le nom du webhook, à enlever si inutilisé
'avatar_url' => '', // (rouge) Remplacer l'avatar webhook (doit être une URL), à enlever si inutilisé
'embeds' => array(
array(
'title' => '', // Intitulé du lien
'url' => '', // Adresse du lien
'description' => '', // Texte affiché après le titre
// Image, Miniature, Auteur et Footer son optionnels
/*
* Ajouter une image
*/
'image' => array(
'url' => '', // (jaune) Adresse de l'image
'width' => 0, // Largeur de l'image
'height' => 0 // Hauteur de l'image
),
/*
* Ajouter une miniature
*/
'thumbnail' => array(
'url' => '', // (vert) Adresse de l'image
'width' => 0, // Largeur de l'image
'height' => 0 // Hauteur de l'image
),
/*
* Ajouter un auteur
*/
'author' => array(
'name' => '', // Nom de l'auteur
'url' => '', // Adresse de l'auteur
'icon_url' => '' // (bleu foncé) Avatar de l'ateur
),
/*
* Ajouter une mention en pied de page
*/
'footer' => array(
'text' => '', // Texte à afficher
'icon_url' => '' // (bleu clair) URL de l'image
)
)
),
);
$context = array(
'http' => array(
'method' => 'POST',
'header' => "Content-type: application/json\r\n",
'content' => json_encode($data),
)
);
/*
* Attention, certains serveurs désactivent la fonction 'allow_url_fopen'.
* Si c'est votre cas et si vous ne pouvez pas l'activer, vous ne pourrez
* pas utiliser ce script directement. Vous devrez utiliser cURL !
*/
$context = stream_context_create($context);
$result = @file_get_contents($url, false, $context);
if($result === false) {
return false;
}
return true;
@thoanny
Copy link
Author

thoanny commented Sep 11, 2017

Aspect global et images

Voici une idée du rendu d'un message sur Discord :

Imgur

Tâche automatique CRON

Si vous avez besoin d'exécuter une tâche automatique, par exemple pour envoyer un message dynamique de manière régulière, et que vous ne savez pas comment mettre en place une tâche CRON sur votre serveur, vous pouvez utiliser ce site.

Sécurité

Par sécurité, rendez possible l'accès à votre fichier PHP uniquement par un identifiant et un mot de passe ! Plus d'infos

@Zor90
Copy link

Zor90 commented Jul 16, 2018

Hello,
Merci c'est exactement ce que je voulais, ça marche nickel!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment