CraftMyWebsite-Link a java plugin for MC servers
- Spigot/Paper
- 1.16 -> 1.21.4
- BungeeCord/Waterfall
- Velocity
- 3.X.X
{
"port": 24102,
"bindToDefaultPort": false,
"loadUncertifiedPackages": true,
"logRequests": true,
"useProxy": false,
"enableWhitelistedIps": true,
"whitelistedIps": [
"127.0.0.1"
],
"token": "TOKEN FROM THE CMS",
"domain": "monsite.fr"
}
- port: Port sur lequel l'api du plugin est accessible.
- bindToDefaultPort: Permet d'utiliser le port par défaut de minecraft pour les communications (Paper/Spigot/Mohist/Magma seulement pour le moment)
- loadUncertifiedPackage: Permet de charger les packages non certifié par l'équipe de CMW
- logRequests: Affiche-les demande de requêtes dans la console du serveur.
- useProxy: Permet d'utiliser les Proxy tel que BungeeCord, Waterfall, Velocity.
- enableWhitelistedIps: Active la whitelist d'IPs
- whitelistedIps: Liste des IPs de la whitelist
- token: Token de connexion fourni par le CMS
- domain: Domaine du site web
Pour vérifier le bon fonctionnement du plugin il suffit de taper l'IP du serveur avec le port dans un navigateur, le plugin envoie la réponse suivante:
URL: http://127.0.0.1:24102/
Réponse: {"CODE":200,"NAME":"CraftMyWebSite_Link","VERSION":1.0}
Code de base pour un package.
Class TestPackage:
package fr.CraftMyWebsite.CMWLink.TestPackages;
import java.util.logging.Level;
import fr.CraftMyWebsite.CMWLink.Packages.Common.CMWLink.CMWLPackage;
public class TestPackage extends CMWLPackage{
@Override
public void enable() {
this.log(Level.INFO, "TestPackage enabled.");
}
@Override
public void disable() {
}
@Override
public void registerRoutes() {
this.addRoute(new TestRoute(this));
}
}
- Les fonctions enable, disable et registerRoutes sont obligatoire, elle sont appelées lors du chargement/arrêt du package.
Class TestRoute:
package fr.CraftMyWebsite.CMWLink.TestPackages;
import express.http.request.Request;
import express.http.response.Response;
import fr.CraftMyWebsite.CMWLink.WebServer.Common.CMWLink.CMWLRoute;
import fr.CraftMyWebsite.CMWLink.WebServer.Common.CMWLink.RouteType;
public class TestRoute extends CMWLRoute<TestPackage>{
public TestRoute(TestPackage main) {
super(main, "ping", RouteType.GET);
}
@Override
public String executeRoute(HashMap<String, String> params) {
System.out.print("Pong !");
JsonBuilder json = new JsonBuilder();
json.append("CODE", 200);
json.append("MESSAGE", "Pong !");
return json.build();
}
}
Dans le constructeur vous devez obligatoirement déclarer les paramètres suivant :
- main : La class principale du package
- "ping" : Le nom de la route
- RouteType: Le type de route (GET, POST)
La fonction "execute" est déclenchée quand la route définie est appelée.
http://127.0.0.1:24102/test/ping -> Réponse: {"CODE":200,"MESSAGE":"Pong !"}
Pour que le package soit reconnue par le plugin vous devez avoir un package.yml dans le jar
name: CMWL_Test
route_prefix: test
sp_main: fr.CraftMyWebsite.CMWLink.TestPackages.TestPackage
version: 1.0
author: AxelVatan
- name: Le nom du package.
- route_prefix: le prefix pour toutes les route du package.
- sp_main: Le chemin vers la class principale du package pour l'utilisation sur Paper/Spigot.
- bg_main: Le chemin vers la class principale du package pour l'utilisation sur BungeeCord/Waterfall.
- vl_main: Le chemin vers la class principale du package pour l'utilisation sur Velocity.
- version: La version du package.
- author: L'auteur du package.
- Discord: https://discord.gg/tscRZCU
- Forum: https://craftmywebsite.fr/forum
- Contact: https://craftmywebsite.fr/contactez/nous
- Twitter: https://twitter.com/CraftMyWebsite
Copyright © CraftMyWebsite 2014-2024