6 June 2022
l
13:39
left
In reply to this message
So this in_msg_full is used to receive the delivered message?
NN
13:46
Nick Nekilov
In reply to this message
full contains an entire message (with all flags and other metadata), in_msg_body contains only message body (in this case. it starts with my_op_code()).
RK
22:40
Roman Krutovoy
👋 Hello to the developers of the TON ecosystem

I want to help make TON more accessible for newbies and more comfortable for those who have been around for a while.

At the moment, any information about TON is hard to find. Including developers problems.

💡 So I made a form with 10 questions. You can share your experience and challenges while working with the TON ecosystem.

🔥 BONUS - after you fill out the form you get access to a shared document where you can see problems & ideas from other community participants. So already did @andreypfau, the developer of IDEA plugin and TON kotlin SDK.

Share your experience:
👉 https://tonbuilders-research-en.paperform.co/
D
22:43
Doe ➀♾
Hello people, I have a question regarding malicious bots. In a while I will work with a team that requires an airdrop bot, I see that almost all airdrop bots have anti-bot systems, but I don't fully understand the situation because the telegram API specifies that bots cannot read messages from other bots.
So malicious bots are not telegram bots?

The question I am most interested in answering is the following:
If those aren't telegram bots, are they using real phone numbers to create bots that look like humans?
7 June 2022
W
00:49
White
Hi everyone. Can you help me? If i want to be Validator - what i need for?

Server - yes. But how much Toncoins i need?
l
04:17
left
In reply to this message
clear. thanks so much bro.
l
06:44
left
1. The document shows that get_data() represents the return of the persistent contract storage unit. What is this cell specifically?
2. Does load_msg_addr() return the address of slice ds? Why is it executed twice here?
d
06:54
doni
In reply to this message
FD
06:56
Full Stack Dev
How to store empty dict when deploy smart contract using toncli?
d
06:58
doni
In reply to this message
get_data()

is a getter that you can call offchain ( using tonweb for example )

load msg address is a function that reads 267 bits into slice ( which is an address )

the structure of the contract storage is

coins , address , address , ref to cell

thats why the contract have this structure ( i think your example is jetton code , which is

balance , owner, master-jetton , jetton data cell)
l
07:04
left
In reply to this message
ye. jetton-wallet.fc.
SF
07:53
Slava Fomin
In reply to this message
That is a different type of bots, they are called user-bots. And yes, they use real Telegram accounts.
W
08:42
White
How much ton coin I need to make node?
T
09:56
TON technical overview
In reply to this message
Generally correct, just a couple of little corrections:
Usually get_data() is not a get method, but alias for c4 PUSH (push contract storage on stack) declared in stdlib.fc. You can make get method wrapper for get_data(), but usually methods for retrieving data about account, for instance getAddressInformation already contain contract storage field.
load_msg_address does a little bit more than just reads 267 bits: it reads MsgAddress structure which in most cases indeed is presented by 267 bits (2 bit tag, 1 bit anycast, 8 bit workchain, 256 bit address part), but sometimes may be presented by other constructors like addr_none (2 zero bits), addr_var, addr_extern etc, see here. So load_msg_address automatically detects what the address type it sees and read exactly that.
W
10:52
White
In reply to this message
How much toncoin I need to become validator?
F
W
11:12
White
In reply to this message
Any info about count of toncoin
11:12
Only this:

Obtaining Toncoin to stake

Currently, the average validator stake is 600k Toncoin
11:13
But does it means that I need minimum 600k to become validator? Or I can be validator with 10005 Toncoin?
AS
11:20
Aleksandr Shepelev
In reply to this message
you can be validator with 10000 toncoin but other coins someone should give you via nominator contract, otherwise you will not be elected
ML
12:10
M L
Hey guys, is any document other than fiftbase.pdf to have a better understanding of cell manipulation and builder stuff?
A
12:38
Amin
In reply to this message
ES
17:07
Emran Sarwar
Hi, I have downloaded the TON windows wallet, but I cant find it after I close the window. Can you help pls to find this> thanks
17:09
Deleted Account
The Ton blockchain should have a large network project that would attract tens of millions (minimum, maximum - hundreds of millions) of users who previously had no experience with cryptocurrency. Currently, there is no such project. This is a fact.
I have developed a new generation social network project using blockchain. This social network will be different from modern ones. Social network + marketplace + gaming space + augmented reality (and virtual) technologies. The network can be created in six months with the first initial level of opportunities for users. The following feature additions will follow. The network will have its own token in the Ton network to attract investors to the project. The network will have the opportunity to invest tokens in different projects.
Currently, a team is being recruited (initial) + receiving investment at the pre seed level. I am waiting for suggestions from interested parties.
M
17:13
Maks
I'm also thinking of a large network project - a blockchain-based calculator.
A
20:29
A
having trouble with this line, any guides or docs for how to configure this?
20:30
1000100, 000010 means?
T
20:33
TON technical overview
In reply to this message
AT
23:12
Andrey Tvorozhkov
In reply to this message
https://gist.github.com/tvorogme/fdb174ac0740b6a52d1dbdf85f4ddc63

I've comment most fift lines from smc on ton for 15 minutes

It may be useful if you try to understand what is going on

Also you can use toncli to simplify deploy process
8 June 2022
l
06:26
left
06:27
06:28
I published the smart contract on the test network, why can't I get the 12345 returned by the contract through the web side? what should I do?
AT
06:57
Andrey Tvorozhkov
In reply to this message
I guess this testnet deployer is not using new testnet config. Can you share smart contract address here?
l
07:06
left
In reply to this message
kQAN7Sc-kseG5qcF1Dd9zBwKjCqinvewXnUpba70U0SiatLI
l
08:58
left
In reply to this message
who can help me please🙈
SF
09:12
Slava Fomin
In reply to this message
Are you sure you are using the same network?
ML
09:25
M L
Hey guys, still confused about the internal message execution. What to do with those hex values? Convert BOC to execute on activated contract?
l
09:44
left
In reply to this message
may be not . what should i do.
SF
09:57
Slava Fomin
In reply to this message
Try using the official testnet API:
https://testnet.toncenter.com/
l
10:15
left
In reply to this message
got it. thank u . bro🤗
SF
10:52
Slava Fomin
In reply to this message
You will also need an API key for this.
10:52
Otherwise the limits will be harsh.
l
10:54
left
In reply to this message
yep I have added it. If I want to transfer the contract money to the wallet, what should I do?
10:55
SF
11:15
Slava Fomin
That would depend on the contract. The wallet contract implementation in TonWeb has a transfer method.
l
11:26
left
In reply to this message
This is the code of the contract, there should be no transaction method?
SF
11:52
Slava Fomin
It's part of the receive external.
l
12:03
left
In reply to this message
ye i know.
12:03
In reply to this message
But I don't know how to pass parameters to it. Is there a demo of how to pass parameters to smart contracts from the web side?
12:04
And is there a demo of how to transfer money from the smart contract to the browser wallet plugin?
TD
12:06
Tonana DEV
Hi guys,
we start inviting projects at an early stage on our TON launchpad.

Please email me if you are looking for funding and incubation!
NN
12:10
Nick Nekilov
In reply to this message
But... you didn't share any e-mail addresses 🤔
SF
12:16
Slava Fomin
In reply to this message
You can look at the TonWeb transfer method implementation.
FD
15:01
Full Stack Dev
How to get dictionary from Cell in javascript? I'm using tonweb
NN
15:15
Nick Nekilov
In reply to this message
As far as I know, tonweb doesn't provide this functionality.
FD
15:15
Full Stack Dev
In reply to this message
Are there any others?
A
15:20
Alexander
In reply to this message
Asked pretty much the same question in Russian chat today and was advised to use to 3 library (you can find it on github)
Although I'm having some troubles launching it: basic example from the main page is not working and I'm trying to figure out why
NN
15:23
Nick Nekilov
In reply to this message
“ton” and “ton3” has some support of dictionaries
N
17:29
Noël
in ton library how do I create a keypair directly without any mnemonic
D
17:35
Dario
A private key is just some random bytes
SF
17:35
Slava Fomin
In reply to this message
import nacl from 'tweetnacl';

const keyPair = nacl.sign.keyPair.fromSeed(
Uint8Array.from('12345678912345678912345678912345')
);
17:36
In reply to this message
You mean the seed.
N
17:39
Noël
In reply to this message
I want it for WalletV3R2Source.create
Яд
17:41
Язон дин Альт
In reply to this message
Yep, that's ok
17:42
for any contract
17:42
don't forget to save it ;)
D
17:45
Dario
In reply to this message
No, the private key for the ecdsa keypair
N
17:45
Noël
In reply to this message
I tried now ton-crypto
const key = await keyPairFromSeed (await getSecureRandomBytes() )
17:45
What is the number of random bytes needed?
Яд
17:47
Язон дин Альт
In reply to this message
Why using module with 400 downloads? tonweb contains nacl in utils.
17:47
In reply to this message
const nacl = TonWeb.utils.nacl; // use nacl library for key pairs
const keyPair = nacl.sign.keyPair(); // create new random key pair
N
17:49
Noël
In reply to this message
I use the ton lib not tonweb so I thought I'd go with ton-crypto
Яд
17:50
Язон дин Альт
In reply to this message
https://www.npmjs.com/package/tweetnacl has 20 million downloads. I trust it more =)
N
17:52
Noël
I'd love it if ton had packed something like nacl as utils
ML
20:36
M L
Hey guys, still confused about internal messages, what do I do with hex values?
AT
20:37
Andrey Tvorozhkov
In reply to this message
^
20:37
In reply to this message
Have you checked out this guide?
ML
21:20
M L
In reply to this message
Hey Andrey, thank you for the guide, but it doesn't say what to do with hex values or internal messages. Am I misunderstanding?
AT
21:23
Andrey Tvorozhkov
In reply to this message
In this guide fift file generates external message with initialization of smart contract, then cell tree is dumps into boc wich is sending via liteclient to blockchain.
ML
21:24
M L
Yeah, this is what I saw all about external message initialization
AT
21:24
Andrey Tvorozhkov
In reply to this message
So maybe I miss-understand question?
21:25
In reply to this message
What are you trying to do? Internal messages are created by smartcontract to smartcontract
T
21:28
TON technical overview
The question is about what to do with generated boc's, if I understand correctly. Those files should be sent to LiteServer, than LS will spread them across the network, external messages will reach validators, will be included into the blocks and initiate transactions.
ML
21:31
M L
I'm trying to understand how to execute internal messages between each smart contract, but it seems different from external messages.
ML
21:53
M L
How to execute the recv_internal function? This is all I want to know.
T
21:54
TON technical overview
In reply to this message
locally, for testing?
AT
21:55
Andrey Tvorozhkov
In reply to this message
Recv_internal is executing when smart contract get internal message from another smart contract
21:56
You can check out https://ton.org/docs/

Guess TVM section will be interesting for you. But other sections also good enough
ML
21:58
M L
In reply to this message
For testing and production purposes both.
21:58
In reply to this message
Thank you for the doc, truly appreciate it.
AT
21:59
Andrey Tvorozhkov
In reply to this message
For local testing there's 3 ways:

1. Toncli tests
2. Js smart contact executer
3. Directly from fift (runvmx)
t
23:18
talkol
In reply to this message
I highly recommend using executor for tests, it’s the most convenient way I found
23:19
23:20
And you can see a much more complex example with multiple contracts routing multiple messages here:

https://github.com/tonswap/tonswap-contracts/blob/master/test/amm-minter.spec.ts
9 June 2022
l
07:08
left
l
09:25
left
🥸
TD
09:39
Tonana DEV
In reply to this message
tonana dev:
hi guys,
we start inviting projects at an early stage on our ton launchpad.

please email me if you are looking for funding and incubation:

artem@blockczech.io
l
09:46
left
Can the TON blockchain use TRC20?
09:46
or Jettons?
SF
12:10
Slava Fomin
In reply to this message
Not directly right now. Only if you wrap them.
12:11
In reply to this message
First of all, I would highly advise not to publish API keys and private keys in the chat.
l
12:14
left
I now want to withdraw money from the smart contract through front-end operations. That is to extract the toncoin in the smart contract to my testnet wallet. However, I didn't succeed. I don't know what to do, can you tell me?
SF
12:14
Slava Fomin
Second of all there are a lot of details when transferring the funds. I've noticed that you are not setting seqno to zero when it's missing.
l
12:14
left
In reply to this message
thank u 😅
12:16
I also tried this way, but it doesn't seem to work either.
SF
12:16
Slava Fomin
Then, if you are sending TON to the uninitialized account you need to format address with the bounce flag cleared.
l
12:17
left
In reply to this message
Currently they are both active. I released the wallet smart contract on the testnet, and now I want to transfer the toncoin in the contract to my testnet wallet.
12:48
Deleted Account
Hello, I am making a bot that sends Ton coins, what is the commission for transferring 1 ton?
V
12:54
Victor
In reply to this message
You can open tonscan and find the fee under each transaction.
12:57
Deleted Account
In reply to this message
12:57
In reply to this message
I did just that, found 2 transactions and calculated the commission, here is the result
V
13:00
Victor
In reply to this message
This does not depend on the amount of the transfer.
13:01
Deleted Account
In reply to this message
I already figured out)
13:01
That's why I'm asking
e?
16:12
ehsan 💎
Guys if I have the secretkey of my wallet, is it possible to import it into any of the wallet front-ends for android or desktop?


Just a theoretical question 😅
16:13
Like when you can import an Ethereum wallet using private key and you wouldn't need the mnemonic or anything
16:13
Is there an equivalent for TON?
Яд
16:22
Язон дин Альт
In reply to this message
None of tonwallets I used alowed to import key, only seedphrase. The only way to use key that i see is using API/SDK like tonweb
FK
17:19
Freezen KDA
Transferring Ton to my Metamask wallet today and look at the fees ! What's going on???
e?
17:20
ehsan 💎
In reply to this message
We just see the total. How much is the fee?

Btw gas is super super expensive today. Last time I checked etherscan it was 205 Gwei which is unprecedented
FK
17:21
Freezen KDA
Gas Fees
e?
17:22
ehsan 💎
In reply to this message
Wow. Are you sure it is a simple transfer bruh?
FK
17:24
Freezen KDA
Not sure what's going on, last xfer 90 days ago was only 39.25 gwei
10 June 2022
FK
00:55
Freezen KDA
0x2a0aeb4b48d7c6214ec666a4c91c688199f61568a19cae93443ed82d35286e2c failed transaction . Any idea where the 856 TON went too?
l
04:52
left
In reply to this message
what should i do😢
e?
06:59
ehsan 💎
In reply to this message
it should come back to your TON wallet
07:00
In reply to this message
i recommend you to take a break from this rn.
docs and resources on func are non-existent so it is only for advanced users
e?
07:29
ehsan 💎
In reply to this message
Saw the error. There must be a problem with the bridge contract.

Try bridging it on the BSC network
d
08:57
deno
What is the way for a validator to get token delegation from nominators?
c
11:29
cryptopunk4201
hello hood!
have a problem while connecting to ton provider, does somebody have same issue?
l
11:32
left
In reply to this message
Can you take a screenshot of the code?
c
12:19
cryptopunk4201
In reply to this message
here it is
NN
12:21
Nick Nekilov
In reply to this message
1. Do you have an installed TON Wallet extension?
2. Do you have an installed EVER Wallet extension?
c
12:21
cryptopunk4201
In reply to this message
1. yes
2. yes
D
12:21
Dario
In reply to this message
remove the ever wallet
NN
12:22
Nick Nekilov
Disable the second one and it'll work
c
12:23
cryptopunk4201
In reply to this message
yep it works! thanks ^^
12:33
could somebody explain what should I use building TON dapp? There's alot of projects named "ton-project" built on everscale and their cli-tools are also the same, but using TON network Everscale uses EVR and same tools but with Rust??? it's crashing my mind. Also TON docs have bad links routing and I can't find up to date information about . How do young programmers solve their problem in this chaos?
NN
12:37
Nick Nekilov
In reply to this message
Here you can check how Scaleton works with wallets: https://github.com/scaleton-co/scaleton/tree/main/src/modules/wallets
S
13:23
Serj
guys, how to create ton account through rest api?
13:25
Is it possible?
Яд
13:37
Язон дин Альт
In reply to this message
yes! I use tonweb in nodejs. You can generate keys, deploy contract and make calls to it
M
13:58
Maksim
Hello everyone, I have a dumb question right off the bat, how do I add payment in TON for users to my bot? so that without unnecessary actions they can pay with a coin
m
16:38
masjalang
thanks sir😁
PH
20:05
Peter Higgs
Hi, I'm new in TON
SF
20:13
Slava Fomin
In reply to this message
Hey, check these examples:
https://github.com/toncenter/examples
SM
21:15
Saeid Mirsalari
hi
11 June 2022
e?
09:02
ehsan 💎
In reply to this message
Is it possible to hard fork TON network?
09:04
Is the code open-source?
AP
09:07
Andrew Python
In reply to this message
SK
09:20
Shawn Kovac
In reply to this message
since it is all open source, i'd expect that a fork could be done. but why wud anyone want to harm both cryptos by forking TON? if a team wants a hard fork, why not just make a new completely standalone crypto from TON? what is the advantage of a fork? have you considered the many disadvantages of a hard fork?
l
11:32
left
I want to deploy this boc file, where am I going wrong?
AP
11:32
Andrey Pfau
can't open for reading
11:33
are you sure that file not used for other processes?
T
11:37
TON technical overview
In reply to this message
You can check k8s scripts for running private (or public) network for testing and other purposes.
l
11:40
left
In reply to this message
may be not . i am not sure
11:42
In reply to this message
This is the code I downloaded from github, I want to learn how to deploy the contract, that is, send the boc file to the ton blockchain. Then I executed this line of command
11:43
Should I modify the code and then deploy the boc file?
AP
11:43
Andrey Pfau
are you sure for file jtton-wallet.boc exists?
l
11:45
left
In reply to this message
may be sure. I execute this command to execute the command statement of the compile.sh file.
AP
11:46
Andrey Pfau
In reply to this message
check file name
11:47
you missed e letter
l
11:48
left
In reply to this message
omg 😢 thanks 😂
11:49
In reply to this message
It still looks like the boc file was not deployed successfully.
AP
11:51
Andrey Pfau
something wrong with external message in boc
l
11:53
left
In reply to this message
But the whole code does not contain recv_external()
11:54
Deleted Account
In reply to this message
Making a new one which supports solidity would be good 🤔
l
12:07
left
In reply to this message
could u tell me how to handle this error? please
AP
12:09
Andrey Pfau
In reply to this message
12:13
Deleted Account
In reply to this message
It's not still on top exchanges. ):
AP
12:16
Andrey Pfau
In reply to this message
okx, ftx, bit.com, exmo, gate.io, mexc is not top exchanges?
12:44
Deleted Account
In reply to this message
Oh yes you're right

Actually top exchange is a little different in my country(because of sanctions) kucoin for example we use.

Thanks!
e?
12:53
ehsan 💎
In reply to this message
The biggest problem rn is non-existent docs specially in English 😐

It makes building on TON hard for people all around the globe

Therefore most products are developed by few developers which could be prone to bugs

Not much developement activity.

Mostly marketing on Tg channels
12:56
TON is pretty centralized imho.

Not gonna progress much unless it expands globally
k
13:00
krtal
In reply to this message
Hi, why you think so? Did you analyze devs results? https://github.com/ton-blockchain/ton/commits/master
AP
13:02
Andrey Pfau
In reply to this message
Our open-source community already has quite a lot of developers and, moreover, repositories. I’ll give you a small list:

https://github.com/newton-blockchain — Core GitHub, where the open-source community started working on core components.

https://github.com/ton-blockchain — The original TON GitHub of Telegram’s team, which was transferred to the community in an answer to an open letter. The project is in the process of migrating to this GitHub. So, part of the repositories has already been moved.

https://github.com/igroman787/mytonctrl — Software for validators.

https://github.com/toncenter — Web wallets and the corresponding software.

https://github.com/tontechio/ — Software for miners.

And many others.

Open-source projects almost always comprise more than a single repository, which speaks for itself. This is the work of a lot of people where every single person does something fascinating for the project.

The NewTON blockchain contains the operational version of TON’s node. When we encounter a potential bug, vulnerability, or the opportunity to add something, we do it — which can be seen in the history of the commits.

What did your colleagues want to see in code from launched and operational node software? The node’s code is really stable and safe; we don’t need to fix errors and bugs every single day or rewrite the code from scratch.

The development of new apps and components for the network is ongoing in separate branches, which are often private. This is also a totally regular practice. Usually, a tested and safe product, more or less, is launched in public.
e?
13:07
ehsan 💎
In reply to this message
When is the DEX coming out finally?
D
13:08
Dario
In reply to this message
soon™
P
13:09
Purple
In reply to this message
dex.biton.app - testnet dex
AP
13:09
Andrey Pfau
In reply to this message
PancakeSwap, Uniswap, 1inch, Dodo and many p2p exchanges not enough?
e?
13:11
ehsan 💎
In reply to this message
I meant on TON network
13:12
I understand that TON is at the beginning so we should be patient
AP
13:12
Andrey Pfau
the third-party teams that are not related to the ton foundation are engaged in the development of dex. TON Foundation specializes in the development of the blockchain platform, and projects on the blockchain are already being done by end users
13:13
In reply to this message
checkout this
e?
13:16
ehsan 💎
In reply to this message
hope to see it on mainnet soon 👍🏻
o
13:27
oxlti.qube
In reply to this message
KuCoin and Huobi invested a lot of money in TON few months ago, so I think they will list Toncoin on their exchanges soon
F
13:48
F
In reply to this message
It should be clarified that their venture divisions have not invested in TON, but in other projects based on TON. Without this clarification, third-party readers may be led to incorrect thoughts.

And also the discussion of this topic goes beyond the scope of this chat and is offtopic.
o
14:45
oxlti.qube
In reply to this message
It also means that they are interested in TON ecosystem.
SF
16:23
Slava Fomin
In reply to this message
You should've credited the author :)
16:51
In reply to this message
Is there a reason you had to split one message into a flood? Please don’t do it. Think before hitting send, or use EDIT on previously sent messages!
ML
20:15
M L
Hey guys, where can I download the latest FunC?
A
20:27
A
are there any existing and functioning TON tokens?
NN
20:28
Nick Nekilov
In reply to this message
It depends on what you are looking for.
A
20:29
A
I just wanted to see some examples of existing and functional TON tokens
12 June 2022
TD
03:31
Tonana DEV
Hi let's go community-run hackathon HackaTON @hackaton2022 uuuuu early participants chat here 💎
A
04:32
A
So I deployed a smart contract on testnet and updated the metadata, does anyone know how long it takes for updates to show up on block explorer?
13 June 2022
l
04:42
left
Why can't I get the contract address? How should I get it?
BA
13:11
Bobby Atond
how can i make sure transaction in which block ?😂
SK
14:33
Shawn Kovac
new developers is not the thing that TON needs the most.
actually i think a bigger community can be a hindrance
when the leadership is not ready for the growth.
14:43
I think TON's biggest struggle is project leaders connecting with the audience, and learning what the audience needs. this is severely lacking in the TON project. 😢 But developers are very important too. 🙂
15:55
Deleted Account
Why did you delete the message😕
I was reading it
SF
15:59
Slava Fomin
In reply to this message
^
T
17:14
TonVangogh
Did anyone know how to code Ton on android ?
17:14
Android decentralize projects on ton
SF
19:27
Slava Fomin
In reply to this message
I believe you can use both Java and more common Web technologies to create apps for Android. TON supports both, and the web stack has probably the best TON support.
14 June 2022
l
06:33
left
hi all. I deployed a smart contract and need to interact with the front end, do I have to use a secretKey to interact with the smart contract? How do I get the secretKey for the smart contract?
06:45
d
06:46
doni
usually when you want to interact with a contract using a webpage for example

the webpage it self should connect to a wallet app / chrome extention

after the wallet is connected, the page has the wallet address , and it can use it for querying data about that wallet for example

show user ton balance , users nfts or user jettons …

in case we want the user to send a signed transaction to our contract , we use the create a transaction object and pass it to the wallet app ( the secretkey is handled by the wallet app in all cases and its never exposed to the web page )

