【完全保存版】Sygmaを使って、EVMからSubstrateにトークンを送付してみよう!
0 はじめに
今回は「Sygma」を用いて、EVM系のGoerliからSubstrate系のRococo Phalaにトークンを送付します。
1 実際にやってみよう
こちらのやり方は、下の記事とほぼ同じです。
異なるのは、どのフォルダで実行するかの第4節の部分だけです。
cd examples/evm-to-substrate-fungible-transfer/
yarn run transfer
2 コードを読んでみよう
実は、コードもEVM(Goerli)からEVM(Sepolia)への送付の際とほとんど同じです。
これはプロトコルが異なるにも関わらず、その違いを意識せずに行うことができ、面白いと思いました。
違いは、こちらの「チェーンID」や「送付先アドレス」、「リソースID」くらいです。
なお、下にあるように、「5CD…1Vt」はRococo-Phara上では、「3zm…2z8」と表されます。
「リソースID」はどのトークンを送るかによって代わり、今回の場合は、こちらになります。
3 処理の流れを確認しよう(EVM側)
まず、今回やりたいのは、このような流れです。
とはいえ、Goerli側はEVM→EVMの流れと同じなので、詳細は省略します。
4 処理の流れを確認しよう(Substrate側)
1 polkadot.jsでローカル環境を立ち上げよう
今回、Substrateの送り先の「Phala」のテストネットは現時点ではエクスプローラーがないようですので、ローカルで設定する必要があります。
まずは、polkadot.jsのエクスプローラーにアクセスします。
現在、私はAstarにつながっています。
下の矢印を選択します。
「開発環境」に進み、「カスタムエンドポイント」でphalaのテストネットのエンドポイントを設定します。
できましたら、Switchで反映させます。
接続の初期化には少し時間がかかります。
2 チェーンの状態を確認しよう
繋がりましたら、チェーン状態を確認しましょう。
「ディベロッパー」から「チェーン状態」
「選択されたステートクエリー」を「system」にし、「Option」にアドレスを入れます。
その上で、「+」を選択します。
すると、下のようになりました。
「free」は使用可能な残高を表しているので、ここに数値が出ていれば、うまくつながっていることがわかります。
3 エクスプローラーを確認しよう
では、実際の流れを見てみましょう。
「Network」から「エクスプローラー」を開きます。
4 処理を確認しよう
では、処理を実行します。
第1章の流れに沿って、次のように、処理を行います。
少し待つと、下のように、イベントをキャッチしました。
ここでは「346,629」というブロックで処理が行われているようです。
下のブロックを選択してみましょう。
このように、「436H4…」から引き出されていることがわかります。
続いて、下のように「Deposit」が行われています。
「3zm…」は送付先として指定していたアドレスです。
このようにして、送付先に送られていることが確認できました。
今回は以上です。
ぜひ、手を動かしながらやってみてください。