Envoyer un actif sur la X-Chain
Envoyer un actif de la X-Chain vers un récipient unique
Cet exemple envoie un élément de la X-Chain à un seul destinataire. La première étape de ce processus consiste à créer une instance d'Avalanche connectée à notre point de terminaison Avalanche Platform de choix.
Nous supposons également que le KeyStore contient une liste d'adresses utilisées dans cette transaction.
Obtenir l'ensemble UTXO
La X-Chain stocke tous les soldes disponibles dans une banque de données appelée Sorties de transaction non dépensées (UTXO). Un ensemble UTXO est la liste unique des sorties produites par les transactions, les adresses qui peuvent dépenser ces sorties et d'autres variables telles que les temps de verrouillage (un horodatage après lequel la sortie peut être dépensée) et les seuils (combien de signataires sont nécessaires pour dépenser la sortie ).
Dans le cas de cet exemple, nous allons créer une transaction simple qui dépense une quantité de pièces disponibles et l'envoie à une seule adresse sans aucune restriction. La gestion des UTXO sera pour la plupart abstraite.
Cependant, nous devons obtenir l'ensemble UTXO pour les adresses que nous gérons.
Dépenser les UTXOs
La fonction d'assistance buildBaseTx ()
envoie un seul type d'actif. Nous avons un assetID particulier dont nous voulons envoyer les pièces à une adresse de destinataire. C'est un atout imaginaire pour cet exemple que nous pensons avoir 400 pièces. Vérifions que nous avons les fonds disponibles pour la transaction.
Nous avons 400 pièces! Nous allons maintenant envoyer 100 de ces pièces à l'adresse de notre ami.
Et la transaction est envoyée !
Obtenez le statut de la transaction
Maintenant que nous avons envoyé la transaction au réseau, il faut quelques secondes pour déterminer si la transaction a abouti. Nous pouvons obtenir un statut mis à jour sur la transaction en utilisant le TxID via la X-Chain.
Les statuts peuvent être l'un des suivants: “Accepted”, “Processing”, “Unknown”, and “Rejected”:
“Accepted” indique que la transaction a été acceptée comme valide par le réseau et exécutée.
“Processing” indique que la transaction fait l'objet d'un vote.
“Unknown” indique que le nœud ne sait rien de la transaction, ce qui indique que le nœud ne l'a pas.
“Rejected” iindique que le nœud connaît la transaction, mais qu'elle est en conflit avec une transaction acceptée.
Vérifiez les résultats
La transaction est finalement revenue comme "Accepted", mettons maintenant à jour l'UTXOSet et vérifions que le solde de la transaction est comme prévu.
Remarque: dans un réseau réel, le solde n'est pas garanti pour correspondre à ce scénario. Les frais de transaction ou les dépenses supplémentaires peuvent faire varier le solde. Aux fins de cet exemple, nous n'assumons aucun de ces cas.
Dernière mise à jour