Envoyer un message sur Discord quand un serveur Minecraft est ouvert
-
Ok donc pleins de possibilité.
Tu sais faire des mods ?Si oui, tu peux facilement faire un mod pour réaliser ce que tu veux, il suffit d’utiliser l’event
FMLServerStartedEventdans la classe principale :@EventHandler public void onServerStart(FMLServerStartedEvent event) { }et de mettre dedans un appel POST vers un webhook discord.
https://www.baeldung.com/httpurlconnection-postPour l’url, il faut aller sur le salon discord que tu souhaites, aller dans intégration et cliquer sur webhook.
Ensuite tu en ajoutes un et tu cliques sur copier l’url du webhook :

-
@robin4002 Merci, je vais test, je vais faire la base du mod et je te dis ça plus tard
Il y a aussi un code pour quand le serveur s’arrête ? Merci -
Idem mais avec
FMLServerStoppedEvent^^ -
@robin4002 Et je dois le mettre dans la classe principale ? Car là, j’ai des erreurs :astonished_face: Il y a-t-il des chose à modifier, car je ne suis pas trop dans le domaine de la programmation. Merci
-
Oui c’est bien dans la classe principale. Fais voir ton code ?
-
Ce message a été supprimé ! -
Normal, il faut échapper le guillemet du json.
Ensuite il faut aussi adapter le contenu : https://discord.com/developers/docs/resources/webhook#execute-webhookPar exemple :
String jsonInputString = "{\"username\":\"Server status notifier\",\"content\":\"Le serveur vient de démarrer!\"}"; -
@robin4002 Ok, j’ai modifier la ligne de code et j’ai ajouter le texte de notif que je voulais. J’ai maintenant une erreur con.getOutputStream (l.59) et à jsonInputString (l.60). J’ai essayé de passer la souris dessus pour voir si je pouvais corriger quelques chose, mais en dirai que non.

-
C’est pas juste un try catch qui manque ? C’est quoi l’erreur indiqué ?
-
@robin4002 pour le jsonInputString ca me met “cannot be resolved” avec “create local variable”, “create field”… mais pas de try catch. Et le con.getOutputStream ca me met l’erreur “Type mismatch: cannot convert from java.io.OutputStream to org.omg.CORBA.portable.OutputStream” avec possibilité de “add cast to OutputStream” et "chang type of ‘os’ to ‘OutputStream’
-
Tu as importé le mauvais OutputStream, retire l’importation
org.omg.CORBA.portable.OutputStreamet remplaces parjava.io.OutputStream.
PourjsonInputStringje ne sais pas ce que tu as fais pour avoir cette erreur, renvoies tout ton code. -
Ce message a été supprimé ! -
Ah oui, c’est tout con.
C’est parce que dans un de mes précédents messages j’ai écritjsonInStringau lieu dejsonInputStringx).
Il faut simplement que tu changes le nom de la variable à la ligne 58. -
@robin4002 Ok, et maintenant, je peux mettre un throws ou un try catch, je met le try catch ?
-
Les deux fonctionnent, donc peu importe.
-
Ce message a été supprimé ! -
Au cas ou, ça ne marche plus, je crois qu’il y a encore quelque chose à changer mais je ne sais pas quoi :anguished_face:
-
ça ne compile pas ou le mod n’a pas l’effet prévu ?
-
@robin4002 Le mod se compile belle et bien, je le met dans le dossier mod du serveur mais quand le serveur est enfin en ligne, rien…
-
Et dans les logs du serveur il y a quoi qui s’affiche ?