We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pragma ton-solidity >= 0.57.3; pragma AbiHeader expire; pragma AbiHeader time; pragma AbiHeader pubkey; interface IContract { function foo() external responsible pure returns (string); } contract Example { function foo() external responsible pure returns (string) { return "foo42"; } // minimal DeBot string s_dabi; function setABI(string dabi) public { require(tvm.pubkey() == msg.pubkey(), 100); tvm.accept(); s_dabi = dabi; } function getDebotOptions() public view returns ( uint8 options, string debotAbi, string targetAbi, address targetAddr ) { debotAbi = s_dabi; targetAbi = ""; targetAddr = address(0); options = 1; } function onFoo(string data) public pure { tvm.log(format("onFoo: {}", data)); } function start() public pure { tvm.log("start"); IContract(address(this)).foo{ callback: onFoo }(); // FIXME IContract(address(this)).foo().await; tvm.log("end"); } function getDebotInfo() public functionID(0xDEB) view returns( string name, string version, string publisher, string caption, string author, address support, string hello, string language, string dabi, bytes icon ) { tvm.log("getDebotInfo"); name = "Example"; version = "1.0.0-alpha.0"; publisher = "Everscale"; caption = "My first DeBot"; author = "Everscale"; support = address.makeAddrStd(0, 0x0); hello = "Hello first user!"; language = "en"; dabi = s_dabi; icon = ""; } }
Run log:
19:31:10 [DEBUG] (1) ton_client::debot::dengine: running getRequiredInterfaces, addr 0:3aee4ccbf6411dc31e48c610ff78ce0e480e1f156d20c04ec88c690657dd0a45 19:31:10 [DEBUG] (1) ton_client::debot::dengine: running getDebotInfo, addr 0:3aee4ccbf6411dc31e48c610ff78ce0e480e1f156d20c04ec88c690657dd0a45 19:31:10 [INFO] getDebotInfo 19:31:10 [DEBUG] (1) ton_client::debot::dengine: run_debot_external getDebotOptions, args: {} 19:31:10 [DEBUG] (1) ton_client::debot::dengine: running getDebotOptions, addr 0:3aee4ccbf6411dc31e48c610ff78ce0e480e1f156d20c04ec88c690657dd0a45 19:31:10 [DEBUG] (1) ton_client::debot::dengine: run_debot_external fetch, args: {} 19:31:10 [DEBUG] (1) ton_client::debot::dengine: running fetch, addr 0:3aee4ccbf6411dc31e48c610ff78ce0e480e1f156d20c04ec88c690657dd0a45 19:31:10 [ERROR] Create run message failed: Invalid name: fetch 19:31:10 [DEBUG] (1) ton_client::debot::dengine: switching to 0 19:31:10 [DEBUG] (1) tonos_cli::debot::callbacks: switched to ctx 0 19:31:10 [DEBUG] (1) ton_client::debot::dengine: run_action: start 19:31:10 [DEBUG] (1) ton_client::debot::dengine: run_debot_external start, args: {} 19:31:10 [DEBUG] (1) ton_client::debot::dengine: running start, addr 0:3aee4ccbf6411dc31e48c610ff78ce0e480e1f156d20c04ec88c690657dd0a45 19:31:10 [INFO] start 19:31:10 [INFO] end 19:31:10 [DEBUG] (1) ton_client::debot::dengine: Invoke call 19:31:10 [DEBUG] (1) ton_client::debot::dengine: instant_switch = false, state_to = 0 19:31:10 [DEBUG] (1) ton_client::debot::dengine: Invoke call 19:31:10 [INFO] onFoo: foo42 19:31:10 [DEBUG] (1) tonos_cli::debot::callbacks: no more actions, exit loop
If use IContract(address(this)).foo().await; run log:
IContract(address(this)).foo().await;
19:38:12 [DEBUG] (1) ton_client::debot::dengine: running getRequiredInterfaces, addr 0:7aa981052eeb3022d5752567b593ed9bb260e926f5dc105f0daeb2646d73689a 19:38:12 [DEBUG] (1) ton_client::debot::dengine: running getDebotInfo, addr 0:7aa981052eeb3022d5752567b593ed9bb260e926f5dc105f0daeb2646d73689a 19:38:12 [INFO] getDebotInfo 19:38:12 [DEBUG] (1) ton_client::debot::dengine: run_debot_external getDebotOptions, args: {} 19:38:12 [DEBUG] (1) ton_client::debot::dengine: running getDebotOptions, addr 0:7aa981052eeb3022d5752567b593ed9bb260e926f5dc105f0daeb2646d73689a 19:38:12 [DEBUG] (1) ton_client::debot::dengine: run_debot_external fetch, args: {} 19:38:12 [DEBUG] (1) ton_client::debot::dengine: running fetch, addr 0:7aa981052eeb3022d5752567b593ed9bb260e926f5dc105f0daeb2646d73689a 19:38:12 [ERROR] Create run message failed: Invalid name: fetch 19:38:12 [DEBUG] (1) ton_client::debot::dengine: switching to 0 19:38:12 [DEBUG] (1) tonos_cli::debot::callbacks: switched to ctx 0 19:38:12 [DEBUG] (1) ton_client::debot::dengine: run_action: start 19:38:12 [DEBUG] (1) ton_client::debot::dengine: run_debot_external start, args: {} 19:38:12 [DEBUG] (1) ton_client::debot::dengine: running start, addr 0:7aa981052eeb3022d5752567b593ed9bb260e926f5dc105f0daeb2646d73689a 19:38:12 [INFO] start 19:38:12 [DEBUG] (1) ton_client::debot::dengine: Invoke call 19:38:12 [DEBUG] (1) ton_client::debot::dengine: instant_switch = false, state_to = 0 Error: Debot failed: Contract execution was terminated with error: Unknown error, exit code: 75. Tip: For more information about exit code check the contract source code or ask the contract developer Error: 1
The text was updated successfully, but these errors were encountered:
No branches or pull requests
Run log:
19:31:10 [DEBUG] (1) ton_client::debot::dengine: running getRequiredInterfaces, addr 0:3aee4ccbf6411dc31e48c610ff78ce0e480e1f156d20c04ec88c690657dd0a45 19:31:10 [DEBUG] (1) ton_client::debot::dengine: running getDebotInfo, addr 0:3aee4ccbf6411dc31e48c610ff78ce0e480e1f156d20c04ec88c690657dd0a45 19:31:10 [INFO] getDebotInfo 19:31:10 [DEBUG] (1) ton_client::debot::dengine: run_debot_external getDebotOptions, args: {} 19:31:10 [DEBUG] (1) ton_client::debot::dengine: running getDebotOptions, addr 0:3aee4ccbf6411dc31e48c610ff78ce0e480e1f156d20c04ec88c690657dd0a45 19:31:10 [DEBUG] (1) ton_client::debot::dengine: run_debot_external fetch, args: {} 19:31:10 [DEBUG] (1) ton_client::debot::dengine: running fetch, addr 0:3aee4ccbf6411dc31e48c610ff78ce0e480e1f156d20c04ec88c690657dd0a45 19:31:10 [ERROR] Create run message failed: Invalid name: fetch 19:31:10 [DEBUG] (1) ton_client::debot::dengine: switching to 0 19:31:10 [DEBUG] (1) tonos_cli::debot::callbacks: switched to ctx 0 19:31:10 [DEBUG] (1) ton_client::debot::dengine: run_action: start 19:31:10 [DEBUG] (1) ton_client::debot::dengine: run_debot_external start, args: {} 19:31:10 [DEBUG] (1) ton_client::debot::dengine: running start, addr 0:3aee4ccbf6411dc31e48c610ff78ce0e480e1f156d20c04ec88c690657dd0a45 19:31:10 [INFO] start 19:31:10 [INFO] end 19:31:10 [DEBUG] (1) ton_client::debot::dengine: Invoke call 19:31:10 [DEBUG] (1) ton_client::debot::dengine: instant_switch = false, state_to = 0 19:31:10 [DEBUG] (1) ton_client::debot::dengine: Invoke call 19:31:10 [INFO] onFoo: foo42 19:31:10 [DEBUG] (1) tonos_cli::debot::callbacks: no more actions, exit loop
If use
IContract(address(this)).foo().await;
run log:The text was updated successfully, but these errors were encountered: