Tuto API Viewer

  • Initiateur de la discussion MrSsX
  • Date de début
  • Initiateur de la discussion
MrSsX

MrSsX

Geek
Messages
71
Score réaction
10
Points
95
Première Partie

Je vais vous montrer comment accéder aux information du serveur en PHP.
Tout d'abord vous aurez besoin de vos clés API.
Puis copier ce code et changer ce qu'il y a "A Editer"
PHP:
$urlToken = 'https://mtxserv.com/oauth/v2/token?';
$urlViewer = 'https://mtxserv.com/api/v1/viewers/game?';
$query = array(
'grant_type' => 'https://www.mtxserv.fr/grants/api_key',
'client_id' => '*', // A Editer a la place de l'astérix
'client_secret' => '*', // A Editer a la place de l'astérix
'api_key' => '*' // A Editer a la place de l'astérix
);
$response = file_get_contents($urlToken . http_build_query($query));
if (false === $response) { die('Identification incorrecte');
}
$response = json_decode($response);
$accessToken = $response->access_token;
$query = array(
'access_token' => $accessToken,
'ip' => 'monserveur.mtxserv.fr', // A Editer entre les guillemet
'port' => 00000, // A Editer les 0
'type' => '' // A Editer entre les guillemet
);
$response = file_get_contents($urlViewer . http_build_query($query));
if (false === $response) { die('Une erreur est survenue');
}
?>
-Vous remplacez les astérix par vos clé API:
client_id c'est le Client ID
client_secret c'est le Client Secret
api_key c'est la Clé API

Deuxième Partie

-Vous mettez entre les guillemet votre ip. Exemple :
PHP:
'ip' => 'monserveur.mtxserv.fr', // A Editer entre les guillemet
-Vous remplacez 00000 du port par votre port
Pour savoir le port il faut juste regarder l'adresse du serveur : monserveur.mtxserv.fr:00000

-Vous mettez le jeu dans type. Exemple :
PHP:
'type' => 'garry-s-mod' // A Editer entre les guillemet
Le nom des jeux sont au format si dessous :

  • call-of-duty-4
  • team-fortress-2
  • shootmania
  • counter-strike-global-offensive
  • counter-strike-source
  • counter-strike-condition-zero
  • counter-strike-1-6
  • day-of-defeat-source
  • day-of-defeat-1-3
  • starbound
  • bungeecord
  • star-made
  • minecraft
  • left-4-dead
  • left-4-dead-2
  • garry-s-mod


Dernière Partie
A la fin de votre code vous ecrivez ce bout de code pour voir toutes les information :
PHP:
$response = json_decode($response);
var_dump($response);


Et après vous enlever ce bout de code et la variable "$response" sera donc de type objet.
Si vous voulez récupéré le nom de la map vous faites :
PHP:
<?php echo strval(json_decode($response)->{'params'}->{'map'}); ?>
et sa m'affichera "gm_excess_construct_13".
"$response" est un objet
"params" est un objet qui est lui même dans la variable "$response"

et players est de type Array.

C'est la fin de ce tutoriel. J'espère que je vous aurait bien aider !
 
Dernière édition:
bendem

bendem

Geek
Messages
20
Score réaction
1
Points
80
Plusieurs remarques à chaud:


  1. $response n'est pas une balise, mais une variable, ce n'est pas un array (tableau) mais un objet, pareil pour params, un champ de $response.

  2. PHP:
    <?php echo strval(json_decode($response)->{'params'}->{'map'}); ?>
    peut être simplifié en
    PHP:
    <?php echo json_decode($response)->params->map; ?>
  3. Un lien vers la doc de mTx: https://mtxserv.com/fr/mtxserv-api
Sinon, merci pour les infos, je suis sûr que ça va aider ceux qui se posent des questions et pour qui l'exemple proposé n'est pas suffisant.
 
Dernière édition:
  • Initiateur de la discussion
MrSsX

MrSsX

Geek
Messages
71
Score réaction
10
Points
95
bendem à dit:
Plusieurs remarque à chaud:


  1. $response n'est pas une balise, mais une variable, ce n'est pas un array (tableau) mais un objet, pareil pour params, un champ de $response.

  2. PHP:
    <?php echo strval(json_decode($response)->{'params'}->{'map'}); ?>
    peut être simplifié en
    PHP:
    <?php echo json_decode($response)->params->map; ?>
  3. Un lien vers la doc de mTx: https://mtxserv.com/fr/mtxserv-api
Sinon, merci pour les infos, je suis sûr que ça va aider ceux qui se posent des questions et pour qui l'exemple proposé n'est pas suffisant.
Je sais que "$response" est une variable mais je me suis embrouiller et les objet je m'en suis rendu compte qu'il y avait un probleme mais je ne savait pas lequel. Sinon merci comme même !
 
vintage

vintage

Geek
Messages
45
Score réaction
4
Points
95
Bonjour !

Merci pour ces infos !
 
  • Initiateur de la discussion
MrSsX

MrSsX

Geek
Messages
71
Score réaction
10
Points
95
Z3k4

Z3k4

Helpeur Divin
Messages
4 495
Score réaction
1 513
Points
580
ça pourras peut être m'aider quand je tenterais de faire un panel relier avec du java :p
 
Discord d'entraide
Rejoignz-nous sur Discord