dyson 教程

第一步先加DC 准备领水

https://discord.gg/uK8RsVsp

[https://dys.dysonvalidator.com/ ](https://dys.dysonvalidator.com/ 进入登录Keplr钱包添加DYSON 得到DYSON地址后去DC 领水) 进入登录Keplr钱包添加DYSON 得到DYSON地址后去DC 领水

post image
post image

点击这里进入操作页面

post image

输入以下代码 ,点击 SAVE 弹钱包授权

def my_function():
    print('hello world')
    return 123

先点击Query 再点击Run

post image

复制这个代码覆盖掉之前的代码,点击 SAVE 成功后页面如下

def say_hello(my_name: str):
    print('say hello')
    return 123
post image

再复制这个代码 覆盖之前的 点击 SAVE

之后上方添加一个名字 然后点击 RUN

def say_hello(my_name: str):
    print('hello '+ my_name)
    return 123
post image

https://dys.dysonvalidator.com/txbuilder 右上角连接钱包

下拉找到如图位置点击

post image

上划到如下界面

1.你的钱包地址

2.你的钱包地址/my_greeting

3.随意

4.force 打勾

post image

点击sign

post image

左侧下拉找到如图点击

post image

输入上一步的 2.你的钱包地址/my_greeting 点击RUN

post image

显示上一步所填写信息

post image

然后返回之前的代码页面 覆盖之前的代码,点击save,再点击run

from dys import _chain, SCRIPT_ADDRESS
def say_hello(my_name: str):
    data = "hello " + my_name
    print(data) # to help debug
    return _chain(
        "dyson/sendMsgCreateStorage",
        creator=SCRIPT_ADDRESS,
        index=SCRIPT_ADDRESS + "/my_greeting",
        data=data,
        force=True,
    )
post image

再返回另一个页面 也就是 dyson/QueryStorage. 点击RUN

post image

你会发现下面data 已经变成 hello + 你的名字

接下来进入下一步 返回代码页面

覆盖之前的代码 点击SAVE 然后点击 Query say_hello.

from dys import _chain, get_script_address
def say_hello(my_name: str):
    data = "hello " + my_name
    print(data) # to help debug
    return _chain(
        "dyson/sendMsgCreateStorage",
        creator=get_script_address(),
        index=get_script_address() + "/my_greeting",
        data=data,
        force=True,
    )
post image

再复制以下代码,覆盖之前的 点击SAVE

from dys import _chain, get_script_address, get_caller
def say_hello(my_name: str):
    assert get_script_address() == get_caller(), "permission denied"
    data = "hello " + my_name
    print(data)  # to help debug
    return _chain(
        "dyson/sendMsgCreateStorage",
        creator=get_script_address(),
        index=get_script_address() + "/my_greeting",
        data=data,
        force=True,
    )

复制以下代码 添加到上一个代码下面

def get_greeting():
    pass
    return _chain(
        "dyson/QueryStorage",
        index=get_script_address() + "/my_greeting",
    )
post image

正确的话 这里你会出现另一行功能

然后然后复制以下代码 继续添加到下方

def application(environ, start_response):
    start_response("200 ok", [("Content-type", "text/plain")])
    return ["Test WSGI website says: hello world"]
post image

点击 SAVE 点击 RUN

post image

将上面蓝色框里的代码 替换成这个,在save

def application(environ, start_response):
    start_response("200 ok", [("Content-type", "text/plain")])
    greeting_data = get_greeting()["result"]["storage"]["data"]
    return [greeting_data.encode()]

这时候 可以尝试打开 https://dys1jytzclx6sztvhs2emg0r2ry3fcjdk3aj2uz2v6.dysonvalidator.com/

前面替换成你的钱包地址

刷新这个页面,看到 hello + 你的名字 就算成功了

post image