Skip to content

Moonbeam XCM SDK参考页面:v0版本

概览

Moonbeam XCM SDK使开发者能够轻松从波卡或Kusama生态系统中的中继链和其他平行链向Moonbeam或Moonriver充提资产。通过使用SDK,您无需担心确定原始或目标资产的multilocation或在哪个网络上使用extrinsics来发送XCM转移。

SDK提供了一个API,其中包括一系列接口,可用于获取每个支持资产的资产信息、初始化网络的链信息、实用方法,以及能够存款、提现和查看余额信息的方法。

此页面包含一个XCM SDK中可用接口和方法的列表。更多关于如何使用XCM SDK接口和方法的信息,请参考使用XCM SDK教程。

核心接口

SDK提供以下核心接口,并可通过初始化后访问:

接口 描述
symbols 一个包含初始化Moonbeam网络的每个支持资产的资产原链符号的列表。
assets 一个初始化Moonbeam网络支持资产的列表,及其资产ID、
Moonbeam上的预编译地址和资产符号
moonAsset 包含初始化Moonbeam网络的资产ID、预编译合约地址和原生资产符号
moonChain 包含初始化Moonbeam网络的链密钥、名称、WSS端点、平行链ID、
原生资产小数位数、链ID和每秒单位

核心方法

SDK提供以下核心方法:

方法 描述
init() 初始化XCM SDK。必须在其他SDK方法调用前先调用此方法
deposit() 发起一笔存款,以将资产从其他链转移至Moonbeam
withdraw() 发起一笔提现,以将资产从Moonbeam转移至其他链
subscribeToAssetsBalanceInfo() 监听每个支持资产的给定账户的余额更改
isXcmSdkDeposit() 返回一个布尔值,指示给定的转账数据是否用于存款
isXcmSdkWithdraw() 返回一个布尔值,指示给定的转账数据是否用于提现
toDecimals() 以十进制格式返回给定余额

存款方法

当构建存款所需的转移数据时,您将使用多种方法来构建底层XCM消息并进行发送:

方法 描述
deposit() 发起一笔存款,以将资产从其他链转移至Moonbeam
from() 设置存款的来源链。此函数从deposit()函数返回。必须先调用deposit()
get() 在Moonbeam上设置账户以存入资金以及 发送存款的来源账户。
此函数从from()函数返回。必须先调用from()
send() 发送给定数量的存款转移数据。此函数从get()函数返回。必须先调用get()
getFee() 返回转移给定数量的预估费用,该费用将以deposit()函数中指定的资产支付。
此函数从get()函数返回。必须先调用get()

提现方法

当构建提现所需的转移数据时,您将使用多种方法来构建底层XCM消息并进行发送:

方法 描述
withdraw() 发起一笔提现,以将资产从Moonbeam转移至其他链
to() 此函数从withdraw()函数返回。必须先调用withdraw()
get() 在目标链上设置账户以发送提现资金。此函数从to()函数返回。必须先调用to()
send() 发送给定数量的提现转移数据。此函数返回get()函数。必须先调用get()
getFee() 返回转移给定数量的预估费用,该费用将以withdraw()函数中指定的资产支付。
此函数从get()函数返回。必须先调用get()
Last update: January 23, 2024
| Created: December 28, 2022