WEB3DEV

Cover image for Vamos entender as NFT’s de assinatura e um pouco de cunhagem
Adriano P. Araujo
Adriano P. Araujo

Posted on

Vamos entender as NFT’s de assinatura e um pouco de cunhagem

__

O que é uma assinatura baseada em NFT ( EIP-5643 )?

Assinaturas baseadas em NFT que exigem que usuários ou participantes mantenham uma NFT específica. Ao verificar sua titularidade da NFT necessária, os usuários podem acessar serviços, benefícios, recompensas, etc. Como tal, isso significa que existem muitas opções diferentes para esse tipo de assinatura. Por exemplo, ele pode dar aos usuários acesso a um clube online específico, DAO, grupo Discord ou um evento especial. No caso deste último, tendemos a falar sobre NFT’s como ingressos, especialmente se for uma coisa única. Além disso, na maioria desses casos, os proprietários da NFT podem acessar determinados sites restritos aos detentores da NFT. Lá, eles geralmente podem visualizar o conteúdo desbloqueável.

As NFT’s de assinatura permitem que as empresas construam comunidades de seus clientes mais fiéis. Os clientes já estão familiarizados com os benefícios do modelo de assinaturas. Buscando maneiras de recompensar seus titulares de assinaturas NFT com vantagens, acesso e conteúdo exclusivos.

Por que NFT’s de assinatura?

As assinaturas da Web2 são alugadas, não são de titularidade de seus usuários. Você não possui sua associação ao Spotify. Você não pode vendê-la. E devido à comissão de 30% da Apple, você também está pagando o “imposto de plataforma  ” Mas este é apenas o primeiro ponto. Aqui está do que elas são realmente capazes,

  1. Assinaturas baseadas no desempenho um PFP Fortnite que funciona como uma assinatura NFT, onde todos os membros têm acesso a skins e mapas exclusivos, mas os melhores jogadores desbloqueiam características raras e eventos exclusivos. Quanto melhor o jogador, mais valioso é o seu NFT.

  2. Lançamentos Disney+ para assinantes, em conjunto com  NFTs de obras de arte da Marvel e PFP’s de Star Wars. NFT’s fracionadas de video-clipes. NFT’s Coinbase com acesso a dados premium de mercado e de lançamento.Estes lançamentos são ótimos para envolver e manter os assinantes felizes.

  3. Desbloqueios e NFT’s exclusivos da Tesla que desbloqueiam o acesso a recursos premium. NFT’s da HBO que permitem assistir a novos filmes antes do lançamento. NFT’s da Food Network que oferecem aulas de culinária interativas. Ao anexar vantagens escassas às assinaturas baseadas em NFT, seu valor aumenta.

Agora, vamos aprender como desenvolver nossas próprias NFTs de assinatura

Configuração local ( A )

Você pode clonar o repositório de tutoriais daqui: Github e depois progredir para a pasta subscription_nft

Instalação ( B )

Depois que o código estiver configurado no sistema local, você precisará instalar todas as dependências usando npm i ou yarn install dependendo da sua preferência pessoal.

( C ) Entendendo o framework  da NFT de assinatura

( C1 ) SubscriptionNFT.sol

Este contrato começa simplesmente importando nosso contrato Modified_ERC5643 do diretório e possui um simples função mint dentro dele. A função de cunhagem(mint) possui os parâmetros do endereço para o qual a NFT será emitida, o tokenID e, finalmente, uma data de validade do token.

Todos esses parâmetros devem ser fornecidos pelo proprietário apenas, pois ninguém mais pode chamar essa função ( fizemos isso por um ponto de vista de segurança ).

Internamente, isso chama a  função mint , que chama a função  renewSubscription, que atualiza a data de validade de um token para o usuário.

( C2 ) Entendendo o Modified_ERC5643.sol

No contrato Modified_ERC5643, precisamos entender principalmente o funcionamento de 2 funções, que são   renewSubscription e renewSubscription.

( i ) RenewSubscription - Essa é uma função única de proprietário, pois somente quando um usuário paga o proprietário, a expiração da NFT será atualizada / estendida. Por simplicidade, podemos entender a expiração como um Unix Timestamp.

