github.com/InjectiveLabs/sdk-go@v1.53.0/examples/chain/exchange/1_MsgDeposit/example.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "os" 6 "time" 7 8 "cosmossdk.io/math" 9 10 "github.com/InjectiveLabs/sdk-go/client" 11 12 "github.com/InjectiveLabs/sdk-go/client/common" 13 14 sdktypes "github.com/cosmos/cosmos-sdk/types" 15 16 exchangetypes "github.com/InjectiveLabs/sdk-go/chain/exchange/types" 17 chainclient "github.com/InjectiveLabs/sdk-go/client/chain" 18 rpchttp "github.com/cometbft/cometbft/rpc/client/http" 19 ) 20 21 func main() { 22 network := common.LoadNetwork("testnet", "lb") 23 tmClient, err := rpchttp.New(network.TmEndpoint, "/websocket") 24 if err != nil { 25 panic(err) 26 } 27 28 senderAddress, cosmosKeyring, err := chainclient.InitCosmosKeyring( 29 os.Getenv("HOME")+"/.injectived", 30 "injectived", 31 "file", 32 "inj-user", 33 "12345678", 34 "5d386fbdbf11f1141010f81a46b40f94887367562bd33b452bbaa6ce1cd1381e", // keyring will be used if pk not provided 35 false, 36 ) 37 38 if err != nil { 39 panic(err) 40 } 41 42 clientCtx, err := chainclient.NewClientContext( 43 network.ChainId, 44 senderAddress.String(), 45 cosmosKeyring, 46 ) 47 if err != nil { 48 panic(err) 49 } 50 clientCtx = clientCtx.WithNodeURI(network.TmEndpoint).WithClient(tmClient) 51 52 chainClient, err := chainclient.NewChainClient( 53 clientCtx, 54 network, 55 common.OptionGasPrices(client.DefaultGasPriceWithDenom), 56 ) 57 58 if err != nil { 59 panic(err) 60 } 61 62 msg := &exchangetypes.MsgDeposit{ 63 Sender: senderAddress.String(), 64 SubaccountId: "0xaf79152ac5df276d9a8e1e2e22822f9713474902000000000000000000000000", 65 Amount: sdktypes.Coin{ 66 Denom: "inj", Amount: math.NewInt(1000000000000000000), // 1 INJ 67 }, 68 } 69 70 // AsyncBroadcastMsg, SyncBroadcastMsg, QueueBroadcastMsg 71 err = chainClient.QueueBroadcastMsg(msg) 72 73 if err != nil { 74 fmt.Println(err) 75 } 76 77 time.Sleep(time.Second * 5) 78 79 gasFee, err := chainClient.GetGasFee() 80 81 if err != nil { 82 fmt.Println(err) 83 return 84 } 85 86 fmt.Println("gas fee:", gasFee, "INJ") 87 }