popular wallet apps
ton chrome extension
tonhub ( mobile wallet )
06:46
In reply to this message
⬆️
l
06:49
left
In reply to this message
hi . bro. can i send u a PM?
n
10:25
null
Is there any graph for coin emission from PoW?
l
12:09
left
Is this an error in front-end parameter passing?
12:10
12:10
T
12:12
TON technical overview
In reply to this message
It looks like wallet seqno mismatched
12:13
In reply to this message
It is an error returned by LS
l
12:14
left
whats the LS
T
12:16
TON technical overview
In reply to this message
Lite server: server which answers to liteclients (toncenter itself is lite-client)
l
12:16
left
In reply to this message
Why does seqno not match?
T
12:18
TON technical overview
Oh, sorry,my bad, exit code 34 (you got in error) is subwallet_id mismatch: you can find it in code you sent by looking for throw_unless(34
D
12:20
Dario
In reply to this message
You must call the "get" get_seqno method before sending any transaction
l
12:23
left
In reply to this message
Yes, I have done that.
12:24
In reply to this message
I agree.So how do I make sure the wallet id entered is correct?
D
12:24
Dario
In reply to this message
Make sure it doesn't fail, print that value
l
12:25
left
In reply to this message
ye
T
12:44
TON technical overview
In reply to this message
You may get wallet id from https://testnet.toncenter.com/api/v2/#/accounts/get_wallet_information_getWalletInformation_get
But most probably you are using default one for basechain: 698983191
T
13:05
TON technical overview
Check wallet_id from getWalletInformation
l
13:06
left
In reply to this message
Enter the address of the wallet smart contract?
13:16
In reply to this message
Which one is the wallet_id?
T
13:21
TON technical overview
In reply to this message
Looks like it wails to recognise the wallet on this address. Which version of wallet do you use?
l
13:22
left
In reply to this message
v3r2
T
13:23
TON technical overview
In reply to this message
But wallet on address is not? Can you post address here? I will chech in an hour
l
13:24
left
In reply to this message
Raw address: 0:731a38fd1a79a858923c4e260f54cb37361409666ae73d9d1b2f1675b22a329e

Non-bounceable address: 0QBzGjj9GnmoWJI8TiYPVMs3NhQJZmrnPZ0bLxZ1sioyngtc

Bounceable address: kQBzGjj9GnmoWJI8TiYPVMs3NhQJZmrnPZ0bLxZ1sioynlaZ
13:24
I don't know which address you need.
13:25
EQBzGjj9GnmoWJI8TiYPVMs3NhQJZmrnPZ0bLxZ1sioynu0T
13:25
This is the address generated when the front-end creates the wallet. I don't understand what this has to do with the address of the smart contract, is it a mapping of the address of the smart contract?
T
22:07
TON technical overview
In reply to this message
Looks like indeed subwallet_id = 0, however the code of this wallet does not coincide with any used in tonweb, do you use your own wallet code? That is why getWalletInformation can not recognize wallet and extract subwallet_id. Why there is a problem with matching subwallet_id in storage and in message not that obvious, perhaps you need to check wallet code which you are using.
15 June 2022
l
04:52
left
In reply to this message
Do you mean my smart contract code is wrong? I am using the official wallet smart contract demo.
T
07:33
TON technical overview
In reply to this message
So you compiled it from scratch? Well usually wallets use optimised version of this wallet (optimised on func level). Still your version should work.
07:36
In reply to this message
According to this document, I go to deploy the smart contract
07:37
Now I encounter the problem that this withdrawal operation fails to execute. I don't know how to deal with it
T
07:37
TON technical overview
In reply to this message
What was wring with subwallet id?
07:38
In reply to this message
Most probably you're sending too much (note, you need money for fee)
l
07:39
left
In reply to this message
I have no idea. I set walletId=0 on the front end
07:39
In reply to this message
There are enough toncoins in the smart contract to pay for free
07:40
07:40
I just want to withdraw 2TON COIN
SF
15:59
Slava Fomin
In reply to this message
Please show the code with your transfer call.
AB
23:16
Ahimbisibwe Brian
@slavafomin sent u Dm
16 June 2022
l
08:55
left
When I deploy this smart contract, will a key pair be generated? Can I get private and public keys?
08:57
In reply to this message
n
09:04
nocriz
09:05
Hi, I'm trying to build on my apple silicon mac, but has reached this problem. Does anyone know how to solve this?
09:05
I was following this guid https://ton.org/docs/#/compile
09:17
09:18
I've built a new libcrypto.dylib file to replace the old one, but I'm encountering another issue now
T
09:29
TON technical overview
In reply to this message
Most probably you need openssl installed. It can be interesting to check Dockerfile which builds node and all staff.
n
10:32
nocriz
Done
10:32
thanks
n
11:13
nocriz
11:13
Hi, I'm testing out fift
11:13
There is an error:
[ 1][t 0][2022-06-16 08:11:49.457012][fift-main.cpp:204] Error interpreting file `output.fif`: output.fif:2: DECLPROC:-?
11:14
But the fif file is generated from func, so I don't really understand what's wrong
AT
11:14
Andrey Tvorozhkov
In reply to this message
You need to add include Asm.fif
T
11:14
TON technical overview
In reply to this message
Generate fif from func with -SPA flags: they will add needed libs and wrappers
AT
11:14
Andrey Tvorozhkov
In reply to this message
In func there is such flag
n
11:14
nocriz
OK
11:15
It works now
12:09
Deleted Account
image_2022-06-16_11-58-23.png
Not included, change data exporting settings to download.
18.5 KB
Hi everyone. Is this a correct structure for a NFT metadata ?
s
17:40
shahar
Announcing Jetton Deployer: we've created a webapp which allows anyone to create their own jetton.

Everything is open source - feel free to test it out and provide feedback, PRs or open issues!

https://ton-defi-org.github.io/jetton-deployer-webclient
17:42
hello, sure
L
19:20
Lisa
Hack-a-TON

The first-ever Hack-a-TON, with a total prize fund of 40,000 TON!

The brainstorming is about to begin 😉 All you need to participate is JavaScript and fresh ideas. The TON team will provide all the participants with an SDK and ready-made smart contracts. Get ready to gather a group of 4 people (or fewer).

It kicks off on Friday, July 1! The hack-a-TON will run for 48 hours. We will provide you with all the details later.
17 June 2022
A
01:23
Aria&&
Does anyone have a link to funC tutorial? I couldn’t find anything on YouTube
t
01:25
tmandálo
In reply to this message
official documentation
SK
01:45
Shawn Kovac
In reply to this message
will you do any such thing that does not disadvantage popular particular people groups who have religious rest days on friday or saturday or sunday?
01:47
In reply to this message
muslim rest days of no work is friday.
messianic & jewish rest days of no work is saturday.
christian rest days when some christians don't work is sunday. starting friday and going for 48 hours is about the best time to exclude all three of these popular people groups.
01:47
In reply to this message
just a thought. 🤷‍♂
A
01:48
Aria&&
In reply to this message
Muslims don’t have a rest day😐
01:49
It’s just a 30 minute prayer at the mosque no big deal
SK
01:50
Shawn Kovac
In reply to this message
okay, thanks for the correction. 👍 My mistake. i appreciate the correction.
01:50
In reply to this message
okay. 👍
01:51
In reply to this message
i'm still learning more about my Muslim friends' customs.
A
01:51
Aria&&
In reply to this message
But I agree, devs who do Shabbat are gonna miss out on this hackathon😕
SK
01:51
Shawn Kovac
In reply to this message
yep 🤷‍♂
A
01:51
Aria&&
In reply to this message
Kinda miscalculation from TON’s team part…
SK
01:52
Shawn Kovac
oh, miscalculations are a normal part of life. one isn't a big deal. but time after time is harmful to any project, in my opinion.
A
01:52
Aria&&
In reply to this message
July first is also Canada 🇨🇦 day lmao😂
SK
01:54
Shawn Kovac
In reply to this message
hehe. and July 4th is US Independence day. there will always be conflicts with something. i just hope that me mentioning it will help the leaders who decide the timing to vary it up so a variety of people can participate. that's all. 👍
A
02:01
Aria&&
Document page is down
02:01
It keeps responding with 404
AS
02:36
A S
Any chance for update on nominator pool smart contract? Current one is a bit raw with 40 nominators with 10k stake each which really is not going to work on mass market and OBVIOUSLY can’t compete with tonwhales staking. Any upcoming developments on this??
CM
05:41
Chathusha Mendis
How much it will cost to create a token in TON?
d
05:44
doni
In reply to this message
cents
05:45
In reply to this message
you can use this tool ⬆️
AV
09:45
Alex V
Hi everyone! I have been trying to understand how Fift interpreter and compiler work since yesterday.

I don't understand how active words work.

Doc says "New active words are defined similarly to new ordinary words, but using “::”
instead of “:”. For instance, { bl word 1 ’ type } :: say"

1 2 say hello + .
will print “hello3 ok”, while

Could anyone tell me how it works step by step?

I understand it like the folllowing:
Interpreter push 1 2 to the stack, after that it finds "say" word, it's active and state = 0, then it executes immediately -> "1" Object{0x60000324dcc0}. The stack stores 1 2 "1" Object{0x60000324dcc0}. Next "hello" and I expect that it throws an exception, but it doesn't happen, it adds 1 to 2 instead. And before Addition it adds "hello" and removes "1".

How does it work? Help me please
l
10:44
left
In reply to this message
hello sir. I tried to use your work in this work, and the payment was successful. Where can I inquire about the jetton I published?
s
11:13
shahar
In reply to this message
The site should show you the jetton wallet address once deploy is successful.
l
11:15
left
In reply to this message
where
s
11:20
shahar
At the bottom, below the deploy button. If you enter the exact same details and the contract is already deployed, it will just retrieve them and should not ask for another transaction
l
11:20
left
In reply to this message
nothing
AP
11:21
Andrey Pfau
I
IntelliJ TON Development 17.06.2022 11:18:35
Release 1.0.2 now on JetBrains Marketplace

What's new?
* Support FunC Update 2022.05
* Auto-formatting in FunC
* Support UTF-8 names in FunC functions
* Auto-completion for inbuilt FunC statements
* Auto-completion for all FunC functions in project scope
* Documentation in FunC stdlib.fc
* Language injection support (FunC, Fift, TL-B) for string literals in regular programming languages
* New template for FunC files creation

Also now IntelliJ TON transferred to ton-blockchain GitHub!
s
11:21
shahar
In reply to this message
Is it running locally, I see the form is a bit different
l
11:21
left
In reply to this message
I can't send you a PM, can you set it up?
s
11:21
shahar
In reply to this message
Yes
l
11:21
left
In reply to this message
yes
l
12:30
left
What are the addresses of these three? What's the difference?
СВ
13:06
Сергей В
In reply to this message
A
14:16
Aria&&
In reply to this message
It’s fixed! Thanks
14:19
In reply to this message
But now it refreshes every 5 second😂 check the commits before merging
AS
15:04
A S
@slavafomin Any upcoming updates on ton nominators contract?
SF
15:15
Slava Fomin
In reply to this message
I don't really follow the developments in this field.
AP
15:16
Andrey Pfau
T
The Open Network 17.06.2022 15:13:23
Video file
Not included, change data exporting settings to download.
00:23, 15.0 MB
IntelliJ IDEA Plugin for FunC language gets major update

With the new update, the plugin has overtaken the Solidity plugin in terms of functionality and convenience:

— Syntax highlighting;

— Code completion;

— File templates;

— Goto declaration;

— Code formatting;

— Support not only FunC but also Fift and TL-B;

— Support for the latest FunC language updates;

The source code is open. We thank the author andreypfau for the excellent work.

Install FunC Plugin from IntelliJ catalog »

Happy coding ❤️
SF
15:21
Slava Fomin
In reply to this message
I don't see any critical issues from the first sight. However, your code is pretty bloated and hard to read, I would suggest to isolate your problematic code to a minimal possible example.
t
15:22
talkol
We’ve done a little more work on the community Jetton Deployer - it now has its own fancy domain:

https://jetton.live

This tool will allow you to deploy a new Jetton in one click. It is fully open source, so you can be certain exactly what code is being deployed. Even the HTML form in the website is open source and served from GitHub pages.

All code and documentation are available in its repo: https://github.com/ton-defi-org/jetton-deployer-contracts

If you want to improve it, please contribute in GitHub!
l
15:23
left
In reply to this message
yep, I have already dealt with it.
15:24
I deployed a smart contract on the testnet, and then I want to interact with the smart contract through tonweb, such as transferring money, withdrawing money, passing data, etc.
15:26
But I didn't succeed, I tried all kinds of methods, but still no success。
15:43
In reply to this message
Thank you @andreypfau and all others working for the benefit of TON to benefit humanity! It’s really appreciated 💚👏🙏
l
15:45
left
In reply to this message
Thank you @andreypfau and all others working for the benefit of TON to benefit humanity! It’s really appreciated
o
15:48
oxlti.qube
@andreypfau dm me pls
AP
16:00
Andrey Pfau
In reply to this message
nope
DS
16:00
Dmitry Shanin
In reply to this message
Admins of chat are marked in the list of members in chat info
l
16:03
left
In reply to this message
Is there any front-end case of using TonWeb to interact with smart contracts, such as transferring money, withdrawing money, and sending data to smart contracts?
AP
16:06
Andrey Pfau
In reply to this message
l
16:08
left
In reply to this message
I tried it. But without success. I have completed a demo and implemented a simulated transfer through the wallet created by TonWeb, but it did not interact with the smart contract I deployed. This is not what I want, what I want to achieve is to interact with this smart contract I deployed..
https://github.com/IcarusRyy/tonTransferDemo/blob/main/pages/index.tsx
TD
16:33
Tonana DEV
Hello friends,

if you are looking for a ready-made blockchain team for EVM, Solana, Near, TON with rich DeFi and Metaverse experience,
you can easily contact me!
~
21:29
~ Marc ~
Hi devs! Does anybody knows if there is any way to help the community with some developments?
18 June 2022
RK
00:27
Ruslan Kotov
Hi everyone, I’m looking for tutorial for beginners about developing smart contracts in TON, are there any?
SF
00:40
Slava Fomin
In reply to this message
Hey! Your best luck is with the official documentation.
RK
00:42
Ruslan Kotov
In reply to this message
Unfortunately I didn’t find anything close to something like Hello World smart contract in Func there
.
08:09
.
Maybe anyone can tell me how to install TON Apps on Linux because the downloaded zip file from official site contains a binary file that needs somehow to be installed in Linux as a program, and there is no sane installation instruction for this. On official site there is 2 comments about the same issue from users, so this question has already been raised 4 months ago and till now there's no possibility to find answers to it also through google, so please help
Y
10:45
Yashar
I am trying to make a build of the tonlib to use in Android. The Android wallet sample app's JNIs do not build. Like the CMAKE mentions some files that do not exist. Anyone has done it? Can you help me?
10:47
The other repository https://github.com/ton-blockchain/tonlib-java have instructions to build for linux, windows and mac but not for Android!!!! I made a lot of tweaks and cheats to get a successful build but I am not sure if the final result actually works
SF
11:35
Slava Fomin
In reply to this message
What app are you trying to install?
D
11:50
Dario
In reply to this message
$ chmod +x ./Wallet
$ ./Wallet
.
11:52
.
Ok, thanks
11:52
In reply to this message
Ok, thanks
f
16:17
fraffo
hello! I'm trying to activate a wallet v1 on the testnet using fift and the lite client,
I succesfully managed to send coins, but when i try to init with:

lite-client -C testnet-ton.json -c "sendfile wallet-test-receiver0-query.boc"
I get

Cannot run message on account: inbound external message rejected by account 4414958B2795F2543FE6BFA9523A61F588BEAC00043DE6D5E48235750A8FEDA7 before smart-contract execution]

https://testnet.tonscan.org/address/EQBEFJWLJ5XyVD_mv6lSOmH1iL6sAAQ95tXkgjV1Co_tp8pr

That wasn't a thing two months ago. I stopped developing in TON for a while, now that i started again I'm facing this problem, what could it be?
19 June 2022
CM
04:04
Chathusha Mendis
Hey! I'm created a jetton with jetton.live tool and it is showing on the tonscan.
https://tonscan.org/jetton/EQCFsEh9N_S4WgSbw4t7Qmw4Qh9ayaqvvf_L2b3Lev-nhtVw
But it's not showing the metadata. I found a jetton with metadata on tonscan.
https://tonscan.org/jetton/EQBlU_tKISgpepeMFT9t3xTDeiVmo25dW_4vUOl6jId_BNIj
How to add my metadata to database?
A
05:01
A
Hi quick question
05:01
What’s the requirements for a wallet to be ‘active’?
05:01
I noticed that upon creation wallets are not active
s
06:25
shahar
In reply to this message
This is because metadata of jettons created by jetton.live is stored onchain and scanners expect it to be stored offchain. We will try and work with them to add onchain support, which is important.

Offchain data can be altered and then the name and ticker of the jetton can be compromised, which is why we decided not to support offchain.
SF
06:53
Slava Fomin
In reply to this message
The contract must be deployed first, and you should have some TON on the account for this.
A
06:57
A
In reply to this message
So TON balance is required to activate a wallet?
06:57
Is there a minimum amount?
SF
06:59
Slava Fomin
Yes. TON coins are used to pay for various fees, including the storage fee for your contract code and state in the Blockchain.
06:59
The longer you are planning to keep the contract active the more TON you will need.
07:00
Otherwise it will become frozen and you will need to redeploy it again.
07:01
However, in terms of monetary value, the fees are very small.
07:36
In reply to this message
The wallet (smart contract) only becomes “active” when any tiny amount of coin are first sent Out. It can have a mega ton received and it’s not active. As soon as 1 gram is sent it’s active.
07:39
In reply to this message
So if I make a wallet with insufficient funds for Fees x years later it’s frozen it’ll unfreeze if it’s “in credit” again? It that what redeploy means?
A
07:50
A
In reply to this message
I’m not sure about exact numbers but after receiving 1 TON and sending 0.1 TON, I was able to activate wallet
t
10:44
talkol
Security precaution! Never use a Jetton where the token metadata is stored off-chain on somebody’s website.

Many Jettons make this security mistake, for example: https://kotecoin.com/kote.json

We must ask the makers of these Jettons to redeploy them with immutable metadata on-chain.

Why? Imagine that in a few months somebody hacks their website and changes this JSON and replaces the ticker of the coin. Your coin could lose value. Why add this unnecessary risk?

Jetton metadata should not be allowed to change. Please spread this around.
10:52
In reply to this message
The fact that some scanners don’t yet support on-chain metadata shows you that the ecosystem needs help to mature. Please open issues with these scanners to show on-chain data and add a warning when the data is off-chain (since it may change without your consent)
SF
13:40
Slava Fomin
In reply to this message
That's not quite true. As I said, an account becomes active when the smart-contract is deployed to it.

Here's the example of the deployed wallet without any outgoing transfers and here's the code for it. The deployment fee was 0.004760001 TON for this contract. That is $0.003 currently.
13:47
The thing is that when you do the first transfer, the library would send the contract initialization data alongside with it, so the contract will be deployed and executed. However, you can deploy it separately as I've shown above.
13:51
In reply to this message
Data of the frozen account is getting deleted from the Blockchain to preserve space. However, the hash of it is getting saved. In order to unfreeze the account you need to top-up the account first and then to deploy it again by using the same smart contract code and it's latest state (it should match the hash).
A₿
17:22
Asahi ₿
Excuse me, does ton have a tool to convert solidity into func?
17:23
One more question, TON NFT, how to embed svg image? thanks
17:32
In addition, how to see the source code of a contract in ton's block explorer?
S
18:27
Sasha
Hey devs, is anyone in London? 🇬🇧