( ii ) CancelSubscription - Essa também é uma função única de proprietário, que o permite à partir do contrato cancelar os tokens para qualquer usuário. Ele usa o tokenID como parâmetro.

( D ) Implantando o contrato inteligente: SubscriptionNFT.sol

Para implantar e para os fins dessa nossa demonstração, implantaremos o contrato inteligente no BuildBear → buildbear.io

Criando uma rede de testes privada no BuildBear ⁇ ️️ ( por que BuildBear, você pergunta? Dê uma olhada aqui: Onde o localhost falha e Ganhe  Hackathons Web3, usando a análise da Testnet da BuildBear )

Garantimos nosso RPC da BuildBear e atualizamos nosso arquivo .env para o endpoint RPC.

Atualizamos nossa hardhat.config.js para o seguinte:

Para implantar seu contrato inteligente, execute o comando npx hardhat run scripts/deploy.js --network buildbear

Depois de executar o comando acima, o contrato inteligente deve ter sido implantado e seu terminal fornecerá o endereço no qual o contrato inteligente foi implantado, da seguinte maneira:

( D ) Interagindo com nosso contrato inteligente

💡 BÔNUS, você pode interagir com o meu, graças ao BuildBear!!! ( Mais sobre os benefícios do BuildBear aqui, aqui e aqui)

Copie o endereço produzido e vá para a sua versão privada do BuildBear Explorer. Você pode visitar o meu em BuildBear | Explorer. Meu contrato foi implantado em 0x7A5C9F76f76A475689B067e111bCC6EB5f8bBE77 e, portanto, meu contrato está disponível aqui.

Agora vamos ver como podemos interagir com o contrato. Para isso, vá para a seção de contratos da página, você verá a opção de escrever contrato. Vamo interagir com o contrato inteligente chamando a função de cunhagem. Certifique-se de ter conectado a conta Metamask que implantou o contrato inteligente, pois esse será o proprietário do contrato e só então você poderá usar a função de cunhagem.

Chamei para a função de cunhagem e você pode ver minha Transação usando esse link.

Um recurso especial do BuildBear é a aba de progresso. Essa aba permite que você veja os intrincados detalhes de cada transação.

Isso nos mostra que a função de cunhagem foi chamada assim como os parâmetros que foram fornecidos a ela, dentro dos quais outro evento de SubscriptionUpdate foi chamado. Essa é uma boa maneira de saber como seu contrato inteligente está realmente interagindo com os usuários e encontrar vulnerabilidades ou bugs, se houverem.

E com isso chegamos ao final do tutorial sobre assinaturas baseadas em NFT. Espero que você tenha conseguido entender o conceito e tenha conseguido implantar o Contrato Inteligente em seu próprio nó privado. Eu aproveito esse momento para compartilhar minha experiência trabalhando com BuildBear. Eu poderia ter escolhido qualquer outra plataforma de teste como o Remix IDE, mas o BuildBear fornece a independência de compartilhar seu nó de teste com seus amigos, o que o torna ainda mais interativo. O BuildBear é uma ótima ferramenta, especialmente se você estiver trabalhando em equipes, dessa forma toda a equipe pode trabalhar em um nó e testar o contrato inteligente juntos.

Caso você enfrente alguma dificuldade ao implementar o contrato inteligente, informe-nos nos comentários e ajudaremos você a descobrir o porquê. Para qualquer outro feedback ou sugestão, entre em contato comigo na seção de comentários.

Para saber mais sobre o BuildBear, leia aqui a documentação

Obtenha o código Github acima  aqui

Se você aprecia o que estamos fazendo, siga-nos no Twitter e Participe do grupo no Telegram, se você ainda não fez.

E, por favor, dê-nos um aplauso 👏 se você gosta do nosso trabalho.

Autores:

Amateur-Dev, Shivam e Aqil


Este artigo foi escrito por Amateur-Dev, Shivam e Aqil  e traduzido por Adriano P. de Araujo. O original em inglês pode ser encontrado aqui.

Top comments (0)