Comandos tx
Hasta ahora, los ejemplos del CLI interactuando con la blockchain han sido a través del comando contract
. Subir contratos, desplegar contratos e invocarlos. Cada uno de estos son diferentes tipos de transacciones, que deben ser firmadas y enviadas a la red (y en el caso de las transacciones relacionadas con contratos, simuladas primero).
Técnicamente, estas tres son diferentes operaciones, de las cuales una transacción puede contener hasta 100 operaciones. Sin embargo, en el caso de operaciones relacionadas con contratos, una transacción está limitada a solo una.
Así que para todas las demás transacciones, el CLI proporciona los subcomandos tx
. Estos son:
new
sign
send
simulate
tx nuevo
Para los siguientes ejemplos, utilizaremos las siguientes cuentas:
stellar keys generate --fund alice --network testnet
stellar keys generate --no-fund bob
# You can add a public key to the keys
stellar keys add --public-key GBUG7QTBTT47XVDVE6RZYWRUZBPLOIO57INE6LYZDMIXMMDCREQRUQKI charlie
## and use testnet
stellar network use testnet
Crear Cuenta
Crea y financia una nueva cuenta Stellar. Arriba, alice
fue financiado por friendbot. Sin embargo, bob
y charlie
no lo fueron. Así que podemos usar el comando create-account
para financiarlos.
bob
recibirá 10 XLM y charlie
obtendrá 1 XLM.
stellar tx new create-account \
--source alice \
--destination bob \
--starting-balance 100_000_000
stellar tx new create-account \
--source alice \
--destination charlie \
--starting-balance 10_000_000
Notas:
--starting-balance
: El balance inicial en stroops para financiar la cuenta (1 XLM = 10,000,000 stroops)
Pago
bob
se siente mal porque charlie
solo recibió 1 XLM, así que enviará 4 XLM más a charlie
.
stellar tx new payment \
--source bob \
--destination charlie \
--asset native \
--amount 40_000_000
Notas:
--asset
: El activo a enviar - ya sea "nativo" para XLM o en formato "CODE:ISSUER" para otros activos
Aumentar Secuencia
Aumentar el número de secuencia de una cuenta:
stellar tx new bump-sequence \
--source alice \
--bump-to 123450
Fusión de Cuenta
Fusionar una cuenta en otra, transfiriendo todos los XLM.
bob
decide seguir compartiendo la riqueza y fusiona su cuenta en la de charlie
.
stellar tx new account-merge \
--source bob \
--account charlie
Notas:
--source
: La cuenta a eliminar del ledger, por lo tanto, esta es su transacción final
Establecer Flags de Línea de Confianza
Modificar las flags de autorización en una línea de confianza:
stellar tx new set-trustline-flags \
--source alice \
--asset USDC:GBUG7QTBTT47XVDVE6RZYWRUZBPLOIO57INE6LYZDMIXMMDCREQRUQKI \
--trustor charlie \
--set-authorize \
--set-authorize-to-maintain-liabilities \
--set-trustline-clawback-enabled
Argumentos:
--source
: La cuenta emisora que establece las flags (debe ser el emisor del activo)--asset
: El activo en formato CODE:ISSUER--trustor
: La cuenta cuya flags de línea de confianza se modificará--set-authorize
: Habilitar autorización completa--set-authorize-to-maintain-liabilities
: Habilitar autorización limitada--set-trustline-clawback-enabled
: Habilitar clawback para esta línea de confianza--clear-*
: Flags de limpieza correspondientes para eliminar cada configuración
Establecer Opciones
Configurar configuraciones de cuenta:
stellar tx new set-options \
--source alice \
--inflation-dest GBUG7QTBTT47XVDVE6RZYWRUZBPLOIO57INE6LYZDMIXMMDCREQRUQKI \
--home-domain "example.com" \
--master-weight 100 \
--med-threshold 100 \
--low-threshold 100 \
--high-threshold 100 \
--signer GBXSGN5GX4PZOSBHB4JJF67CEGSGT7DGBGGUGWXI4WOQMQEA4SFV2HTJ \
--signer-weight 1 \
--set-required \
--set-revocable \
--set-clawback-enabled \
--set-immutable
Notas:
--source
: Cuenta para modificar las configuraciones--inflation-dest
: Establecer la cuenta de destino de inflación--home-domain
: Establecer el dominio principal para federación / cumplimiento--master-weight
: Peso de la clave maestra de la cuenta (0-255)--low-threshold
: Umbral de peso para operaciones de baja seguridad--med-threshold
: Umbral de peso para operaciones de seguridad media--high-threshold
: Umbral de peso para operaciones de alta seguridad--signer
: Añadir una nueva clave pública de firmante--signer-weight
: Peso para el nuevo firmante (0 elimina el firmante)--set-required
: Habilitar requerir autorización para nuevas líneas de confianza--set-revocable
: Habilitar la revocación de líneas de confianza--set-clawback-enabled
: Habilitar clawback para la cuenta emisora de activos--set-immutable
: Hacer que las configuraciones de la cuenta sean inmutables--clear-*
: Flags de limpieza correspondientes para eliminar cada configuración
Cambiar Confianza
Crear o modificar una línea de confianza:
stellar tx new change-trust \
--source alice \
--line USDC:ISSUER \
--limit 100000000
Argumentos:
--source
: Cuenta creando/modificando la línea de confianza--line
: Activo para crear la línea de confianza en formato CODE:ISSUER--limit
: Cantidad máxima que se puede mantener (0 elimina la línea de confianza)
Gestionar Datos
Gestionar entradas de datos de la cuenta:
stellar tx new manage-data \
--source alice \
--data-name config \
--data-value 7465737476616c7565 # hex encoded
Notas:
--data-name
: Nombre de la entrada de datos (hasta 64 bytes)--data-value
: Valor codificado en hex para almacenar (hasta 64 bytes, omite para eliminar)
Guías en esta categoría:
📄️ Ciclo de Vida del Contrato
Gestionar el ciclo de vida de un contrato inteligente Stellar utilizando la CLI
📄️ Desplegar un contrato a partir de bytecode Wasm instalado
Desplegar una instancia de un contrato compilado que ya está instalado en la red
📄️ Desplegar el Contrato de Activo Stellar para un activo Stellar
Desplegar un SAC para un activo Stellar para que pueda interactuar con contratos inteligentes
📄️ Extender el TTL de una instancia de contrato desplegada
Usar el CLI para extender el tiempo de vida (TTL) de una instancia de contrato
📄️ Extender el TTL de la entrada de almacenamiento de un contrato desplegado
Usar la CLI para extender el tiempo de vida (TTL) de la entrada de almacenamiento persistente de un contrato
📄️ Extender el TTL del código Wasm de un contrato desplegado
Usar Stellar CLI para extender el TTL del bytecode Wasm del contrato, con o sin binario local
📄️ Instalar y desplegar un contrato inteligente
Combina los comandos de instalar y desplegar en la Stellar CLI para realizar ambas tareas
📄️ Instalar el código de bytes de Wasm
Usa el CLI de Stellar para instalar un contrato inteligente compilado en el ledger
📄️ Pagos y Activos
Envía XLM, stellar classic o un activo soroban usando el CLI de Stellar
📄️ Restaurar un contrato archivado usando el CLI de Stellar
Restaurar una instancia de contrato archivada usando el CLI de Stellar
📄️ Restaurar datos de contrato archivados utilizando el CLI de Stellar
Restaurar entradas de almacenamiento de contrato archivadas utilizando el CLI de Stellar
📄️ Comandos tx
Crear transacciones Stellar utilizando el CLI de Stellar
📄️ tx op agregar
Crear transacciones Stellar usando el CLI de Stellar
📄️ firma tx y envía tx
Crear transacciones stellar utilizando el CLI de Stellar