We have an idea to conduct a hackathon in 1-2 months, feel free to dm me if you’re interested
A
21:02
A
In reply to this message
Does the deployment fee change? And if so how can we calculate the exact amount required to activate?
SF
21:13
Slava Fomin
In reply to this message
There is an API for that.
20 June 2022
i
00:23
isoscele 💎
i want to make some fast local rarity sniffer on nft ton collections. how to get contracts of items from contract of collection? and is there a get function that returns the attributes of the item?
00:23
or if it already exists can someone link me it
00:40
In reply to this message
i
01:07
isoscele 💎
In reply to this message
it's good but i think i'll have to automate this a bit so i'll try with rungetmethod of http api to get some info. reading .fc contracts it looks not hard
01:07
thx anyway
Y
01:26
Yakitori
In reply to this message
noice
01:26
Naive question: is an EVM possible on TON?
o
01:28
oxlti.qube
In reply to this message
No. But it will be available by the end of 2022 because of Ethereum Workchain
Y
01:28
Yakitori
In reply to this message
Wow
01:28
I'm on fire
01:29
I'm a solidity dev, and I really like TON
01:29
So I'll probably make something on top of it
o
01:29
oxlti.qube
In reply to this message
Learn FunC :)
Y
01:32
Yakitori
In reply to this message
Yeah I did learn a bit, but better docs or even commented code could help
01:33
For instance here: it's a fungible token, but you can hardly tell which contract is used for what
01:34
Especially given FunC isn't really readable
i
01:40
isoscele 💎
I asked a smart contract and he answered me with this while i expected an address. Should i decode this in some particular way?
NN
01:42
Nick Nekilov
In reply to this message
"bytes" contains base64-encoded BOC. decode it and read an address from a given slice.
A
01:47
Aria&&
Any dev from Canada🇨🇦?
RK
02:18
Ruslan Kotov
In reply to this message
Could you please clarify what does it mean for TON? May be there any articles about that?
i
02:31
isoscele 💎
In reply to this message
working on str works well but addresses idk how to start
example of what i get:
b'\xb5\xee\x9crA\x01\x01\x01\x00$\x00\x00C\x80\x1e 4a,\xab\xfd\xa6\xd9\xb9b^A\x88\xa4\xe34\xbd\xfb\xb2\xfe\x95\xc7\xadOt\xed\x88\xdfO\xf1\xa6P\xcb\x7f\xfe`'
t
03:06
talkol
In reply to this message
Are there official plans to make an Ethereum work chain? Is there any post or announcement?
NN
03:23
Nick Nekilov
In reply to this message
t
03:24
talkol
I’m not certain they’re serious about these. Many of the core team don’t like Ethereum
NN
03:26
Nick Nekilov
Core team is quite closed so it isn’t clear if they like Ethereum or not.
Y
04:06
Yakitori
In reply to this message
You don't have to like ethereum to use the EVM
04:07
Lots of complex code has already been written in Solidity, so you're saving a lot of time by using it.
l
04:17
left
In reply to this message
This is my published smart contract - Hello World
E
12:21
Eli
In reply to this message
mf uses nano to code 😭
D
12:26
Dario
In reply to this message
Lmao
o
13:09
oxlti.qube
which coding language Func is similar to?
13:11
C++ or C?
t
13:12
test
In reply to this message
C++ similar to C
AH
13:53
Adnan Hosseini
Hi guys,
Any idea how to find the group admin?
E
16:43
Edo
I deployed a token, but from where i can manage it? I mean i used tonhub but i cannot see it there
TD
16:44
Tonana DEV
Hi guys, if someone is doing their own TON start-up and looking for funding or advising, write in DM✌️
AG
19:09
Ab Ghaemi
In reply to this message
What group?
Do you mean the admin of a four-person team for sdk toncoin?
21 June 2022
i
01:24
isoscele 💎
how to retrieve the address from an hex string?
E
09:46
ERICK
i am looking for an api or library to mint nft in tons
RK
10:05
Roman Krutovoy
In reply to this message
If you want to understand "howto" this minter is good example https://github.com/tonbuilders/tonbuilders-minter
OG
10:26
Owen Green
hello does someone know why a TON address can be 'inactive'?
10:26
I sent some TON over to an inactive TON address and it's not showing, which is weird.
VB
10:27
Vasilii Burykin
In reply to this message
To make the address "active" you need to send a transaction from it
OG
10:27
Owen Green
OK understand. otherwise it won't accept any tx over right?
10:28
it seems it returned my sent amount over
10:29
can i tell whether an account is active or not by any API?
VB
10:29
Vasilii Burykin
If this is the address of the wallet, then he will accept all the subtleties that you sent him. If the address of the contract, then you need to already look at how it works. But if he sent you lice thin, then he is 100% "active"
OG
10:30
Owen Green
it's an inactive wallet and we sent some TON over, got refunded back us, this is supposed to work this way right?
VB
10:31
Vasilii Burykin
In reply to this message
No
OG
10:31
Owen Green
hmm.
10:32
sending 4.89 TON to an inactive address
10:33
it immediately got refunded back to us ..
VB
10:35
Vasilii Burykin
It's interesting. Let a more experienced developer then tell you why.
OG
10:35
Owen Green
the receipt complaint that he never received the fund and we looked it up then we end up here.
10:35
😂
AS
10:37
Aleksandr Shepelev
In reply to this message
You send with bounce flag
10:37
You need to send without bounce flag
OG
10:37
Owen Green
what is a bounce flag?
10:38
can i get a doc on the 'bounce flag'?
10:39
so here is what i got, but why did the tx got aborted in the first place?
AS
10:40
Aleksandr Shepelev
Because account is inactive
10:40
Bounce flag returns all transactions to inactive address back
OG
10:40
Owen Green
ok understood. i will take a look at the api doc again.
AS
10:40
Aleksandr Shepelev
You use tonweb to send?
OG
10:41
Owen Green
yeah i think tonweb
AS
10:41
Aleksandr Shepelev
In reply to this message
.
10:42
Check this method, it can transform address to nonbounceble
10:42
Check params in toString()
OG
10:42
Owen Green
In reply to this message
ok so what we need is just transform the address
AS
10:42
Aleksandr Shepelev
Yes
OG
10:42
Owen Green
not setting a true or false parameter
AS
10:42
Aleksandr Shepelev
Yes
OG
10:43
Owen Green
i think we just need to enable this snippet. is that right?
10:44
can we clear the bounce flag for all address?
10:44
so we do not need to check on 'state'
s
11:54
shakou
11:54
Why does the Lite Client fail to start?
H
12:24
Hartmann D.
@woshinidieyuo please speak English. Thank you.
AP
12:39
Andrey Pfau
In reply to this message
You use outdated config, please download new:
ton.org/docs
s
12:40
shakou
I see, thanks @andreypfau
AS
12:40
Aleksandr Shepelev
In reply to this message
basically yes
12:41
but if somebody will send money not to wallet, but for some contract, and it will try to bounce it back due to error, it will fail to bounce money back
22 June 2022
SF
04:20
Slava Fomin
This question seems to get very popular :)
VP
07:23
VALHALLA Pools
How can I withdraw all the small amount remaining in the pool after completing withdrawal of both Nominator and Validator staking amount?
D
16:04
DawidJax
Hello everyone, two days ago someone stole 138 tons from my wallet. He transferred it to the EQBoDpISRfTxy320u0l1vX0fFVaQYTQDMD0EA7SpgF3aVbaX number
How is it possible that someone can do it without my interference. I added the Wallet tone to Chrome last and served 24 words there. Then I connected Wallet with https://tonClub.net/ which no longer exists, maybe there was some scam. But how is it possible to be able to send Tons without my confirmation in the application or extension of the Wallet tone.
D
16:06
Dario
In reply to this message
What do you mean by "combined"?
16:06
Did you sign a custom transaction?
D
16:11
DawidJax
In reply to this message
sorry my mistake, I mean "connected"
D
16:14
Dario
In reply to this message
.
D
16:20
DawidJax
In reply to this message
No
t
16:40
talkol
Did you type in your 24 words in TonClub.net website?
FD
17:19
Full Stack Dev
Is hashmaps branch of tonweb merged to master?
D
17:27
DawidJax
In reply to this message
No, only in chrome extension TON wallet
SF
18:35
Slava Fomin
In reply to this message
It's not. But I've heard that people are using the branched version.
18:36
In reply to this message
I've actually added TypeScript support to that branch recently and code-reviewed that branch.
FD
20:11
Full Stack Dev
got it
f
20:40
fraffo
In reply to this message
what do we have for python instead?
23 June 2022
NN
02:20
Nick Nekilov
In reply to this message
Ban is required 🤔
GH
09:24
GR Han
Hi there, I just knocked the TON for a simple project. I could find that toncenter provides Javascript SDK called "TonWeb". is there any API call limitation of it?? I could find "1 request per second" in https://toncenter.com/, I'm curious about it stills work for TonWeb sdk also
AS
09:26
Aleksandr Shepelev
In reply to this message
yes it is. tonweb works on top of toncenter
09:26
In reply to this message
https://github.com/toncenter/ton-http-api

you can deploy your own toncenter if you want to go beyond
GH
09:27
GR Han
Thank you. So It seems for me to register my app key in the @tonapibot to get higher limits
09:27
aha thank you :)
M
11:59
Michael
Hello guys. How can I discover my secretkey if i have mnemonic?
D
12:13
Dez1t
Hello! Could you help me please? I can't find the zero address. I need it to implement burn mechanics.
NN
12:19
Nick Nekilov
In reply to this message
Are you talking about jettons?
D
12:20
Dez1t
In reply to this message
No, right now I just need something like 0x000...0 address, like in ethereum.
NN
12:21
Nick Nekilov
I understand. Why do you need it?
D
12:21
Dez1t
In reply to this message
To burn TON coins
AP
12:23
Andrey Pfau
In reply to this message
Just send coins to 0:0000000...0000 address with turned off bounce flag
D
12:23
Dez1t
OK, thanks
NN
12:24
Nick Nekilov
In reply to this message
I don’t really understand why do you need it.
You may take any raw address and „pack“ it.
12:25
In reply to this message
Raw address looks like 0:XXX…XX
M
12:58
Michael
Hello guys. How can I discover my secretkey if i have mnemonic?
AP
12:59
Andrew Python
In reply to this message
M
13:00
Michael
Thanks
13:17
In reply to this message
You can long press your message, choose Edit, and correct it. To avoid potential confusion to 1,600 others in chat.
D
13:21
DawidJax
Is it possible to recover my stolen tokens?
13:22
In reply to this message
There was a scam a month ago where the wallet was showing at wallet-ton.ton.org a slight difference in URL and all secret phrases collected and everyone robbed. Otherwise perhaps security is only as good as the computer used and any spy software etc. Is it windows?
13:23
In reply to this message
Only if that address sends them to an exchange and the exchange cooperate. Unlikely unless a major international police case. You can try sending a message to the scammer. Unlikely.
D
13:24
DawidJax
In reply to this message
Yes, it's Windows.
13:25
In reply to this message
Well. And you still didn’t correct your message. And there’s no such likely all lower case Ton address. You can explore here: Tonscan.org
D
13:33
DawidJax
In reply to this message
I've just corrected it. The thief address EQBoDpISRfTxy320u0l1vX0fFVaQYTQDMD0EA7SpgF3aVbaX
13:35
In reply to this message
If you edit that, highlight address then choose Bold menu, select monospaced, then anyone can tap on the address to copy it and explore.
13:36
In reply to this message
The thief address EQBoDpISRfTxy320u0l1vX0fFVaQYTQDMD0EA7SpgF3aVbaX
D
13:37
DawidJax
In reply to this message
Done
13:41
In reply to this message
https://tonscan.org/address/EQBoDpISRfTxy320u0l1vX0fFVaQYTQDMD0EA7SpgF3aVbaX
They have an account with OKX and they likely also own this wallet: https://tonscan.org/address/EQBoDpISRfTxy320u0l1vX0fFVaQYTQDMD0EA7SpgF3aVbaX and they’re quite probably the owner of tonclub.net if you can get information from domain registry.
SK
13:49
Shawn Kovac
In reply to this message
can you help me understand why you want to burn TON coins?
13:56
is there any reason to burn TON coins?
YG
15:39
Yasin Gh
Big project
M
16:15
Michael
I have this problem: (node:257684) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'getRandomValues' of undefined. When running tonweb-mnemonic. I have module installed. Any advice?
SF
16:23
Slava Fomin
In reply to this message
What runtime are you using?
M
16:26
Michael
v10.19.0
16:30
I need v17.+?
AP
16:57
Andrey Pfau
In reply to this message
yep
16:57
you need use always latest version
M
16:59
Michael
yeeey thx
SF
17:05
Slava Fomin
In reply to this message
Our support starts at Node 15. You don't necessarily need latest version, because it's not always available at some cloud providers.
17:06
But using latest LTS-version is a good practice.
M
17:06
Michael
I forget this detail and trying to much :))
i
20:32
isoscele 💎
is there a bot I can get updates on a specific ton address?
24 June 2022
08:16
In reply to this message
Tonscan.app and @toncentral lists various address monitoring bots.
e
10:00
elixir
hi
10:02
Who made the language func?
10:02
lol
l
10:03
left
In reply to this message
do you want to rant?😂
e
10:04
elixir
I feel dizzy because of FunC
а
11:44
артур
Hello, guys. I'm new to TON and blockchain. Can you please, answer: is there a way to automate sending a TON from my wallet to others. I haven't found this in official documentation, maybe I just didn't read it properly. So, if yes. Can please send some links to documentation how to do this or examples.
l
11:58
left
In reply to this message
There is not much readable material. But you can try to transfer money manually using the wallet plugin. This is very easy.
а
12:03
артур
I found just now a TON Keeper wallet API - https://githubplus.com/tonkeeper/wallet-api. Is it also impossible to use it?
NN
12:07
Nick Nekilov
In reply to this message
Is that a user facing application or a backend service?
а
12:09
артур
It is a facing application
NN
12:10
Nick Nekilov
In this case I‘d recommend to go with either TON Wallet or Tonhub.
12:12
In reply to this message
This is just a specification but not a description of working API.
12:13
In reply to this message
By the way, why did you provide a link to a shitty site but not to GiHub?
а
12:14
артур
It was the first link that google sent me
t
12:51
talkol
In reply to this message
This will be a general blockchain answer, not a specific TON answer. You can achieve this with blockchain in 3 different ways:

1. Have a client-side script (like a wallet) that will run on your computer and send the money. This script will have to have your wallet credentials. Not super secure but easy.

2. Have a bot on a server somewhere that will do the same. This is very dangerous because anyone hacking this server could steal the money that wasn’t sent yet. So very not secure.

3. Write a smart contract that will orchestrate this. Meaning you will transfer once all the funds, and the smart contract will allow the receiving party to send a transaction periodically to get what they are owed. This is secure but a little harder to write. But this is what blockchain was invented for.
12:55
If you want to fully automate 3, you can add a bot somewhere to wake the smart contract periodically. But unlike 2 this can be designed to be 100% secure so anyone hacking the bot server will not be able to touch your money
12:55
You can look at the smart contract as the only real secure piece of code that is enforcing the security of all other roles
а
12:57
артур
Great, thank you!! Have you any implementation examples? It would be really useful
t
13:02
talkol
It really depends on your design and what exactly you need to achieve. If you just want to get a taste of what a very simple smart contract looks like, take a look at the starter project:

https://github.com/ton-defi-org/tonstarter-contracts

If you want to see a more relevant example to your use case, which is significantly more complicated, take a look at the official lockup contract:

https://github.com/ton-blockchain/lockup-wallet-contract

It’s a flavor of a wallet, that will lock its tokens and allow only restricted addresses to receive tokens and enforces a lockup period meaning how often they can receive. Not exactly what you need but many similarities.
13:02
If you just want to write a local bot (alternative 1), you don’t need any smart contracts - and just need to learn one of the JavaScript TON libraries that interact with wallets. Tell me if you need the links
а
13:04
артур
Like "tonweb"?
t
13:04
talkol
In reply to this message
Yes, or “npm ton” by TonWhales which is also very good
а
13:05
артур
Okay, understand. Thank you for the information!!
l
13:07
left
In reply to this message
sorry, sir. i want to ask a question . Is there any documentation for using tonweb now, like the documentation for using the web3 library
t
13:08
talkol
In reply to this message
If you liked the answer and want to contribute to the next person with the same question, consider copying the above question to https://stackoverflow.com/questions/tagged/ton and answering yourself so both can be googled
l
13:09
left
Because I feel that the current instructions are not friendly enough for newbies.
t
13:09
talkol
In reply to this message
There’s a lot of work on the way to improve this. We’re waiting for an official website by the foundation for tutorials and then we will start publishing
t
13:25
talkol
The tonwhales guys are trying to build a documentation website for their libraries https://tondev.org but it’s wip
M
13:33
Michael
Trying to send TONs with nodeJS and I receive this error: Error: Please pass numbers as strings or BN objects to avoid precision errors.
13:33
Any advise please?
l
13:36
left
In reply to this message
Yes, currently I'm using the ton library. But I feel that tonweb is more friendly, but I haven't used the documentation, so it feels very difficult.
13:37
In reply to this message
Is it possible to make a simple usage document about TonWeb first? Make it feel more friendly to newbies.
t
13:59
talkol
In reply to this message
new BN(12) - wrap the JavaScript number in BN class from bn.js library
M
14:00
Michael
In reply to this message
Thanks!
t
14:06
talkol
Numbers in TON are tricky, because the numbers supported need to be much bigger than what JS supports. Also the accuracy is very high - there are 9 decimal points. So a value like 5.000001234 is actually encoded like 5000001234 (give or take a zero). The class BN is used to bring this support to JS.

There are convenience functions like these https://github.com/tonwhales/ton/blob/master/src/utils/convert.ts

That take care of all this for you. Function toNano will take JS number 5.000001234 and return BN object (5000001234) and the other function will take you the opposite way
14:10
In reply to this message
If you really want to help with developer resources, you can go around new developers and make a poll to get us a prioritized list of the developer tutorials new developers need most. I will bring this up to help focus the efforts in the right direction
M
16:18
Maksim
Hello everyone, does anyone have an example of authorization through Ton Wallet / TonKeeper?
25 June 2022
l
04:55
left
The data sent by the web front end to the smart contract is received by the recv_external function of the smart contract, right?
а
13:51
артур
Hello, guys, one more question. Where can I get my secretKey?
SF
14:04
Slava Fomin
In reply to this message
Hey. What do you mean by that?
а
14:06
артур
I want to create localscript to send money to other wallet, and use tonweb as suggested, but I need to pass there a secretKey
14:06
https://github.com/toncenter/tonweb - just here is an example
SF
14:11
Slava Fomin
In reply to this message
^
14:12
This is solved by a separate library.
B
20:55
Brandon
Is the entire server-side code open source? (Unlike telegram)
AP
21:09
Andrey Pfau
In reply to this message
t
22:43
talkol
In reply to this message
If anyone is interested to see an example of a production auction contract you can take a look at the one of Axie Infinity, probably the most successful NFT game in history and the most valuable NFT collection anyone made:

https://github.com/axieinfinity/public-smart-contracts/blob/master/contracts/marketplace/AxieClockAuction.sol

The contract is in Solidity so it’s definitely a little easier than FunC. If there are product features missing from it I would ask myself three times if they’re really needed because this is the biggest NFT in history so its auctions are probably good enough
26 June 2022
A
03:52
Ascari
Sup TON devs
03:52
There may be an issue
03:52
I tried to send TON to an address and it kept being refunded
03:54
This happened a total of 3 times, the gas was paid, and deducted on every refund
03:59
I was able to send the amount using the web wallet, I suppose there was an update to the node code?
SF
04:08
Slava Fomin
Oh, we reeeeally need an article for this 😁
04:08
In reply to this message
^
A
04:15
Ascari
In reply to this message
Ohhh thank you very much
CA
04:18
Cecilia Andrea
Hello..ton dv
f
05:22
fraffo
hello
05:22
how can i estimate the minimum amount of grams needed for initialize a wallet?
V
08:35
VK
Guys, I m excel user and an electrical engineer. I want to start coding by scratch, like C++, Python, web development, how can I start, there are like 100's of websites that are available but are confusing at times, Could anyone help me here?
SF
09:48
Slava Fomin
In reply to this message
There's a method for this in TonWeb wallet contract class.
f
13:16
fraffo
Thx
t
14:17
talkol
In reply to this message
At least put a stackoverflow question and answer so people find it on Google
S
16:14
Sina
Hi
I want to run a game based on NFT on TON chain. I need a developer. For mor details please contact me
SK
20:54
Shawn Kovac
In reply to this message
i recommend starting with a relatively easier programming language where you can find lots of help. i gather from others here that TON development is neither of these. i have serious c# background. it is much easier and cleaner than Java, it's core competitor. but C# and Java are both popular in my city. C++ is more technical & has more gotchas to learn but there is a big user-base so i'm sure you can find help communities for C++ (and there's no space between the +'s). i hear that basic Python is relatively easy to learn and the popularity seems to be growing. so it's worth considering. but personally i don't like Python for it's weaknesses and i think it has some stupid crazy weaknesses. (using spaces instead of tabs or vice versa can introduce a bug in your code! 🤦‍♂ Python uses 'significant whitespace. 🤦‍♂🤦‍♂)
20:54
In reply to this message
sounds cool! i wish u the best!
27 June 2022
M
13:24
Michael
I got this error "Incorrect address" when trying to send TON with nodejs. any advice please?
D
13:26
Dario
In reply to this message
Fix the address


Its 100$, thank me later
M
13:27
Michael
I am trying with any methods... what is the best format? uint8 or base64 key?
D
13:33
Dario
In reply to this message
The address are in raw format or "friendly format"
M
13:34
Michael
Address is publicKey right?
AS
13:34
Aleksandr Shepelev
In reply to this message
nope
13:35
address depends on public key and contract code, you cannot send to pubkey directly
13:35
you need to send to smart contract, e.g. walletV3 for this pubkey
13:36
To send some TON to another address
13:37
better check this one
M
13:37
Michael
I am put the publicKey and secretKey into const and when i am running the js file it tells that error with "Incorrect address"
13:37
ok
13:37
let me try
13:37
thanks
AP
19:03
Andrey Pfau
This chat for development talks, please don't offtop
A
21:58
Aria&&
Working my way through the white paper… 🫠😪
D
23:21
Danielle
What is transaction cost in Ton?
PF
23:30
Pablo Fuentes
Hi devs! Somebody know if TonWeb is compatible with Vue3+vite??
28 June 2022
TD
01:55
Tonana DEV
Hello, is anyone participating in the TON hackathon?
D
01:59
Danielle
Anyone tried to execute compiled for Everscale code on TON?
NN
02:00
Nick Nekilov
In reply to this message
02:00
In reply to this message
(successfully)
t
02:03
talkol
In reply to this message
TON doesn't support Solidity like everscale does so the foundation does not recommend to try to build Solidity contracts with everscale compilers. Contracts for ton should be written in FunC.
02:04
We've done a round of improvements according to feedback for the free open source Jetton deployer:

https://jetton.live

You can now inspect existing deployed tokens and see security advice about them. The tool now allows you to revoke admin ownership at any time to make the token immutable. And we improved the instructions to explain each field best practices. More feedback welcome!
PF
02:04
Pablo Fuentes
how can I get TON address with the chrome extension?? ton.xxxxxxxx??? Thanks
D
02:05
Danielle
In reply to this message
I just compare complicity of Func and Solidity and Func is awful(((
NN
02:06
Nick Nekilov
In reply to this message
TON supports any TVM compatible byte-code. It doesn’t matter what is used to generate this code.
t
02:07
talkol
Some of the architecture of TON is very different than Ethereum so Solidity is not a good fit. For example, calls between contracts in TON are asynchronous (happen on different blocks as messages) and are not atomic like on EVM. The amount of hacks everscale did to make it work is crazy and it's pretty not secure so the foundation chose not to support this concept
D
02:08
Dario
In reply to this message
This

Also writing func directly is not that hard, its quite simple in the end once you get used to it
NN
02:09
Nick Nekilov
In reply to this message
It is „not secure“ in the same manner as „ton“ npm package?
t
02:09
talkol
what's not secure with ton npm?
02:09
it's a great package
D
02:10
Dario
Data are untrusted, its not a lite-client replacement (maybe he is referring to this)
NN
02:10
Nick Nekilov
Everscale‘s Solidity is a great tool
t
02:13
talkol
Everscale Solidity is not secure because it ignores TON architecture by forcing EVM concepts. This approach will create vulnerabilities in your contracts. You should learn how TON works and design for it. You can't just take Ethereum code and expect it to "work". Most Ethereum contracts assume that calls between contracts are atomic and if you break this assumption they will be vulnerable to attacks. Also, TON doesn't support unbounded data structures like Ethereum so if you create a hash table that can grow indefinitely, your contract can be attacked. Your contract in this case needs to be sharded to multiple child contracts like Jetton (TON's "ERC20" works). It's really recommended to learn FunC and TON architecture.
PF
02:14
Pablo Fuentes
In reply to this message
🙏🥺
NA
02:16
Narek Abovyan
In reply to this message
They somehow managed to simulate synchronous behaviour of calls?
t
02:16
talkol
In reply to this message
Yes, with crazy async await magic
NA
02:16
Narek Abovyan
Omg
02:17
But how 😳
NN
02:18
Nick Nekilov
In reply to this message
I’m not talking about using Ethereum code as is.
I consider it as an alternative to a shitty func, taking account all TON features.
t
02:19
talkol
they added concepts like await for calls and when it compiles the compiler builds a state machine automatically with entry points for messages.. so the code just appears "synchronous" in the Solidity but in reality it's broken up on multiple funcions
NA
02:20
Narek Abovyan
In reply to this message
FunC fits great with TON architecture and primitives, but it’s bit low-level.
I think it will be much easier for new dev’s to jump-in after release of Tact
t
02:20
talkol
In reply to this message
The problem is that most developers will not be like you. They will take Uniswap V2 code and try to release an AMM in 2 days
D
02:20
Danielle
In reply to this message
What is Tact?
NA
02:21
Narek Abovyan
In reply to this message
Wow, looks like it’s even more unpredictable behaviour
02:21
How they calculate how much value you should send with message?
D
02:21
D a v i d e
it possibile to develop ton contracts in vscode?
NA
02:22
Narek Abovyan
In reply to this message
t
02:23
talkol
For the record, I think ton npm is great and I prefer it to tonweb. If you want to play with FunC and need a starter project with tests and everything set up (similar to what you do on Ethereum with hardhat), use this (it relies on ton npm btw):
https://github.com/ton-defi-org/tonstarter-contracts/
02:24
In reply to this message
definitely, it even has plugins for syntax
NA
02:25
Narek Abovyan
In reply to this message
great stuff!
D
02:26
D a v i d e
In reply to this message
can you suggest me some plugins
t
02:32
talkol
I use this: https://marketplace.visualstudio.com/items?itemName=tonwhales.func-vscode
but there's a more official one.. let me find it
AP
02:32
Andrey Pfau
In reply to this message
t
02:32
talkol
that's not for vscode
AP
02:33
Andrey Pfau
That more better, than vscode
t
02:33
talkol
lol no way :) it's not implemented in Java for one, and doesn't require 8GB to run
AP
02:33
Andrey Pfau
In reply to this message
Intellij required 2 gb for run
t
02:34
talkol
I was kidding :) Intelij is a bloated mess
D
02:34
D a v i d e
In reply to this message
thanks
SF
02:34
Slava Fomin
In reply to this message
BTW, why do you prefer ton over tonweb?
t
02:38
talkol
the api is more full, for example tonweb can only decode cells but not encode them
02:39
support for dictionaries, typescript support
AP
02:39
Andrey Pfau
In reply to this message
it can encode cells, typescript and dictionary
02:39
Are you kidding?
t
02:42
talkol
it's not native Typescript, there are some types hacked on after the fact in comments
https://github.com/toncenter/tonweb/blob/master/src/utils/Utils.js
SF
02:44
Slava Fomin
In reply to this message
I was actually "hacking" them 😁

The types are generated from the branch of tonweb that was completely rewritten in TypeScript with 100% backward compatibility, so it should be totally OK for consumers.
t
02:46
talkol
I can see that tonweb improved a lot
02:47
when I started with ton it was very much behind npm ton
02:47
there was no encoding cells for a long time :)
02:48
I still don't find tonweb support for encoding/decoding dictionaries in cells like https://github.com/tonwhales/ton/tree/master/src/boc/dict
SF
02:49
Slava Fomin
In reply to this message
Well, it's not in master. There's an experimental branch for this.
t
02:51
talkol
I see, nice! well when this branch the native typescript are all merged back to master, I'll consider switching :)
SF
02:53
Slava Fomin
Here's the TS version of the library, if you are interested. It has several improvements and fixes, and is covered with tests (still WIP). If you would have any suggestions/ideas, please let me know.

(link updated)
t
02:57
talkol
looks nice!
03:00
another reason I'm using npm ton is because I love https://github.com/Naltox/ton-contract-executor and it depends on npm ton too
03:01
it will be very nice if somebody creates a tonweb version of it that maintains the tonweb api for tests
03:02
it's @Narek 's amazing project
A
03:59
Aria&&
Does anyone know when will the TON smart challenge #2 start?
03:59
Probably after the hackathon right?
D
04:54
Danielle
Who used pytonlib on Windows AMD ?
04:54
D:\projects\nft\tonbooking_payment\env\Scripts\python.exe D:/projects/nft/tonbooking_payment/main.py
Traceback (most recent call last):
File "D:/projects/nft/tonbooking_payment/main.py", line 28, in <module>
asyncio.run(main())
File "C:\Users\shily\AppData\Local\Programs\Python\Python38\lib\asyncio\runners.py", line 44, in run
return loop.run_until_complete(main)
File "C:\Users\shily\AppData\Local\Programs\Python\Python38\lib\asyncio\base_events.py", line 616, in run_until_complete
return future.result()
File "D:/projects/nft/tonbooking_payment/main.py", line 18, in main
await client.init()
File "D:\projects\nft\tonbooking_payment\env\lib\site-packages\pytonlib\client.py", line 61, in init
wrapper = TonLib(self.loop, self.ls_index, self.cdll_path, self.verbosity_level)
File "D:\projects\nft\tonbooking_payment\env\lib\site-packages\pytonlib\tonlibjson.py", line 81, in init
tonlib = CDLL(cdll_path)
File "C:\Users\shily\AppData\Local\Programs\Python\Python38\lib\ctypes\__init__.py", line 373, in init
self._handle = _dlopen(self._name, mode)
FileNotFoundError: Could not find module 'D:\projects\nft\tonbooking_payment\env\lib\site-packages\pytonlib\distlib\windows\tonlibjson.amd64.dll' (or one of its dependencies). Try using the full path with constructor syntax.
Exception in tonlibjson.del: Traceback (most recent call last):
File "D:\projects\nft\tonbooking_payment\env\lib\site-packages\pytonlib\tonlibjson.py", line 133, in del
self._tonlib_json_client_destroy(self._client)
AttributeError: 'TonLib' object has no attribute '_tonlib_json_client_destroy'

Exception ignored in: <function TonLib.del at 0x0000029D6A5F5EE0>
Traceback (most recent call last):
File "D:\projects\nft\tonbooking_payment\env\lib\site-packages\pytonlib\tonlibjson.py", line 136, in del
RuntimeError: Error in tonlibjson.del: 'TonLib' object has no attribute '_tonlib_json_client_destroy'

Process finished with exit code 1
S
12:46
Step
jetton is similar to erc20 token?
SF
13:01
Slava Fomin
In reply to this message
Yes, you can say that. However, the implementation is different, due to Blockchain technology differences.
13:02
In reply to this message
Make sure that tonlib DLL is there.
S
13:03
Step
In reply to this message
tonweb can create new token? transfer? can you direct me to link where i can see example implementation?
SF
13:04
Slava Fomin
tonweb/test-jetton.js at master · toncenter/tonweb · GitHub
https://github.com/toncenter/tonweb/blob/master/src/test-jetton.js
S
13:07
Step
In reply to this message
const minter = new JettonMinter(tonweb.provider, {
adminAddress: walletAddress,
jettonContentUri: 'https://ton.org/jetton.json',
jettonWalletCodeHex: JettonWallet.codeHex
});

what is jetton content uri ?
SF
13:18
Slava Fomin
Token Data Standard · Issue #64 · ton-blockchain/TIPs · GitHub
https://github.com/ton-blockchain/TIPs/issues/64
D
14:07
Danielle
In reply to this message
It's actually there))
SF
15:25
Slava Fomin
I'm not sure, maybe you are lacking some dependency.
NI
20:05
No Caller ID
Did anyone try to create pool with more than 40 nominators on mytonctrl smart contract?
OB
21:33
Oleg Baranov
New version of TON golang library v0.8.2!

Changelog:
1. Get Block data liteclient method
2. Get Block transactions liteclient method
3. Implemented TLB loader by structure tags (similar to json pkg) https://github.com/xssnick/tonutils-go#tlb-loader
4. BOC parser indexes+cached support
5. Grams string formatter without big.float usage
6. Dictionary key type changed to cell to be readable
7. StoreUint optimized, thanks to @TrueCarry
8. Fixed panic at querying when 0 active nodes, thanks to @igorsd
9. More tests

https://github.com/xssnick/tonutils-go
A
21:36
Aria&&
Has anyone tried to run TON node on a raspberry pi?
29 June 2022
SK
03:54
Shawn Kovac
In reply to this message
i haven't but i'm very interested.
A
04:22
Aria&&
In reply to this message
Well I tried today, it didn’t work it requires 16 gb of memory mine only has 8.
04:23
However I think it is possible on paper to make a lightweight node that runs on a Rpi
04:24
In reply to this message
Cuz u can run a bitcoin full node on rpi
04:24
I guess you’d have to rewrite the code from scratch and optimize it for ARM architecture though
RG
09:21
Ruslan Gabdullin
Currently, node can be compiled for arm64, but RPi4 has extremely slow CPU compared to x86-64. So it’s a bad idea
09:26
If you interested in arm64 server, check the aws graviton instances (c6g, c7g) and ampere altra workstations🙃
Z
10:04
Zed
hi, i am trying to set up a node. when funning the install script I get: make[1]: *** [CMakeFiles/Makefile2:7107: crypto/CMakeFiles/fift.dir/rule] Error 2
make: *** [Makefile:1882: fift] Error 2
10:05
I do have CMake installed so I am unsure what to do, are you able to help?
10:07
the install file is only 2.7k, in the docs it says 4k. could that be the problem?
10:07
tonistaller.sh is 4.7k
d
11:14
doni
In reply to this message
i see you refer to events in your roadmap

can you explain what you refer as events ?
OB
11:22
Oleg Baranov
In reply to this message
subscription to transactions for example, to get notification when wallet N got a transaction
d
11:23
doni
got it

listen to functionality
OB
11:23
Oleg Baranov
or state of some contract chaged
d
11:24
doni
i thought you ment

events are messages to nowhere
with a certain tlb structure
11:25
thats why i asked
OB
11:27
Oleg Baranov
those i think will also appear as transactions, so it could also be listened :)
TD
12:25
Tonana DEV
Hack-a-TON offline side event in Prague -> enjoy collaborative development @hackaton2022

https://www.meetup.com/tonana-hacker-house/events/286847939
t
12:33
talkol
In reply to this message
I have a question - why do you invest time in learning Fift? From my experience so far, Fift always felt much too low level to deal with. Compilation of FunC goes through Fift but then directly to bytecode, so I don't need Fift there. And all the deployments and tests and interactions with the contracts are much easier for me in JavaScript.. It's like if I didn't know Fift ever existed it wouldn't hurt me one bit
Z
12:42
Zed
In reply to this message
Have sorted it out. Was running Ubuntu 22.01 which it doesn't work with. Once I installed version 20.04 it's working
Яд
14:23
Язон дин Альт
Why i'm getting "Method Not Allowed" error
I'm using tonweb + ton-http-api in docker
tonweb.provider.getExtendedAddressInfo(wallet_addr)
14:25
.catch gets string as error? realy?
Яд
15:33
Язон дин Альт
does somebody know what that means in ton-http-api response?
{
ok: false,
error: 'No working liteservers with ls_index=None, archival=None',
code: 503
}
Яд
15:49
Язон дин Альт
what is all this errors? why it just don't work out of the box?
Or one must get familiar with system by directly diving in source code of blockchains?
{
"ok": false,
"error": "name 'TonlibError' is not defined",
"code": 503
}
15:57
Ok, I will not waste my time on this project any more. It's so raw and laggy yet
SK
16:08
Shawn Kovac
In reply to this message
that's very good to know! thanks for sharing!!
Z
16:09
Zed
Pleasure
SK
16:11
Shawn Kovac
In reply to this message
i was also disappointed at how complex (many) things are. like even installing most printer drivers on Linux! 🤦‍♂ It feels like there's a conspiracy by printer manufacturers to push us to use windows or something! 🤦‍♂🤔
Яд
16:13
Язон дин Альт
In reply to this message
it certainly is a conspiracy by printer manufacturers =)
16:15
In reply to this message
It's not bout the complexity, it's about key system module that doesn't just work and you get problem exiding many times your level of knowladge, as you begin to study the system
SF
16:22
Slava Fomin
In reply to this message
My experience shows that printers work in Linux out of the box, while in Windows you need to download ridiculous 1 GB drivers 😁
SK
16:23
Shawn Kovac
In reply to this message
okay.
SF
16:23
Slava Fomin
In reply to this message
What TonCenter endpoint are you using?
CZ
16:23
Chak Zefir
In reply to this message
Could you please put your question on stackeoverflow and put the answer there? We are trying to collect DB of FAQ and issues
SF
16:26
Slava Fomin
In reply to this message
Yeah, I feel your pain. I've fixed it in the next version of TonWeb. But I'm not sure how soon I will be able to merge it. I'm probably going to continue my work next month.
Z
16:27
Zed
In reply to this message
Will do
Яд
16:28
Язон дин Альт
In reply to this message
If i get U write I'm not using toncenter. I use ton-http-api in docker as endpoint for tonweb. And mainnet config file from git
SF
16:29
Slava Fomin
In reply to this message
Are you sure that it's configured correctly? Try to use the public TonCenter just for comparison.
Яд
16:31
Язон дин Альт
I use this config as described in docs
https://ton-blockchain.github.io/global.config.json
I tryed toncenter as http api, it worked but there are limits so I decided to do my own api
SF
16:32
Slava Fomin
It is fine to use public TC in development, the limits should be fine and the infrastructure is simpler.
16:33
However, in production you should use your own instance of TC.
Яд
16:37
Язон дин Альт
In reply to this message
thanks for answers.
one more while you'r active in chat. does ton-http-api sync chain or something? It eats space in my virt-mashine and does not stops
SF
16:51
Slava Fomin
How much space does it eat? Are we talking about RAM or FS?
D
16:51
Dario
In reply to this message
It does not, it connects to ton servers
16:51
Maybe the problem is the cache?
SF
16:51
Slava Fomin
It's not syncing blocks by the way. It's only a proxy for lite servers.
Яд
16:53
Язон дин Альт
In reply to this message
cache is disabled. after starting ton-http-api virtual mashine grows and increased in size about 10 GB.
D
16:54
Dario
strange. Just use other people node like tonhub one
SF
16:55
Slava Fomin
In reply to this message
That's weird.
16:55
@ruslixag can you elaborate on this, please?
RG
16:56
Ruslan Gabdullin
Hello, could you please send .env file? Do you use latest version from master branch?
Яд
16:56
Язон дин Альт
In reply to this message
and that's why i asked about sync. I will analyze situation
а
19:30
артур
Hello everyone, I got the same error. What do you mean by "account is not initialized"?
а
19:30
артур
SF
Slava Fomin 13.05.2022 14:24:01
This is a client error. Either your account is not initialized, you are sending more coins that you have or you are using incorrect private key.
30 June 2022
D
03:27
Danielle
Hey, has anyone tried to run ton-contract-executor on Linux or Windows?
03:27
Error: Command failed: /home/danila/projects/tonjs/node_modules/ton-compiler/bin/macos/func -PS -o /tmp/tmp-4437-YlY0FwonDMWY /home/
danila/projects/tonjs/node_modules/ton-compiler/funclib/stdlib.fc /tmp/tmp-4437-SPUHCwrkgcwS
t
08:58
talkol
The problem looks like another dependency called ton-compiler which brings its own func executable which is for Mac only and your machine is confused and finds it in your path before your real func executable
08:59
What I did to overcome this is add a post install step that removes these weird executables
09:00
As you can see in the starter project package.json this script runs on postinstall
GH
09:45
GR Han
Hi there, is there any explorer that supports testnet at the moment?? I couldn't find it in tonscan or ton.sh ..
GH
09:46
GR Han
very thanx :)
P
19:23
Prince
Guys, can you help me with this 😅. I'm not able to understand it properly

In the In the Collection content URL, enter link to the collection metadata. This file must be hosted on your side. Later, if you need to, you can change this link in the smart contract.

In the Collection base URL, enter the common path to your NFT metadata in JSON format. For instance, if you enter http://yourcollection.com/nft/ then the first NFT metadata should be hosted at http://yourcollection.com/nft/0.json, the second at http://yourcollection.com/nft/1.json, etc. These files should be hosted on your side. You can change this path later on if you need to.
19:25
In reply to this message
I'm trying to mint an NFT on TON testnet using an image via tondiamonds. I don't have a website yet.

I've understand all the params other than these two.

What to do in these two points?
OG
23:05
Om G
I can help with documentation. This project seems to have a lot of what I need for irl disaster logistics tools.
1 July 2022
SF
00:32
Slava Fomin
In reply to this message
You should host JSON metadata file for each NFT that you are going to mint on a public server.
P
01:25
Prince
In reply to this message
I'd checked some youTube videos and got to know about it.
ipfs:// (URI)

But I'm getting several errors while deploying 🤦‍♂️.

Using api key from Ton key bot and it says api key doesn't exist when I start deployer.

I think I'm making some mistakes but I'll try to keep building

Thanks for helping
SF
02:03
Slava Fomin
In reply to this message
You will need different keys for testnet and main.
P
08:47
Prince
In reply to this message
Thanks. Got Testnet api 🔑😊
P
09:10
Prince
I got only 1 nft to deploy on ton testnet.


Some confusions occuring on CSV file saying "Start Index 1 bigger than supplied nfts amount 1,check nfts.csv

Can you tell me how to make csv file to deploy 1nft on testnet?

Huh thanks, got answer.

In csv file I'd to put that in order.

<number of NFT>, <wallet address of owner of NFT>
d
09:16
doni
In reply to this message
Hi

Im trying to use it to decode jetton messges ,
but I get an error
panic: invalid boc magic header

I thought i can take a hex of a boc message , and create a struct (using the tlb syntax ) and decode messages
Was that the purpose of the tlb.LoadFromCell ?
GH
10:04
GR Han
Hi there, does tonweb API provides get jetton balance with 1) my ton wallet's address and 2) jetton contract address?

I could find the jetton wallet class in tonweb (https://github.com/toncenter/tonweb/blob/master/src/contract/token/ft/JettonWallet.js), but I'm not sure to use this class directly or is there any endpoint like other javascript TON API
10:06
It seems for me to use its 'getData' or "createTransferBody" would allow getting balance of jetton or sending it but I just arrived to TON world a few days ago... any suggestion for me? :)
10:12
Try looking at these examples.
GH
10:13
GR Han
In reply to this message
thx I'll take a look!
t
11:49
talkol
Deploying an NFT is tricky because you must use IPFS - never use your own domain to host the JSON because then the NFT is centralized and you can change its fields in the future (it can’t become valuable).

If you’re using IPFS there’s a whole issue with pinning. The JSON is off-chain and IPFS is like torrents, somebody needs to seed it. This is pinning.

I would recommend to deploy through the big NFT marketplaces like GetGems because they will pin the IPFS for you. This is not something you will probably do yourself and you don’t want the JSON to disappear.
I
12:32
ItsMeCrico
Are there volunteers in this chat ready to write a smart contract for the NFT collection?
WA
12:55
Witer33 Aaªº°°°
how do I deploy Jettons on the testnet?
WA
13:39
Witer33 Aaªº°°°
In reply to this message
thx
D
13:39
Dario
In reply to this message
If you wait a couple of days i will remove the "payment" for the service
WA
13:40
Witer33 Aaªº°°°
In reply to this message
ok
P
14:28
Prince
I've 5 NFT metadata in ipfs, trying to mint them(TON testnet) but it occurs

[Deployer] Collection Deployed

Error: [Deployer] Start index 0 bigger than supplied nfts amount 0, check name.csv

It happens, can anyone check it and answer me😅.
MS
15:47
Mcstean STARC
Good morning
Please i wishes to know if its possible to build a TOKEN on TON BLOCKCHAIN.
Also are they ACCREDITED COMPANIES doing that ?
What about ACCREDITED or even VETTED training centers?
Thanks
VB
15:56
Vasilii Burykin
In reply to this message
I don't understand what you said, but there is a website like this jetton.live
SF
16:03
Slava Fomin
In reply to this message
Accredited by whom?
M
16:13
Mark
In reply to this message
I guess you can hire an audition company to accredit any hell you like)
MS
18:32
Mcstean STARC
In reply to this message
The TON FOUNDATION
18:34
In reply to this message
The word hell give ke impression of bein abused
18:34
Nevertheless I am sorry if I didn't express myself well
S
19:28
Step
Is it possible to develop ton lottery smart contract? @slavafomin can you give me idea?
d
19:31
doni
yes there is an old tutorial for ton lottery
AP
19:32
Andrew Python
In reply to this message
https://github.com/pyAndr3w/ton-lottery-smc/
Old version with a certain number of tickets. Not for production.
(Now I would do it differently.)
IG
19:36
I G
Won’t you be able to see the contract call and hence the parameters that were used, so one could avoid buying a ticket that is not going to win?
S
19:38
Step
In reply to this message
will you make new one? i have no knowledge of fift and func
AP
19:38
Andrew Python
In reply to this message
No, I don't have time for that right now.
SF
19:41
Slava Fomin
In reply to this message
I don't believe there is a program like this.
S
19:46
Step
In reply to this message
can we code in ton smart contract like declare winner(s) on specific time for example 00:00 gmt/utc ? is it possible?
AP
19:48
Andrew Python
In reply to this message
Yes. But it will require an off-chain oracle that will send a message to the contract at the right time.
S
19:55
Step
In reply to this message
1 contract address for each lottery
unlimited ticket
x number of winners(customizable during deploy)
buyers will send x number of ton(customizable during deploy) to the contract address
at 00:00 gmt/utc declare x number of winners randomly.
total received ton equally distributed to x number of winners.

is it possible with ton smart contract?
AP
19:56
Andrew Python
In reply to this message
YES
S
19:57
Step
In reply to this message
how much does it cost to develop such contract if you are available for hire?
AP
19:59
Andrew Python
In reply to this message
Unfortunately, I'm very busy.
S
20:00
Step
In reply to this message
ok no problem. if you will be available in future ping me any time.
Z
20:17
Zed
does anyone know which ports mytonctrl uses or how i can find out?
F
20:21
F
In reply to this message
netstat -ntlup
Z
20:22
Zed
oh , thank you
AR
20:24
Abhay Rana
i am getting this errror ,
after installing and making the instance of the tonWeb()
N
20:25
NDA
In reply to this message
use npm 😂
AR
20:26
Abhay Rana
In reply to this message
yes i did
20:26
In reply to this message
firstly i am getting the error of the Buffer,
and i downgraded by react-scripts to 4.0.3
N
20:28
NDA
In reply to this message
working now?)
AR
20:28
Abhay Rana
SK
20:39
Stas Krasev
Can pls somebody help with this do first trasnactions
20:39
have this error message LITE_SERVER_UNKNOWN: ca
nnot apply external message to current state : Failed to unpack account state
SK
21:02
Stas Krasev
LITE_SERVER_UNKNOWN: cannot apply external message to current state : Failed to unpack account state
pls help with this error get it when try to delpoy wallet
M
22:07
Michael
put some tons to wallet
IV
22:21
Ilia Vasilenko
hi everyone, im new at blockchain. And the question is: how to setup environment for development on ton
2 July 2022
00:09
Deleted Account
In reply to this message
we're building a @learntx test for this purpose
IV
00:09
Ilia Vasilenko
thanks, i'll see it
00:10
Deleted Account
it releases soon and the first pack of tests will include stuff like env setup and fift knowledge check (with sources to learn from, of course)
SF
01:35
Slava Fomin
In reply to this message
What version of Node are you using?
01:37
Oh, wait. It looks like you are building with Webpack. You will probably need plugin for this.
NN
01:37
Nick Nekilov
In reply to this message
I bet it's like 12 or so. It's needed to use a newer one so that operator "?" would be available.
SF
01:38
Slava Fomin
Are you using Webpack 4?
01:52
This is just for devs?
AR
09:26
Abhay Rana
In reply to this message
Currently i am using webpack 5
09:26
In reply to this message
And then i downgrade to react-script to 4
Which is now giving my error on other Library
·
09:55
··• Misha is typing
Hello everyone!

I've been looking a lot but still couldn't find a doc or example of receiving TONs in telegram bot. I googled with site: in bots api and ton docs websites, but no result. The only official mention of this feature I could find is this tweet by ton_blockchain.

Can somebody help me with pointing out resources I can use?
HB
10:06
Howitzer Battery
Proof of work of miners is the best and most secure decentralized system,
t
10:09
talkol
In reply to this message
The way something like that would work is that you need to open a personal TON wallet. Just choose any wallet app you like - TonKeeper/TonHub/etc and open. You will then have a TON address.

Now you need to write a bot that lets users send TON to this address.

One way to do that would be via showing the users a ton://transfer deep link and when the user click on this link, this will trigger their wallet to show up.
10:10
The deep link would include your wallet address and the amount
10:11
Before you start with a bot, you can just play with the deep link manually until it works.. so the bot here doesn’t do anything really special regarding TON.. it just displays a link
·
10:39
··• Misha is typing
In reply to this message
This is the only possible workflow that came to my mind, but I’m looking for a way to call smart contracts and sign off-chain transactions using user’s wallet in Telegram

For example, we have a bot that lets a user to open a payment channel between the user and the bot’s wallet by calling a smart contract. And after that user can use their key to sign off-chain transactions generated by this bot

I was looking for a way to implement this using tonweb inside a webPage from Bot API. But I couldn’t find any examples or clues in the docs on how to connect a wallet to webPage

I had an idea of generating a wallet and storing its keys in localStorage of the webPage, but it is too unreliable to work in a real life
t
10:42
talkol
Payment channels is very experimental and new.. are you sure it’s required for your first version?

Can’t you simplify and avoid payment channels and just have the user send regular transactions?

How many transactions are we talking about per user? Hundreds? Payment channels only make sense in these extreme scales
·
10:45
··• Misha is typing
In reply to this message
Ahaha, I wish I could avoid using them, but it’s required to use payment channels in TON’s hackathon in which I’m participating now 🙃
t
10:47
talkol
Ahh.. well I haven’t played with payment channels yet since it’s just recently released.

I will give you one tip though.. for the user wallet, use the Chrome extension. This is the easiest wallet to show off chain signatures with
10:47
Off chain signatures with the mobile wallets is more complicated and I’m not actually sure is fully working
10:49
This would mean that in your use case, the bot wouldn’t run on Telegram mobile app, it will run on a desktop browser with telegram running in the browser
10:50
I think anything else, like a full mobile flow inside the Telegram mobile app would be too difficult to do during a short hackathon
10:51
Did you find any official payment channels example that works? Your best bet would be to tweak this example
10:52
If you have some example, send me the link and I’ll help you think how to convert it to your use case
·
10:54
··• Misha is typing
In reply to this message
The only official example is https://github.com/toncenter/payment-channels-example/blob/main/index.js, but it has nothing to do with telegram 🙁
10:57
In reply to this message
Most likely I won't be able to make the full implementation, but I wanted to put ideal workflow in presentation. I think I'll just put some assumptions about APIs that do not exist yet
t
10:58
talkol
Let me read the example, one sec
11:04
Ok, the flow in the example uses a local wallet in JavaScript - meaning a wallet running on some NodeJs server where you can put the private key inside the code

This works for example for the bot side. Since the bot wallet is operated by some NodeJs server

The problem with the example is that this wallet type doesn’t work for users.. users will either use a mobile wallet app (TonKeeper/TonHub) or the Chrome Extension.

So my first question is do you want to try to make the example work in an actual user wallet, or just stick with the given wallet example?
·
11:09
··• Misha is typing
In reply to this message
I'm working on an MVP with wallets generated on server-side, but as a real-life implementation i'd like to invent a flow which would envovle an actual wallet
r
11:10
r̛̙͉̺͛͂e͛̒ ͙̜̻̮̝̍͐Ơ̻̜̝͚̱̖͂̾͒͒̆̈͟i̦̼̙̲̟̽͑͛̉̚͝ͅL͓̪͗̎
Hey isn't it a bug in ton

My balance before: 2.214044861
So create payment channels(api: await fromWalletA.deploy().send(toNano('0.05'));) has commission -> -0.05
After channels commission return back -> +0,047699 (why not 0.05 cause a network fee and contract fee?)
My balance after 2.163336853
So 2.214044861 - 2.163336853 = 0.050708...
So the question, how this work and why i get less money?

Address: EQBodCl1sNqJvUBMQhz9WWFRSUmpI57eOl_A4IjVqLED6vd5

This network: https://testnet.tonscan.org
SF
11:10
Slava Fomin
In reply to this message
Optional chaining should work on Webpack 5 out of the box, because it uses a more modern JS parser. Make sure your build pipeline is up to date.
t
11:11
talkol
In reply to this message
Invent and actually implement it during the hackathon? Or just show a presentation of what it would look like?
·
11:12
··• Misha is typing
In reply to this message
just for a presentation
t
11:13
talkol
Ok, cool, the actual working code will be server side wallets. But the presentation will show flow with real wallets. That would work
SF
11:13
Slava Fomin
In reply to this message
It's probably because of the storage fee, that's getting deducted from the destination account when it receives the transaction.
r
11:14
r̛̙͉̺͛͂e͛̒ ͙̜̻̮̝̍͐Ơ̻̜̝͚̱̖͂̾͒͒̆̈͟i̦̼̙̲̟̽͑͛̉̚͝ͅL͓̪͗̎
In reply to this message
Hm, but why i don't see it in transaction list?
11:15
Sounds likes hiden fee, wich broken blockchain concept
SF
11:16
Slava Fomin
Use some advanced explorer. It will show more transaction details.
r
11:17
r̛̙͉̺͛͂e͛̒ ͙̜̻̮̝̍͐Ơ̻̜̝͚̱̖͂̾͒͒̆̈͟i̦̼̙̲̟̽͑͛̉̚͝ͅL͓̪͗̎
In reply to this message
where i can find it?
t
11:17
talkol
In reply to this message
Ok - this is what I would do:

In the actual demo - you have 2 “server-side” wallets.

One wallet runs on the NodeJs server of the bot, so the code on the server holds the private key.

Second wallet simulates the user wallet. It will run client-side in the JS code the user is running. We will put the simulation private key in the client code. This is obviously crap security but it’s just a simulation. In the presentation the client-side user wallet will be replaced with a real wallet
·
11:19
··• Misha is typing
In reply to this message
huh, looks like a good way to show the idea
11:19
thank you for your help!
SF
11:19
Slava Fomin
In reply to this message
Now you ought to add @talkol to your hackaton team 😁
t
11:19
talkol
Lol, I’ll give free advice to all hackathon participants :)
11:22
In reply to this message
And to implement this flow, you can start simple without a bot, I would add the bot part at the end

So I would start with a simple NodeJs Express project that shows a simple website. So you can develop easily in Chrome

The Express server is the bot, so its code can hold one private key.

And the page that it renders to the user holds JavaScript code, that is your user. So this client-side page with JavaScript will hold the second private key.
11:25
Once your entire demo works on this, to convert it to a Telegram bot is quite easy. Actually if you have 2 devs in your hackathon team, one could work on the Express project and make the payment channels work there.

And the other can start working parallel on converting the Express project to a Telegram bot. But this part is not related to TON at all.
11:29
If you really want to kick ass in the hackathon I recommend using glitch.com

It’s the best dev environment for hackathons, they also have a template for an Express project:

https://glitch.com/~hello-express

Glitch will remove all the headache of deploying to an actual server. So instead of just working locally, you can actually develop on a free server somewhere given by them. This will be useful when you connect to the Telegram app which doesn’t run locally
ВТ
11:30
Влад Тупичка
where i can get secret key?
AR
11:30
Abhay Rana
is paymet channel is openend by the smart contarct ?
·
11:33
··• Misha is typing
In reply to this message
no, its opened by one of the parties
AR
11:34
Abhay Rana
so this payment channel is like a p2p or websockets ?
11:35
so if this is websocket so it on the server ,
and this server is on web2 or web3
t
11:49
talkol
In reply to this message
It’s like a websocket for payments/transfers.

You set it up once between 2 parties. During the setup there is an on-chain transaction by both parties to a smart contract that does the setup.

Then you do many many transfers between the parties on the channel. This is like messages sent on the websocket. This part is completely off-chain so it’s free from gas.

And at the end, you close the channel. Similar to terminating the websocket. This part is also on-chain because the smart contract must close the channel (and do the actual final balance settlement on-chain).
AR
11:51
Abhay Rana
In reply to this message
thanks for claryfying,
thats what i am asking that the payment channel is initialized with the help of smart contract also
t
11:52
talkol
Definitely
AR
11:52
Abhay Rana
In reply to this message
so this smart contract created by the party or ton has there own default smart contract for basic payment channel
t
11:53
talkol
In reply to this message
I didn’t check but I suppose you deploy your own smart contract
SK
11:53
Stas Krasev
Hi how many signatures i can create in payment channel?
t
11:54
talkol
So both parties must agree on the smart contract code and it’s probably part of the tonweb library since the client library does the deployment for you on setup
11:54
TON usually works this way because it’s ultra sharded. This is how I would have implemented it
11:59
In reply to this message
The client library deploys the smart contract on setup from a quick glance - here is the compiled byte code of this contract in the library:

https://github.com/toncenter/tonweb/blob/master/src/contract/payments/PaymentChannel.js#L41
12:04
Another interesting thing to know is that the entire logic of payment channels is just in this smart contract and the client library. I don’t believe TON node core was changed to add any special support. This feature could have been added to TON by any third party
12:10
In reply to this message
For the presentation part, this is what I would do:

The client-side user simulation should show a fake confirmation dialog in JS every time the user needs to sign something (sending a tx or signing off-chain message). This simulates the real wallet asking user for permission to use their private key.

Then I would make a screen capture video of the Telegram bot flow in Telegram mobile app.

Then edit the captured video, and replace the frames where the fake dialog is shown with real approval dialog frames from a mobile wallet like TonKeeper that I would record separately.

This would give a very good indication of what the real flow should feel like.
12:19
And one final tip for all hackathon participants, if I had to create a quick Telegram bot during a hackathon - I would definitely use glitch.com for that

This would give you free hassle free hosting for your bot and let you concentrate on the code, not the devops

https://support.glitch.com/t/host-telegram-bots-at-glitch/34865

Quick search found a tutorial, never tested it though
AR
14:35
Aleksei Rutkovskii
@talkol Hi
What is get method to get state?
Or where can I find info?
14:46
Since there is an add method, is there "substract" method?
SF
14:48
Slava Fomin
In reply to this message
sub?
14:49
GitHub - indutny/bn.js: BigNum in pure javascript
https://github.com/indutny/bn.js#arithmetics
14:55
Deleted Account
Hello, is there any library that allows you to work with TON tokens?
SF
15:06
Slava Fomin
In reply to this message
Hey. See the pinned message.
15:12
Deleted Account
In reply to this message
Which of these libraries will work better with tokens?
SF
15:14
Slava Fomin
I believe TonWeb is the most up to date. It's not feature complete, but it should have the most common things.
D|
15:35
DeEnabler | Myosin.xyz
does jettons compatible with tonkeeper?
15:40
Deleted Account
In reply to this message
Not yet, but will be in the next update
D|
15:41
DeEnabler | Myosin.xyz
In reply to this message
Thanks, any estimation to when it will happen?
15:44
Deleted Account
In reply to this message
Ask it in the Tonkeeper chat, not here
E
16:05
Eugene
Hey Guys. Anyone who is interested in learning about web3, blockchain, nft for TON in particular

https://t.me/hackaton2022?livestream
f
16:14
fraffo
image_2022-07-02_15-14-50.png
Not included, change data exporting settings to download.
25.3 KB
hello, when i send a payment boc created with fift -s wallet.fif(or analogous), whether the source smc has sufficient founds or not, what i get as response from the liteclient or tonlibjson is:
[ 3][t 2][2022-07-02 13:09:03.344361685][lite-client.cpp:1160][!testnode]   external message status is 1
But in one case we get the funds transferred, in the other we end just with and external message which consumed some grams in the source smc.

How can i distinguish this two situations with the liteClient or with tonlibjson?
AT
18:24
Andrey Tvorozhkov
In reply to this message
Have you deployed wallet? Can you share contract address?

By the way, have you checked out toncli?
t
19:11
talkol
In reply to this message
There’s a function called getChannelState that you can call: https://github.com/toncenter/tonweb/blob/master/src/contract/payments/PaymentChannel.js#L331

You can see the rest of the methods in this source file
f
19:26
fraffo
In reply to this message
Receiving wallet Is still not deployed, as soon i'm at home i'll share adrresses
д
20:26
даня
Hey guys
20:27
If anyone could help me with this i would be very grateful
Y
20:36
Yuna
In the previous series, in order to participate in the competition, we sent the codes to the Telegram bot for confirmation, and in the previous series, we posted our project on one of the Telegram Github pages.
Where should we send this time?
д
20:38
даня
In reply to this message
gh pages is fine, although you can use any VPS i think
f
21:18
fraffo
In reply to this message
i'm on testnet, this is where payments originates from
https://testnet.ton.sh/address/kQBSROLMye2wWpt_8ia8JcrAMi6hnR7gwiaMTc8AQcZb9lFf
as you can see i made a 0.1 TON payment, but payments off the balance terminates in an external message to the wallet then nothing
n
21:33
nortimg
In reply to this message
+
21:35
In reply to this message
Have you found out how to use user's wallet (from extension or mobile wallet like Tonkeeper) private key for signing message or to make a public key from it?
SF
21:35
Slava Fomin
In reply to this message
Is the target account initialized?
SF
21:46
Slava Fomin
In reply to this message
^
21:52
Deleted Account
If anyone struggles with Fift smart contracts, we just released a @learntx bot that has a Fift test (with materials you can learn from). Upon completing the test you'll also receive $LRNT jettons.
3 July 2022
TO
09:47
Tim O'Brien
👋 just landed and trying to orient myself
09:49
Reading the whitepaper - fascinating 2D blockchains - but I am a bit hardcore - I would like to know where in the code parameters are set that determines max size of transaction, max gas , how gas is calculated, max data sent to a transaction …
09:50
Any help would be greatly appreciated
f
10:18
fraffo
In reply to this message
what should be the difference? How do I ensure that a payment was correctly made?
Sure, I could use the balance and the seqno, assuming that with a correct balance and a seqno when the message gets processed in the blockchain it resulsts in a correct payment, but again I'm searching for a programmatic way to be sure of this.
10:20
In reply to this message
I checked out toncli, but i'm trying to build up a python framework using pyTON and pytonlib for my projects
ВТ
10:22
Влад Тупичка
Why is this transaction empty in the transaction list?

