Suivre les transferts d'un Fan Token

Le suivi des mouvements des Fan Tokens sur Chiliz Chain est un excellent moyen de surveiller l’activité de vos tokens préférés. En l’utilisant comme brique de base pour un tableau de bord potentiel, vous pouvez structurer les données afin de fournir des informations sur ce qui est populaire et ce qui ne l’est pas.

Lorsque l’on suit les mouvements des Fan Tokens™, on se heurte rapidement à un défi : lire les données directement depuis la blockchain est efficace pour l’état actuel («Quel est le solde du portefeuille X ? »), mais inefficace pour les données historiques («Montrez-moi tous les transferts impliquant le portefeuille X au cours de l’année écoulée").

Pour résoudre cela, nous pouvons utiliser des sous-graphes.

À propos des sous-graphes

Un sous-graphe est une API personnalisée qui extrait des données d’une blockchain, les traite et les stocke afin qu’elles puissent être interrogées facilement. Au lieu de demander à la blockchain d’analyser des millions de blocs à chaque fois que vous avez besoin de données, un sous-graphe indexe des événements spécifiques au fur et à mesure qu’ils se produisent et les stocke dans une base de données.

Chiliz Chain prend en charge les protocoles d’indexation standard du secteur. Vous pouvez choisir le fournisseur qui correspond le mieux aux besoins de votre projet :

  • The Grapharrow-up-right : la norme du secteur pour l’indexation décentralisée. Elle vous permet de déployer votre sous-graphe sur un réseau décentralisé d’indexeurs.

  • Goldskyarrow-up-right : un service d’indexation hébergé haute performance. Il est entièrement compatible avec le code de The Graph (vous pouvez souvent utiliser exactement le même code), mais offre des vitesses d’indexation plus rapides et des fonctionnalités de diffusion de données en temps réel.

Les deux outils utilisent le même framework de développement, donc la plupart des étapes de cette page peuvent s’appliquer aux deux.

Voyons par exemple comment nous pourrions suivre les transferts du PSG Fan Token...

0. Choisir un outil

Vous pouvez déployer un sous-graphe sur Chiliz Chain en utilisant The Graph (réseau décentralisé) ou Goldsky (indexeur hébergé). La structure du code est identique ; seules les commandes de déploiement diffèrent.

Bien sûr, vous pouvez vous appuyer sur leur propre documentation :

1. Initialiser un projet de sous-graphe

The Graph et Goldsky proposent tous deux des méthodes basées sur la CLI pour créer votre graphe.

circle-info

The Graph propose Subgraph Studioarrow-up-right, auquel vous pouvez vous connecter via votre Web3, puis créer un sous-graphe via l’interface.

Goldsky vous fournit un tableau de bordarrow-up-right lorsque vous créez un compte, à partir duquel vous pouvez créer un sous-graphe.

Installer le Graph CLI⁠

Sur votre machine locale, exécutez la commande suivante :

circle-info

Vous pouvez créer un sous-graphe à l’aide de l’outil CLI de The Graph, que ce soit pour des sous-graphes décentralisés de The Graph ou pour des sous-graphes hébergés par Goldsky.

Goldsky dispose de son propre outil CLI, dont vous aurez besoin si vous souhaitez déployer sur Goldsky (voir ci-dessous).

Initialisez votre sous-graphe⁠

Vous pouvez le copier directement depuis la page de votre sous-graphe pour inclure le slug spécifique de votre sous-graphe :

Le La balise --studio

est facultative.

Il vous sera demandé de fournir quelques informations sur votre sous-graphe, comme ceci :

Vous devez avoir votre contrat vérifié sur l’explorateur de blocs, et la CLI récupérera automatiquement l’ABI et configurera votre sous-graphe. Les paramètres par défaut généreront une entité pour chaque événement.

circle-exclamation
circle-info

Lorsque vous apportez des modifications à votre sous-graphe, vous travaillerez principalement avec trois fichiers :

  • Le manifeste (subgraph.yaml) : définit quelles sources de données votre sous-graphe indexera.

  • Le schéma (schema.graphql) : définit quelles données vous souhaitez récupérer à partir du sous-graphe.

  • Les mappings AssemblyScript (mapping.ts) : traduisent les données de vos sources de données en entités définies dans le schéma.

Ouvrez subgraph.yaml et assurez-vous que votre fichier manifeste pointe vers le bon réseau :

Compiler votre sous-graphe

Enfin, compilez votre sous-graphe pour vous assurer qu’il n’y a pas d’erreurs :

2. Déployer et publier

Une fois votre sous-graphe construit, choisissez votre fournisseur pour le déployer.

The Graph

  1. Connectez-vous à Subgraph Studioarrow-up-right, créez un sous-graphe et copiez votre clé de déploiement.

  2. Authentifiez-vous via la CLI : graph auth --studio <DEPLOY_KEY>

  3. Déployez votre sous-graphe dans Subgraph Studio : graph deploy --studio <SUBGRAPH_SLUG>

  4. Allez dans Studio, ouvrez votre sous-graphe et cliquez sur « Publish » pour frapper votre sous-graphe sur le réseau décentralisé. Cela déclenchera une transaction via votre portefeuille pour publier votre sous-graphe sous forme de NFT sur le réseau Arbitrum One.

Goldsky

  1. Allez à Goldskyarrow-up-right, créez une clé API dans « Paramètres du projet », puis connectez-vous via la CLI.

  2. Installez le goldsky commande : curl https://goldsky.com | sh Puis authentifiez-vous via la CLI : goldsky login

  3. Téléchargez votre sous-graphe vers Goldsky : goldsky subgraph deploy / --path

Les sous-graphes Goldsky sont actifs immédiatement après le déploiement. Aucune étape supplémentaire de publication n’est requise.

circle-info

Il vous sera demandé un libellé de version. Vous pouvez entrer quelque chose comme v0.0.1, mais vous êtes libre de choisir le format. Une fois cela fait, vous verrez le sous-graphe commencer à se synchroniser sur la page Studio.

circle-info

Les contrats intelligents de The Graph sont tous sur Arbitrum Onearrow-up-right, même si votre sous-graphe indexe des données provenant de Chiliz Chain.

3. Interroger votre sous-graphe

Félicitations ! Vous pouvez maintenant commencer à l’interroger en envoyant une requête GraphQL dans l’URL de requête du sous-graphe, que vous pouvez trouver dans le tableau de bord du service choisi.

Exemple :

The Graph

https://gateway-arbitrum.network.thegraph.com/api/[APIKEY]/subgraphs/id/[ID]

Goldsky

https://api.goldsky.com/api/public/project_[KEY]/subgraphs/[SLUG]/1.0.0/gn

Vous n’avez plus qu’à renseigner vos informations pour commencer à envoyer des requêtes GraphQL à cet endpoint.

Annexes

Requête d’exemple

Cette requête montre toutes les transactions du PSG Fan Token.

Code d’exemple

Le fait de le transmettre à l’URL de requête renvoie ce résultat :

Ressources supplémentaires

Pour plus d’informations sur l’interrogation des données de votre sous-graphe avec GraphQL :

Mis à jour

Ce contenu vous a-t-il été utile ?