MaksutTilaukset
Subscription Authority on PDA, jota ohjelma käyttää SPL Token -delegaattina käyttäjän token-tilille. Sulje se, kun käyttäjällä ei ole enää aktiivisia kiinteitä delegointeja, toistuvia delegointeja tai tilausdelegointeja kyseiselle mintille.
Tilin sulkeminen palauttaa sen vuokran tilin lamport-rahoittajalle ja peruuttaa ohjelman omistaman token-delegaatin hyväksynnän. Rahoittaja on yleensä käyttäjä, mutta se voi olla mikä tahansa maksaja, joka rahoitti Subscription Authority -tilin. Jos jokin aktiivinen delegointi vielä riippuu valtuutuksesta, sulje nämä delegoinnit ensin.
Valtuutuksen sulkeminen
import { address, createClient } from '@solana/kit';import { solanaLocalRpc } from '@solana/kit-plugin-rpc';import { signer } from '@solana/kit-plugin-signer';import {findSubscriptionAuthorityPda,subscriptionsProgram,} from '@solana/subscriptions';const client = createClient().use(signer(userSigner)).use(solanaLocalRpc({ rpcUrl: 'http://127.0.0.1:8899' })).use(subscriptionsProgram());const tokenMint = address('TOKEN_MINT_ADDRESS_HERE');const [subscriptionAuthorityPda] = await findSubscriptionAuthorityPda({user: userSigner.address,tokenMint,});await client.subscriptions.instructions.closeSubscriptionAuthority({user: userSigner,tokenMint,// Include this only when a sponsor funded the Subscription Authority.receiver: sponsorSigner.address,}).sendTransaction();
Huomautukset
- Käyttäjä allekirjoittaa sulkemistapahtuman.
- Jos sponsori rahoitti Subscription Authorityn, välitä kyseinen sponsoritili
parametrina
receiver, jotta vuokra palautuu kirjatulle maksajalle. - Sulje kiinteät, toistuvat ja tilausdelegointien PDA:t ennen Subscription Authorityn sulkemista.
- Jos käyttäjä luo myöhemmin uuden delegoinnin, alusta uusi Subscription Authority samalle mintille.
Is this page helpful?