*js, tonweb
T
10:46
TW/ VistaLabs
In reply to this message
hey, did you get a solution for this?
K
15:28
Kudajawa
Hi any suggestion on documentation or example on integrating simple transaction (send payment) on web using tonkeeper ? Like getgems.io payment
M
17:40
Mike
Hi, what are the options for stacking / liq mining on TON blockchain: how to get yield? Checked ton.org, but didn't find any lending protocols / DEXes / yield aggregators.
4 July 2022
K
12:06
Kudajawa
Hi, anyway I can use TON Login feature like getgems.io ? any documentation I can read on?
M
12:11
Mr 
Hello, where i can see NFT metadata standart for TON ?
T
12:14
TON technical overview
In reply to this message
M
12:16
Mr 
Its all data needs from me for 1.json of my NFT. How i can add traits to my NFT ?
12:20
See the get_nft_content section.
M
12:22
Mr 
In reply to this message
thnx
wn
13:20
weedo neesm
hello, how much be cost dev contract for ton nft collection 10k pics?
M
13:31
Mr 
In reply to this message
200 tons
wn
13:32
weedo neesm
In reply to this message
can i look your github or smth?
M
13:33
Mr 
In reply to this message
i dont have
F
14:18
Francky
Please can someone teach me how to build a dex like Uniswap on Ton network? Any documentation and help will be greatly appreciated
AS
14:55
Aleksandr Shepelev
In reply to this message
There is no dex on TON in production yet

So, it is complicated and no manuals exist
f
15:20
fraffo
In reply to this message
Helpo
AP
19:57
Andrey Pfau
M
20:05
Mr 
How to change ton keeper to testnet?
AP
20:09
Andrey Pfau
In reply to this message
5 taps on version
M
20:11
Mr 
In reply to this message
Thnx
R
21:31
Reus
Hi everyone! Is there any Frontend developers on TON? Pls dm me
5 July 2022
D
01:50
Dude
Hey guys, tell to me please, where can I see instructions about make custom jettons? Thanks)
S
01:54
Silvio
In reply to this message
D
01:54
Dude
In reply to this message
No-no, I need by code) thnx)
S
01:56
Silvio
In reply to this message
D
02:40
Dude
In reply to this message
Why can’t see this tokens it Tonkeeper?
S
02:41
Silvio
In reply to this message
Do you have the last version?
D
02:41
Dude
In reply to this message
Yep
02:42
iOS
S
02:44
Silvio
In reply to this message
Maybe compatibilitys problems. I dont know what is happens. I am not developer.
D
02:44
Dude
In reply to this message
Ok, thanks)
04:27
Deleted Account
we'll roll out a pack of new tech related ton tests on @learntx soon, any topics worth covering?
R
08:02
Reus
Hi everyone! Is there any Frontend developers on TON? Pls dm me
t
10:40
talkol
In reply to this message
The Jetton deployer (jetton.live) is also by code, please read its GitHub repo, it’s very extensive:

https://github.com/ton-defi-org/jetton-deployer-contracts#option-2-edit-the-jetton-code-to-add-a-custom-token-behavior
D
10:42
Dude
In reply to this message
But I can’t see jettons in Tonkeeper, which was created in this service
t
10:43
talkol
In reply to this message
Please also see in the README, TonKeeper doesn’t support yet jettons with metadata stored on-chain since they ported their NFT code (which stores data off-chain). Please open an issue with them. It needs to be fixed soon since Jettons with metadata off-chain are less safe for users
10:44
Jettons are a very new feature in block explorers and wallets, we need to work collectively on their proper support
D
10:59
Dude
In reply to this message
Ok, just will wait when they include this. Thanks, support Tonkeeper answer to me about this too
Е
12:04
Евгений
Hey there. I'd like to start writing smartcontracts for TON. But I don't have any experience in func. Is it possible to do so in solidity ? Is there any compiler for that ?
SF
12:10
Slava Fomin
In reply to this message
Hey! No, you will have to learn funC and the details of TON implementation. It differs from EVM at some crucial points.
12:11
In reply to this message
Also, read from here:
https://t.me/tondev_eng/7274
o
12:36
oxlti.qube
In reply to this message
You can use Everscale compilators for TVM
SF
13:21
Slava Fomin
In reply to this message
Which is highly discouraged.
AP
15:11
Andrey Pfau
t
talkol 28.06.2022 02:07:20
Some of the architecture of TON is very different than Ethereum so Solidity is not a good fit. For example, calls between contracts in TON are asynchronous (happen on different blocks as messages) and are not atomic like on EVM. The amount of hacks everscale did to make it work is crazy and it's pretty not secure so the foundation chose not to support this concept
15:11
Everscale Solidity is not secure because it ignores TON architecture by forcing EVM concepts. This approach will create vulnerabilities in your contracts. You should learn how TON works and design for it. You can't just take Ethereum code and expect it to "work". Most Ethereum contracts assume that calls between contracts are atomic and if you break this assumption they will be vulnerable to attacks. Also, TON doesn't support unbounded data structures like Ethereum so if you create a hash table that can grow indefinitely, your contract can be attacked. Your contract in this case needs to be sharded to multiple child contracts like Jetton (TON's "ERC20" works). It's really recommended to learn FunC and TON architecture.
AP
15:11
Andrey Pfau
D
15:19
Dario
In reply to this message
The main problem is that func doesn't have major functionality of modern programming languages. Even unit testing is a pain
15:20
A solitidy-like language could be useful for smart contract developers that came from evm, but i agree that a 1to1 language is not good for the ecosystem
AP
15:21
Andrey Pfau
In reply to this message
currently being developed tact-lang.org as a high-level language
D
15:21
Dario
In reply to this message
Yes i know it, its a good project
AP
15:21
Andrey Pfau
In reply to this message
o
16:25
oxlti.qube
In reply to this message
I knew it, but since you said that Everscale compilators are compatible with TON I recommend sometimes to use EverOs Compilators
AP
16:26
Andrey Pfau
In reply to this message
I said about TVM. Compatible with TVM != Compatible with TON
o
16:26
oxlti.qube
In reply to this message
oh oke, I am sorry
PF
17:29
Pablo Fuentes
Hi, somebody found this method?
t
18:11
talkol
t
talkol 05.07.2022 17:56:48
Community Jetton deployer - new features

https://jetton.live

We implemented another round of feedback, thank you!

1. On-chain metadata was fixed to support TIP-64. You can easily fix existing tokens to the new format through the tool.

2. You can now mint more tokens through the tool after deployment.

3. You can now see your token balance and transfer Jettons to others directly through the tool.

Thanks for the feedback!
AP
18:38
Andrew Python
In reply to this message
on-chain metadata is great..... but there is almost no support for it anywhere
t
18:39
talkol
Jettons are just being added to wallets. Do you prefer they all get published in unsafe ways? Or you prefer to sort out the wallets?
SH
18:39
Seitaro Higuchi
In reply to this message
This is the way how it will start adoption
t
18:40
talkol
We will add option to put metadata on IPFS if you want, but we recommend against it. It will haunt the purchasers for years over parsing on-chain that can be added in 50 lines of code to wallets
AP
18:41
Andrew Python
In reply to this message
No, everything is fine) I just haven't made support for on-chain metadata in the wallet I'm developing yet 😅 (tonhold)
t
18:42
talkol
In reply to this message
Do you want us to add IPFS support? If admin doesn’t revoke admin we can add migrate option that will move the data on-chain later
H
23:30
Hossein
Introduce ton price api based on nanoton
6 July 2022
PF
07:42
Pablo Fuentes
Anyone can create a jetton? Even an ETH token how to know which one is the official one?
GH
09:13
GR Han
In reply to this message
Hi there, is it possible to test this tool on testnet also?
s
10:15
shahar
In reply to this message
At the moment it is not supported, testnets are problematic in their rpc api availability
10:15
You can open an issue though
GH
10:18
GR Han
thx for reply!
I'll mint my own jetton directly at the moment due to tight timeline :)
It would be good to have testnet supports for new comming developers like me in near time!
T
10:22
TON technical overview
In reply to this message
Is it? After restart in May we closely monitor both testnet and toncenter api and it looks like testnet works fine.
s
10:26
shahar
in June we had outages, and also the rate limit on testnet is problematic (we wouldn’t want to expose an api key in the client). by testnet are you referrring to tonwhales sandbox or toncenter testnet?
T
10:42
TON technical overview
In reply to this message
Toncenter testnet
t
11:01
talkol
In reply to this message
It's a little funny but the best practice in our opinion is not to use testnets at all during the development process. When we run our tests, we use ton-contract-executor to run them locally and see that everything works. And then to see it with our own eyes, we skip directly to testing on mainnet. The costs are so low, so deploying "test" contracts to mainnet will cost you a few cents.
11:02
If you look at other ecosystems like Ethereum, the concept of testnet disappeared almost completely. Most people only use local unit tests and then test versions on mainnet.
11:08
In reply to this message
A token name or symbol is not unique. Meaning multiple people can deploy Jettons with the exact same name. The only unique factor is the address. So when someone tells you they have the "real" token, you should compare the address and see that it matches what you know to be the real address. This is not specific behavior to TON, every other blockchain ecosystem in the world works this way.
SH
11:11
Seitaro Higuchi
In reply to this message
Well, I believe it is because it is very easy to run local testnet (ganache), not because unit tests are enough. We also have MyLocalTON setup, but it is not yet that handy and deeply integrated into testing frameworks.
t
11:16
talkol
In reply to this message
I think testnets disappeared because they can't be maintained. Since smart contracts can interact and send messages to each other, for a proper E2E test you need the other projects deployed to testnet too. Consider your contract using somebody else's AMM contract to perform a swap.

This requires insane discipline. Every developer must maintain testnet versions of all important infrastructure contracts. This doesn't work. So the testnet versions became stale or non-existent, and then the whole point of the E2E test falls.

Testing with something like ton-contract-executor is powerful enough for pretty much anything. It can easily be imporoved to bring datacells from mainnet to let you run integration tests locally in a "local" fork.

And when you're finished with that, it's much simpler to deploy a staging version of your contract to mainnet to see a proper E2E test in the real world. With gas so low, there's really no reason to waste time on testnet.
AT
11:20
Andrey Tvorozhkov
We run own network with ton--k8s for testing of deploying 60k+ smart contracts and other staff.

If someone wants to, they can just reproduce our experience with docker-compose images there. It's pretty simple to run own TON network
t
11:21
talkol
Ganache implementation is actually more similar to ton-contract-executor than to MyLocalTON. It relies on ethereumjs which is a JS implementation of just the EVM, it doesn't really implement the rest of the blockchain. In the same way, ton-contract-executor is just the TVM ported to WASM.
11:22
In my eyes, MyLocalTON is redundant and instead of improving it, we should focus our efforts on ton-contract-executor.
AT
11:23
Andrey Tvorozhkov
In reply to this message
I don't think ton-contract-executor will help in testing complex systems where more than 4 different smart contracts interact with each other. The C5 register is formatted inside the validator-engine and this is quite a big problem.
11:24
In reply to this message
After passing the unit tests, you still have to watch how it works on the network.
SH
11:24
Seitaro Higuchi
In reply to this message
The problem which talkol talking about is mirroring existing contracts to your local testnet. It is indeed not that simple. Three years ago I spent something like few days to correctly deploy uniswap (! something covered with docs and tests as much as possible in ethereum) locally for tests interaction with it.
So solutions, which can "hijack" deployed instances from mainnet are quite handy.
SF
11:24
Slava Fomin
I believe testnet is a better fit for staging/QA environments, where you can interact with the product manually or give your users ability to test integration with your service.
AT
11:26
Andrey Tvorozhkov
In reply to this message
After we finish the indexer, we can simply solve this problem ;)
t
11:26
talkol
In reply to this message
We are using ton-contract-executor for complex multi contract tests in tonswap: https://github.com/tonswap/tonswap-contracts/blob/master/test/amm-minter.spec.ts

ton-contract-executor just needs a little love and adding a thin layer for the multi contract environment around it, so this would be even easier for developers.

I don't remember what C5 does, let me look it up
11:30
In reply to this message
Exactly, only the mainnet contracts will have the data you need for proper tests, like existing liquidity in the pairs for example. To mock all of this in testnet would take too much time. This is why focusing our infra efforts on this mirroring mainnet direction my best bet. As far as I understand ton this should be quite easy. Even easier than Ethereum. When the TVM reads the datacell, we can just mirror this via RPC to bring the datacell from mainnet
AT
11:33
Andrey Tvorozhkov
It seems to me it will be possible to copy and all the necessary contracts / data from mainnet to ownnet at the time of CI/CD. I think it's pretty easy to put them in gen-zerostate.fif

I even like this idea. Perhaps in the future we will experiment with this :)
t
11:33
talkol
@Narek has a beautiful example of this working in his README:

"Here is an example of creating local copy of existing wallet smart contract from the network deployed at EQD4FPq-PRDieyQKkizFTRtSDyucUIqrj0v_zXJmqaDp6_0t address and getting it's seq:"

https://github.com/Naltox/ton-contract-executor/blob/main/README.md
SH
11:34
Seitaro Higuchi
In reply to this message
Yeah, TVM locality here is a strong advantage.
t
11:34
talkol
In reply to this message
the best way would be to do it like ganache/hardhat. Do it lazily during runtime and maintain a local cache during the test so you only access the RPC once per cell during the test
11:35
@rulon since ton-contract-executor is so important, maybe it should be moved to the core repos?
AT
11:35
Andrey Tvorozhkov
In reply to this message
I think I'm interested in tests in which 60k+ smart contracts are copied locally 🤔
t
11:36
talkol
In reply to this message
Then use the lazy approach and do caching on disk between tests. It will be much simpler to implement and understand and get you the same result.
11:39
This can actually be added in "5 minutes" if you have the lazy approach working on RPC. You just replace the RPC endpoint with a simple proxy that caches the requests on disk. Much more modular and you get all the features you want for free with zero maintenance.
11:41
If you want to invest more than 5 minutes, then I think the best design would be to make ton-contract-executor a little more modular and create the local disk cache as part of it. With the ability to place all local disk cache in a single file/directory and then input this file for each test. So you can have different staging environemnts in parallel.
11:46
In reply to this message
I'm not an expert on ton-contract-executor, but from a quick read just now, C5 is the output actions. I think @Narek is already handling it: https://github.com/Naltox/ton-contract-executor/blob/main/src/executor/executor.ts#L26
T
12:20
TON Jobs
T
TON Jobs 06.07.2022 12:01:35
TON Foundation team is looking for a Smart-contract unit testing developer

Job Functions: Software Engineering, IT
Employment Types: Full-time
Locations: Remote

The TON Foundation is a non-incorporated, nonprofit association of developers and enthusiasts that exists to advance The Open Network blockchain and related products.

Responsibilities:
* Develop tests for TON smart-contracts on funC via toncli
* Develop tests for TON smart-contracts on JS/TS via ton-contract-executor
* Help with design of advanced testing systems a-la hardhat

Advantages:
* Opportunity to shape the future of TON smart-contract development and core governance smart-contracts
* Exponentially growing set of challenges 🙂

What we expect from you:
* The mindset of a code vulnerability hunter


Please send your resumes with a short summary of your technical experience to hr@ton.org
t
13:05
talkol
In reply to this message
When this hardhat environment is being designed, I’ll be very much interested to be involved in it and in contributing to it from outside
OB
14:49
Oleg Baranov
New version of TON golang library, v0.9.0!
https://github.com/xssnick/tonutils-go

Changelog:
1. Added LookupBlock method
2. Added GetOneTransaction method
3. Added GetAllShardsInfo method
4. Block scan example
5. Renamed GetBlockInfo to GetMasterchainInfo
6. Grams parse methods refactored
7. More code rewrited to TLB loader
8. Dict parser changed to fit FunC implementation
9. Added transformation functionality to TLB loader
10. Removed tlb.TxHash, replaced to simple []byte
11. Increased test coverage

Block scanner example:
https://github.com/xssnick/tonutils-go/blob/master/example/block-scan/main.go
T
15:16
Teegarden
Looking for talent dev who wanna changing world, write me 🤝
SK
18:15
Shawn Kovac
In reply to this message
why?