Appel de Qs à l'achat

Un problème pour vous connecter aux serveurs HelloMinecraft ? Une question ? Alors postez ici !
Killer_of_Space
Messages : 5377
Inscription : 22 sept. 2011, 17:46
Localisation : Derrière toi...

Appel de Qs à l'achat

Messagepar Killer_of_Space » 21 mai 2016, 21:06

Bonjour :3

J'aimerai savoir s'il est possible de savoir quels items et en quelle quantité ont été achetés dans des shops, et ce, en temps réel (plus précis que l'affichage des derniers achats à la connexion donc). J'ai dans l'idée d'étudier les achats de mes clients afin d'organiser mieux mon shop, afin de pouvoir mettre en avant les produits qu'ils achètent régulièrement et de me concentrer uniquement sur ce qui doit être rechargé en conséquence.

Dans mon étude, je souhaiterai également savoir quels sont les revenus générés par mon shop entre telle et telle date, telle et telle plage horaire, afin de réellement dresser des statistiques de fréquentation de mon shop et des statistiques de vente. J'ai pour cela pensé à un appel d'une page PHP indiquant en paramètre quels articles ont été achetés (l'ID de l'item), et sa quantité (éventuellement son prix mais comme je le fixe ça n'est pas nécessaire). Le but étant juste d'enregistrer mes ventes.

Merci d'avance,
KoS

Enkidiev
Messages : 374
Inscription : 05 févr. 2014, 21:10
Pseudo Minecraft : Enkidiev
Localisation : Sous la Colline, au fond d'un Sac

Re: Appel de Qs à l'achat

Messagepar Enkidiev » 22 mai 2016, 04:03

Super idée tout ça, si l'on peut trouver une solution, je suis preneur !
Ancien joueur d'HM, de 2013 à fin 2017 !

ORelio
Ancien Administrateur
Messages : 12582
Inscription : 28 oct. 2011, 22:06
Pseudo Minecraft : ORelio
Contact :

Re: Appel de Qs à l'achat

Messagepar ORelio » 22 mai 2016, 10:24

Hello,
Il n'y a pas de commande pour cela et cela nécessiterait des développements spécifiques.
Après si vous êtes motivés et avez des connaissances en Java...
Image
Image
__ORelio, Tonton des Eclairs - Développeur sur HM - Admin à temps partiel - Night Club - L'Hymne des modérateurs
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse Image

Enkidiev
Messages : 374
Inscription : 05 févr. 2014, 21:10
Pseudo Minecraft : Enkidiev
Localisation : Sous la Colline, au fond d'un Sac

Re: Appel de Qs à l'achat

Messagepar Enkidiev » 22 mai 2016, 15:45

Personnellement j'étudie le Java ces temps ci. Quand je maîtriserai, j'essayerai de voir si j'arrive a faire un petit plugin de ce style pour HM en cas ;) Vous pourriez me faire une liste précise de ce que vous souhaiteriez y intégrer ? Je dois d'abord finir de lire les cours, et me faire quelques plugins avant de me lancer par contre ^^ Mais c'est un projet qui me plait bien !
Ancien joueur d'HM, de 2013 à fin 2017 !

ORelio
Ancien Administrateur
Messages : 12582
Inscription : 28 oct. 2011, 22:06
Pseudo Minecraft : ORelio
Contact :

Re: Appel de Qs à l'achat

Messagepar ORelio » 22 mai 2016, 16:00

Super. Si jamais tu as des questions spécifiques n'hésite pas ^^
Image
Image
__ORelio, Tonton des Eclairs - Développeur sur HM - Admin à temps partiel - Night Club - L'Hymne des modérateurs
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse Image

Enkidiev
Messages : 374
Inscription : 05 févr. 2014, 21:10
Pseudo Minecraft : Enkidiev
Localisation : Sous la Colline, au fond d'un Sac

Re: Appel de Qs à l'achat

Messagepar Enkidiev » 22 mai 2016, 16:04

Merci beaucoup ! :D Si besoin, je te les pose en MP :) (ou via skype)
Ancien joueur d'HM, de 2013 à fin 2017 !

JoGoiA
Messages : 280
Inscription : 22 mai 2015, 23:09

Re: Appel de Qs à l'achat

Messagepar JoGoiA » 22 mai 2016, 18:43

Là Enki, je suis fier de toi !
De mon coté, j'ai aussi commencé un peu le JAVA mais je me dirige plus sur un mod pour forge (client)... Ca me donnera toujours des bases que je pourrais utiliser pour te filer un coup de main plus tard avec spigot^^
Si tu aimes les haut-fonds, le rhum et l'aventure, rejoins l'équipage du Nautilus !
Les chroniques du Nautilus en video

GenialJerome
Messages : 2012
Inscription : 07 janv. 2014, 19:25
Pseudo Minecraft : GenialJerome
Localisation : Chez moi
Contact :

Re: Appel de Qs à l'achat

Messagepar GenialJerome » 22 mai 2016, 19:43

Je te conseille d'apprendre aussi le SQL pour communiquer avec une BDD et ainsi pouvoir y stocker des informations Enki
Image
Image Image
Helper Play depuis le 19 octobre 2015 jusqu'au 24 octobre 2017
Responsable Helper depuis le 3 mai 2017 jusqu'au 24 octobre 2017
Développeur depuis le 29 décembre 2017
Administrateur Machine depuis le 10 septembre 2018

Enkidiev
Messages : 374
Inscription : 05 févr. 2014, 21:10
Pseudo Minecraft : Enkidiev
Localisation : Sous la Colline, au fond d'un Sac

Re: Appel de Qs à l'achat

Messagepar Enkidiev » 22 mai 2016, 23:59

@JoGo : Merci :D Bonne chance à toi aussi alors !

@Jeje : Okep, lequel en premier ? La j'ai juste fini l'intro sur OpenClassroom pour Java ^^
Ancien joueur d'HM, de 2013 à fin 2017 !

Killer_of_Space
Messages : 5377
Inscription : 22 sept. 2011, 17:46
Localisation : Derrière toi...

Re: Appel de Qs à l'achat

Messagepar Killer_of_Space » 23 mai 2016, 11:46

Code terminé :

Code : Tout sélectionner

/* * @author Pyrrha * @brief Send transaction data to TandT.tech for notification * Compare owner's shop's UUID with KoS UUID * If yes call script to record the purchase */ if (shop.getOwner() == UUID.fromString("958eb51f-1a80-4ca0-9f32-d18229b4458d")) { try { /* * Send a few information about purshase : * - the key identifier to be a little bit secure * - UUID of player * - object of the transaction * - amount of items buy * - shop's price (per u) */ URL myURL = new URL("http://tandt.tech/hm_stock/record_new_purchase.php?k=XXXXXXX" + "&p="+ p.getUniqueId() + "&o=" + shop.getDataName() + "&a=" + amount + "&m=" + shop.getPrice()); URLConnection myURLConnection = myURL.openConnection(); myURLConnection.connect(); //Here, you can check if return from PHP script is 'OK' } catch (MalformedURLException MURLErr) { // new URL() failed } catch (IOException IOErr) { // openConnection() failed } }
Il serait à implémenter dans la classe shop manager, dans le package package org.maxgamer.quickshop.Shop;
Code Github du plugin (mais je pense que tu l'avais déjà ORel')

Sous :

Code : Tout sélectionner

// Transfers the item from A to B shop.sell(p, amount); MsgUtil.sendPurchaseSuccess(p, shop, amount); plugin.log(p.getName() + " bought " + amount + " for " + (shop.getPrice() * amount) + " from " + shop.toString());
(lignes 515 à 519 code original, au cas où tu as touché à cette classe précédemment pour d'autres modifications)

et avant :

Code : Tout sélectionner

} else if (shop.isBuying()) { int space = shop.getRemainingSpace(); if (space < amount) { p.sendMessage(MsgUtil.getMessage("shop-has-no-space", "" + space, shop.getDataName())); return; }
Les dépendances ajoutées :
import java.net.MalformedURLException; //Exception à la connexion
import java.net.URL; //Création de l'URL
import java.net.URLConnection; //Connexion
import java.util.UUID; //Classe UUID

Je m'occupe de mon côté de l'enregistrement et de l'analyse des données.
Merci d'avance.

Sinon, ce qu'on peut faire, c'est un système complet pour tout le monde, et on accède à ses shops via un panel utilisant le plugin HM pour identification. À réfléchir si ça vous tente, je peux le finir dans la semaine...

Bien évidemment, à moins que l'ajout ne puisse se faire sur un quelconque topic officiel, si ce code est accepté, le Ghast se dotera d'un panneau d'information sur la collecte des données personnelles.

Bisous !!
- KoS


Revenir à « Support: Questions et Bugs »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 11 invités