Publication
Partagez vos connaissances.

Aide-mémoire Sui CLI, partie 2
Gaz et robinet avec Sui CLI
Lorsque vous développez vos applications, idéalement, vous commencerez sur devnet, puis testnet avant de les déployer sur le réseau principal.
Devnet et Testnet Gas sont libres d'acquisition. Mais le réseau principal ? nah.
Vous pouvez facilement demander du gaz sur devnet avec la client faucet
commande :
sui client faucet
Pour testnet, vous devez exécuter cette commande cURL pour demander du gaz :
curl --location --request POST 'https://faucet.devnet.sui.io/v1/gas' \
--header 'Content-Type: application/json' \
--data-raw '{
"FixedAmountRequest": {
"recipient": "<YOUR SUI ADDRESS>"
}
}'
Vous pouvez également visiter le site officiel de Sui Faucet pour réclamer des jetons Devnet et Testnet.
Utilisez la commande client gas pour vérifier les jetons de gaz disponibles du client dans l'environnement actuel.
sui client gas
Pour les transactions sur le réseau principal, vous devrez acquérir Sui auprès des bourses et approvisionner votre portefeuille.
Packages de publication
Vous pouvez publier des packages sur le réseau Sui à l'aide de la commande client publish.
sui client publish [OPTIONS] [package_path]
Voici un exemple de commande pour publier un package avec un budget de gaz MIST de 500 000 000.
sui client publish --gas-budget 5000000
Le budget de gaz n'est pas fixe, vous voudrez probablement vérifier sur la chaîne une quantité de gaz appropriée et la payer à l'avance.
Gestion des pièces avec Sui CLI
Lorsque vous travaillez avec des pièces SUI, vous devrez probablement les fusionner et les diviser souvent, en particulier lorsque vous jonglez avec le gaz ou que vous envoyez des montants différents à différents contrats ou utilisateurs.
Si vous avez deux pièces qui traînent et que vous souhaitez les consolider, utilisez la commande merge-coin comme suit :
sui client merge-coin --primary-coin <COIN_ID> --coin-to-merge <COIN_ID>
La pièce principale est celle que vous conserverez, et la pièce à fusionner est celle qui sera absorbée.
Vous avez besoin de partager une pièce à la place ? Peut-être souhaitez-vous payer à plusieurs destinataires ou avez-vous simplement besoin de différentes dénominations. Vous pouvez découper une pièce en utilisant split-coin comme suit :
sui client split-coin --coin-id <COIN_ID> --amounts <AMOUNTS>
Si vous devez envoyer des pièces, vous utiliserez la commande client transfer-sui comme suit :
sui client transfer-sui --sui-coin-object-id <COIN_ID> --to <ADDRESS>
Il s'agit d'un simple transfert : vous lui donnez le numéro d'identification de la pièce et l'adresse du destinataire, et il déplace les fonds.
Sui propose des transactions programmables qui vous permettent d'envoyer à plusieurs destinataires à la fois à l'aide de la commande pay-sui :
sui client pay-sui --input-coins <COIN_ID> --recipients <ADDRESS> --amounts <AMOUNTS>
Vous allez transmettre une pièce (ou une liste de pièces), puis spécifier les destinataires et le montant que chacun doit recevoir. Il est parfait pour les paiements groupés ou la distribution de jetons en masse.
Gestion d'objets avec Sui CLI
Sui est une question d'objets. Les contrats, les jetons et même vos pièces sont tous des objets.
Pour obtenir des informations détaillées sur n'importe quel objet, il suffit d'appeler :
sui client object <OBJECT_ID>
Cela affichera toutes les métadonnées, les informations sur le propriétaire et tout ce que l'objet contient.
Si votre objet comporte des champs dynamiques (comme un registre ou une structure de données croissante), vous pouvez également les explorer :
sui client dynamic-field <DYNAMIC_FIELD_ID>
Il s'agit d'une fonctionnalité très pratique que vous pourriez utiliser souvent pendant le développement.
Blocs de transactions programmables (PTB)
Sui est l'une des rares chaînes à posséder des PTB natifs. Les blocs de transactions programmables vous permettent de regrouper plusieurs opérations en une seule transaction, un peu comme un mini-script qui s'exécute en chaîne.
Supposons que vous deviez appeler une fonction Move directement depuis votre CLI. Vous allez le faire comme suit :
sui client ptb --move-call <PACKAGE>::<MODULE>::<FUNCTION> "<TYPE>" <ARGS>
Remplacez l'adresse du package, le nom du module et la fonction que vous ciblez. Ajoutez ensuite le type et les arguments selon vos besoins.
Et si vous souhaitez transférer plusieurs objets vers un autre portefeuille en une seule fois, vous pouvez également utiliser les PTB :
sui client ptb --transfer-objects "[<OBJECT_ID>]" <ADDRESS>
Wrap the object IDs in brackets if you’re sending more than one, and finish it off with the recipient’s address.
Conclusion
J'espère que cet article suffira pour vous présenter l'outil Sui CLI. C'est bien plus qu'un simple client, vous pouvez faire beaucoup de choses avec cet outil.
Si vous avez besoin d'un rappel rapide ou si vous essayez une nouvelle commande, faites de la feuille de triche Sui CLI votre meilleur ami. Et en cas de doute, la documentation de la CLI Sui Client contient la liste complète.
- Sui
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
Gagne ta part de 1000 Sui
Gagne des points de réputation et obtiens des récompenses pour avoir aidé la communauté Sui à se développer.

- ... SUIMeaning.Sui+22
- ... SUI0xduckmove+17
- ... SUIMoonBags+11
- ... SUIHaGiang+10
- ... SUI
- ... SUIAliabee+5
- ... SUIBekky+5
- Pourquoi BCS exige-t-il un ordre de champs exact pour la désérialisation alors que les structures Move ont des champs nommés ?53
- « Erreurs de vérification de sources multiples » dans les publications du module Sui Move - Résolution automatique des erreurs43
- Échec de la transaction Sui : objets réservés pour une autre transaction25
- Comment les contraintes de capacité interagissent-elles avec les champs dynamiques dans des collections hétérogènes ?05