Flujo de tokenización ERC-1155

Después de desplegar un proyecto de token ERC-1155, los administradores de tokens y los propietarios de tokens siguen un flujo típico para crear tokens y completar operaciones de ciclo de vida.

Al desplegar un proyecto de token, los usuarios de la lista transferidos al método de inicialización se convierten en administradores de token del código de cadena. Después del despliegue, el flujo típico para crear tokens y completar operaciones de ciclo de vida sigue estos pasos:

Operaciones de administrador de token:

  • Cree cuentas de usuario para cualquier persona que posea tokens o complete operaciones relacionadas con tokens.
  • Para cada cuenta de usuario, cree cuentas de token. Los usuarios pueden tener varias cuentas de token fungible, pero solo una cuenta de token no fungible (NFT). Los administradores de token pueden utilizar el método createAccount para crear cuentas de usuario y token simultáneamente en lugar de por separado.
  • Cree tokens fungibles, según sea necesario. Al inicializar un token fungible, puede asignar los metadatos y comportamientos asociados al token.
  • Para tokens fungibles, asocie las cuentas de tokens fungibles de los usuarios a tokens fungibles específicos.
  • Agregue roles de minter y burner a las cuentas de token de los usuarios según sea necesario.

Operaciones de propietario de token:

  • Los usuarios que tienen el rol minter para un token específico pueden crear (mint) NFT o tokens fungibles.
  • Los usuarios pueden transferir tokens entre cuentas y comprobar saldos de cuenta.
  • Los usuarios que tienen el rol de quemador para un token específico pueden destruir (quemar) NFT o tokens fungibles.

Operaciones del gestor de almacenes:

  • El usuario que tiene el rol de almacén puede bloquear NFT. Un NFT bloqueado no se puede quemar ni transferir a otros usuarios.

En el siguiente diagrama se muestra el flujo de proceso general para un escenario de tokenización ERC-1155.
Flujo de proceso para escenario de tokenización ERC-1155

En la siguiente tabla se resumen los métodos que se generan automáticamente al andamiar un proyecto de token ERC-1155.

Categoría de método Método generado automáticamente (TypeScript) Método generado automáticamente (Ir) Llamada por Descripción
Gestión de Administración init Init Administrador Inicializa el código de cadena de token
isTokenAdmin IsTokenAdmin Administrador Devuelve true si el emisor de llamada es un administrador
addTokenAdmin AddTokenAdmin Administrador Agrega un administrador
removeTokenAdmin RemoveTokenAdmin Administrador Elimina un administrador
getAllTokenAdmins GetAllTokenAdmins Administrador Devuelve todos los administradores
Gestión de Cuentas createAccount CreateAccount Administrador Crea una cuenta de usuario y cuentas de token
createUserAccount CreateUserAccount Administrador Crea una cuenta de usuario
createTokenAccount CreateTokenAccount Administrador Crea una cuenta de token
associateFungibleTokenAccount AssociateFungibleTokenAccount Administrador Asocia una cuenta de token fungible con un token fungible
getAccountHistory GetAccountHistory Administrador/responsable de cuenta Devuelve el historial de una cuenta de token
getAccountTransactionHistory GetAccountTransactionHistory Administrador/responsable de cuenta Devuelve el historial de transacciones de una cuenta
getAccount GetAccount Administrador/responsable de cuenta Devuelve detalles de una cuenta de token
getAllAccounts GetAllAccounts Administrador Devuelve detalles de todas las cuentas de usuario
getAccountDetailsByUser GetAccountDetailsByUser Administrador/responsable de cuenta Devuelve detalles de una cuenta de usuario y todos los tokens asociados
getUserByAccountId GetUserByAccountId Cualquier Usuario Devuelve detalles de usuario para un ID de cuenta
Gestión de Roles addRole AddRole Administrador Agrega un rol a un usuario y token
isInRole IsInRole Administrador/responsable de cuenta Devuelve si un usuario tiene un rol especificado para un token
removeRole RemoveRole Administrador Elimina un rol de un usuario y un token
getAccountsByRole GetAccountsByRole Administrador Devuelve ID de cuenta para un token y rol especificados
getUsersByRole GetUsersByRole Administrador Devuelve una lista de usuarios para un token y rol especificados
Comportamiento de Mintable mintBatch MintBatch Usuarios con el rol minter Cuenta con varios tokens
Comportamiento transferible batchTransferFrom BatchTransferFrom Cualquier Usuario Transfiere tokens entre usuarios
safeBatchTransferFrom SafeBatchTransferFrom Cualquier Usuario Transfiere tokens entre el emisor de llamada del método y otro usuario
balanceOfBatch BalanceOfBatch Administrador/responsable de cuenta Devuelve saldos de cuenta de token para varios usuarios y tokens
exchangeToken ExchangeToken Propietario de Cuenta Intercambia tokens entre cuentas de token
Comportamiento quemable burnBatch BurnBatch Usuarios con el rol de quemador Token de Burns
Gestión de tokens create<Token Name>Token Create<Token Name>Token Admin (tokens fungibles) / Usuarios con el rol minter (NFT) Crea tokens
update<Token Name>Token Update<Token Name>Token Administrador (tokens fungibles) / Propietario de token (NFT) Tokens de actualizaciones
getTokenHistory GetTokenHistory Cualquier Usuario Devuelve el historial de un token
getTransactionById GetTransactionById Cualquier Usuario Devuelve los detalles de una transacción especificada
deleteHistoricalTransactions DeleteHistoricalTransactions Administrador Suprime las transacciones antes de una hora especificada
getAllTokens GetAllTokens Administrador Devuelve todos los activos de token
getTokenById GetTokenById Administrador/propietario de token Devuelve un token
getAllTokensByUser GetAllTokensByUser Administrador/responsable de cuenta Devuelve todos los tokens propiedad de un usuario especificado
ownerOf OwnerOf Cualquier Usuario Devuelve los detalles de usuario del propietario de un token especificado
URI URI Cualquier Usuario Devuelve el URI de un token especificado
name Name Cualquier Usuario Devuelve el nombre de un token especificado.
totalSupply TotalSupply Administrador Devuelve el número de tokens minados para un token especificado
totalNetSupply TotalNetSupply Administrador Devuelve el número de tokens minados menos el número de tokens quemados para un token especificado.
getTokensByName getTokensByName Administrador Devuelve todos los activos de token para un nombre de token especificado
getTokenDecimal getTokenDecimal Administrador Devuelve el número de decimales para un token especificado