Bonjour, bonsoir,
pour des besoins spécifiques, je me suis penché sur la liste des Alliances et Guildes que l'on peut trouver dans l'annuaire en jeu.
Trouvant ces données utiles, je me suis demandé quel packet transférait ces informations.
J'ai cherché pendant 30min en épluchant packet par packet, rien..
C'était donc forcément par requête HTTP du client vers les serveur d'Ankama.
En utilisant Fiddler, j'ai donc constaté comme prévu que les informations parviennent au client par requête HTTP.
En effet, voici l'URL pour les alliances (il y a aussi guildes + versatile guild & ally) :
http://dl.ak.ankama.com/games/dofus2/game-export/AllianceListMessage.[SERVER-ID].data
Malheureusement, ces données ne sont pas plaintext donc illisibles (moi qui voulais traiter les données brutes via une fonction).
L'annuaire est géré par la classe SocialDataFrame.as, où l'on parle d'une signature dans le fichier config.xml (clé gameExport.signaure)
Mais il se trouve que cette signature se trouve uniquement dans les builds développeur/test comme le confirme la condition ligne 81&83.
Cette signature est normalement en format BASE64 puis décodée en un tableau d'octet pour que l'intégrité des données soit vérifiée.
Sous cette condition, on trouve le code utilisé par nos clients "retail" afin que l'annuaire soit rempli, qui nous renvoie sur un AllianceListRequestAction qui nous envoie lui même sur un AllianceWrapper.
C'est là que je suis bloqué, je ne sais pas comment faire afin d'extraire les données des alliances. Est-ce que quelqu'un à déjà procédé à l'extraction de ces données ? Est-ce que vous connaissez un projet qui exploite ces données ? Avez-vous une idée sur comment y procéder ?
Je vous remercie d'avance pour vos réponses