usdt空投

This commit is contained in:
2025-02-15 10:52:35 +08:00
parent d659619d0d
commit e01dd4f18c
3 changed files with 25 additions and 75 deletions

View File

@@ -4,17 +4,21 @@ import (
"github.com/aptos-labs/aptos-go-sdk"
"github.com/aptos-labs/aptos-go-sdk/crypto"
"github.com/zeromicro/go-zero/core/threading"
"nova_task/internal/svc"
)
type Apt struct {
svcCtx svc.ServiceContext
client *aptos.Client
sender *aptos.Account
payloads chan aptos.TransactionBuildPayload
results chan aptos.TransactionSubmissionResponse
isTest bool
}
func NewApt(privateKeyStr string, isTest bool, resultHandler func(aptos.TransactionSubmissionResponse)) (*Apt, error) {
func NewApt(svcCtx svc.ServiceContext, privateKeyStr string, isTest bool) (*Apt, error) {
var networkConfig aptos.NetworkConfig
if isTest {
networkConfig = aptos.TestnetConfig
@@ -49,6 +53,7 @@ func NewApt(privateKeyStr string, isTest bool, resultHandler func(aptos.Transact
sender: sender,
payloads: payloads,
results: results,
isTest: isTest,
}
threading.GoSafe(func() {
@@ -67,7 +72,23 @@ func (a *Apt) transferUsdt(id uint64, toAddress string, amount uint64) error {
return err
}
p, err := aptos.CoinTransferPayload(nil, receiver, amount)
// 0x1::primary_fungible_store::transfer
// fungible_asset::Metadata
contractAddress := aptos.AccountAddress{}
err = receiver.ParseStringRelaxed("0x43417434fd869edee76cca2a4d2301e528a1551b1d719b75c350c3c97d15b8b9")
if err != nil {
return err
}
coinType := &aptos.TypeTag{
Value: &aptos.StructTag{
Address: contractAddress,
Module: "coin",
Name: "USDT",
TypeParams: []aptos.TypeTag{}, // USDT 没有额外的类型参数
},
}
p, err := aptos.CoinTransferPayload(coinType, receiver, amount)
if err != nil {
return err
}
@@ -85,6 +106,7 @@ func (a *Apt) handleResult(result aptos.TransactionSubmissionResponse) {
}
func (a *Apt) Start() {
a.svcCtx.
}