10 February 2022
AT
17:48
Andrey Tvorozhkov
In reply to this message
Инт ограничен 32 битами
17:48
Deleted Account
In reply to this message
17:49
In reply to this message
Это, безусловно, уменьшает нагрузку на сеть, если будет много пользователей, у которых на каждом заходе в свой кошелек будет такой перебор
c
17:50
cryshado
In reply to this message
это все старые не актуальные исходники, в тонвебе стоит 'TON default seed' и мнемоника из тонвеба подходит к кошельку
AT
17:50
Andrey Tvorozhkov
In reply to this message
Это не нужно делать при каждом заходе
17:50
Deleted Account
In reply to this message
А если пользователь пользовался другим кошельком? Вдруг где-то появился баланс положительный?
17:51
In reply to this message
Вполне работающие и приложение лежит в AppStore.
AT
17:51
Andrey Tvorozhkov
In reply to this message
Я не понимаю к чему этот спор
17:51
Это факт, сейчас так. Это такая архитектура
17:51
По другому не сделать)
17:51
In reply to this message
Взять максимальный
17:52
Deleted Account
Да, просто, я думал, что сообщество должно упростить себе жизнь и прийти к какому-то стандарту, а не перебирать весь инт. )
D
17:52
DvDm
In reply to this message
😕
AT
17:52
Andrey Tvorozhkov
In reply to this message
Переходы между кошельками зло
F
17:52
F
In reply to this message
Ну вот же, чем вам не стандарт? 😏
AT
17:52
Andrey Tvorozhkov
Твой приватник должен быть у тебя
17:52
И все
17:52
Deleted Account
In reply to this message
)))))))))))))))))))))
c
17:52
cryshado
In reply to this message
да але, на гитхабе говорю старое - в аппсторе новое 😃
AT
17:52
Andrey Tvorozhkov
Когда ты даешь его всем на свете - деньги уже не твои
17:53
Deleted Account
In reply to this message
Вы о Tonkeeper или Wallet?
c
17:53
cryshado
In reply to this message
о Wallet, тонкипер вообще с клосед сурс: 🤢
17:54
Deleted Account
In reply to this message
Web3 - это когда пользователь не должен быть ограничен какой-то мини-экосистемой из-за прихоти разработчиков в числах, ну камон
D
17:54
DvDm
In reply to this message
Круто было бы иметь возможность импортить приватник из кошелька и экспортировать в другой.
точнее наоборот xD
17:54
Deleted Account
In reply to this message
Вы выкладывали новую версию?
17:54
Я собирал локально, проект ничем не отличается
AP
17:55
Andrew Python
сделайте кто-нибудь кошелёк с возможностью входа через приватник, как в MEW
17:55
Ещё вопрос. Можно ли в ТОНе оффлайн подписывать транзакцию, а потом подписанную отправлять?
c
17:58
cryshado
In reply to this message
да
17:58
In reply to this message
скоро будет)
AT
18:01
Andrey Tvorozhkov
In reply to this message
Так же деплой кошелька в фифте работает
18:01
Там подписываются первый 512 по-моему
18:01
Это init message когда делается
18:02
А, вообще все транзакции в кошельке так работают ...
18:02
Которые wallet.fif
18:42
Deleted Account
Пытаюсь в tonweb инициализировать не дефолтный кошелек, а V3R2 например, что я де лаю не так,

new tonweb.wallet.all.v3R2({publicKey: keyPair.publicKey})

error:
node_modules/tonweb/src/contract/wallet/WalletContractV3.js:65
options.code = Cell.oneFromBoc("B5EE9C724101010100710000DEFF0020DD2082014C97BA218201339CBAB19F71B0ED44D0D31FD31F31D70BFFE304E0A4F2608308D71820D31FD31FD31FF82313BBF263ED44D0D31FD31FD3FFD15132BAF2A15144BAF2A204F901541055F910F2A3F8009320D74A96D307D402FB00E8D101A4C8CB1FCB1FCBFFC9ED5410BD6DAD");
AT
18:42
Andrey Tvorozhkov
In reply to this message
Гы
18:45
Deleted Account
In reply to this message
🤡🔫
AT
18:49
Andrey Tvorozhkov
In reply to this message
Hi! Thanks for using ton web. JavaScript definitely is language to create and deploy smart contracts.

We have solution for your problem:


rm -rf /usr/bin/JavaScript
pip install toncli
toncli start wallet
cd wallet
toncli deploy


I hope this will work for you. Thanks!
c
18:50
cryshado
In reply to this message
ответ на вопрос, что ты делаешь не так: используешь JS
18:50
а если серьёзно, то лучше фифтом или чем-то ещё сгенерь, если тебе не обязательно юзать жс
18:51
Deleted Account
In reply to this message
мне нужен банальный сервис который будет создавать кошельки и трансферить с них тоны для себя

кажется на js с тонвебом это легче всего сделать
AT
18:51
Andrey Tvorozhkov
In reply to this message
Возьми бок
18:51
Просто
18:52
Зачем чето мутить
18:52
Deleted Account
больше всего в этой жизни я ненавижу боки
c
18:53
cryshado
In reply to this message
скоро будет этап принятия, будешь говорить, что BOC топ и вообще оптимальный способ сериализации данных
18:53
In reply to this message
ну мне проще было хайлоад валет апи сделать через вызов фифта
18:54
Deleted Account
In reply to this message
желание клепать боки умерло во мне, когда по гайду у меня не получилось отправить тоны
https://ton.org/docs/#/howto/step-by-step
18:55
In reply to this message
о, у тебя же на го есть воллет, попробую его заюзать
c
18:55
cryshado
In reply to this message
давай разбирать, что не получилось, и что ты делал
Fift everywhere 💪
18:55
In reply to this message
да
18:55
Deleted Account
In reply to this message
или его нельзя импоритровать и использовать в коде?
c
18:56
cryshado
In reply to this message
ну можно поднять как апи рядом и дергать, ну или взять кусок кода и юзать
18:56
там не сложный код очень
18:57
Deleted Account
@f_closer ты можешь эмоции включить в этом чате? имхо мастхэв
c
18:57
cryshado
In reply to this message
я ему уже писал об этом, он сказал, что может ток владелец чата - ему кстати вроде написали
18:57
Deleted Account
In reply to this message
fuck
c
18:58
cryshado
In reply to this message
🙁
AP
19:01
Andrey Pfau
ну эмодзи тож норм
c
19:01
cryshado
In reply to this message
эмоции компактнее будут, особенно, когда хочется человеку оставить респект много кому
AP
19:03
Andrew Python
In reply to this message
+ (плохой пример оставления респектов :D)
NM
19:51
Nick MMM
Как расшифровать хэш, возвращенный Gettransactions API

API Hash
oVK1kJUl3/fWE8J9dFbbpu889DSd4KEXzREyiq0O4Lc=

Explorer Hash
a152b5909525dff7d613c27d7456dba6ef3cf4349de0a117cd11328aad0ee0b7
19:51
Deleted Account
In reply to this message
base64 -> hex
NM
20:28
Nick MMM
In reply to this message
Спасибо
AP
20:54
Andrew Python
Реально ли реверс-инжинирить смарт-контракты тона?
AT
20:57
Andrey Tvorozhkov
А что тут реверс инженерить?)
20:57
Что хочешь достать))
20:57
In reply to this message
Это дерево клеток
AP
20:58
Andrew Python
In reply to this message
В клетках байт-код?
RD
20:58
Roman Deev
In reply to this message
можно проверить код смарта https://verifier.tonsc.org
AT
20:58
Andrey Tvorozhkov
Нет, в клетках просто байтики
20:58
Чем правее клетка - тем больше вложенность
20:58
Каждая клетка состоит из данных (битов) и ссылок на другие клетки
20:58
Это и есть bag of cells
AP
20:59
Andrew Python
In reply to this message
полезная фича
AT
20:59
Andrey Tvorozhkov
In reply to this message
x{<hex-data>}
20:59
Это валидная команда в фифте
A
20:59
Andrei
In reply to this message
Реально, но никто этого не делал пока
21:00
И вряд ли будет нужда, так как контракты обычно opensource
AT
21:00
Andrey Tvorozhkov
In reply to this message
Так а что там делать? Разве не достаточно взять ASM команды и пройтись по ним?))
21:00
Или так не работает?
AP
21:01
Andrew Python
In reply to this message
Вот мне примерно это и интересно
AT
21:02
Andrey Tvorozhkov
А, видимо недостаточно)
A
21:03
Andrei
In reply to this message
Ну в целом достаточно, но надо научиться из байт-кода в ASM переводить
AP
21:19
Andrey Pfau
In reply to this message
а че там учиться
21:19
In reply to this message
вон готовая мапа, бери и переводи байты в текст
A
21:20
Andrei
In reply to this message
Некоторые команды кодируются сложнее, у них есть аргументы ещё
AT
21:21
Andrey Tvorozhkov
In reply to this message
Не, я почитал там чет сложное
21:21
In reply to this message
Оно не простоо так дерево
AP
21:21
Andrey Pfau
написать декомпилятор тона в func 🤔
21:21
а шо, звучит как идея)
AT
21:23
Andrey Tvorozhkov
😂
AP
21:24
Andrew Python
In reply to this message
Мы не хотим тебя потерять)
c
21:25
cryshado
In reply to this message
Больше его никто не видел
22:54
Deleted Account
In reply to this message
Мы как раз статью написали про это:https://gregory-wimbelson.gitbook.io/ton-cookbook/verifikaciya-koda-smart-kontrakta
МP
23:24
Миха PADLA
Добрый вечер !
Простите за врыв сюда.
Уж очень интересует

Ведётся ли работа в плане индексации? Очень этого не хватает.

Поисковик нам короче нужен. ОЧЕНЬ ОЧЕНЬ
11 February 2022
I
00:16
Isaac
In reply to this message
Чел ты так беспалевно весь день по чатам ходишь с этой ссылкой

Сразу видно почерк фритона)
00:17
In reply to this message
А зачем они вообще нужны? Не технической ни маркетинговой части от оригинала не осталось
00:18
Уже начали свои сервисы на оригинальный TON переключать и ходят спамят по чатам…
F
00:18
F
Спам удалил, просьба не обсуждать другие проекты)
c
00:19
cryshado
In reply to this message
+
I
00:19
Isaac
In reply to this message
👍
AM
00:20
Alexander Mamaev
In reply to this message
поисковик чего?
МP
00:22
Миха PADLA
In reply to this message
Всего.... Внутри телеги
(А не только названия чата)
Хочу "Google" внутри телеграма
AM
00:23
Alexander Mamaev
причем тут телеграм
00:23
это чат про блокчейн
МP
00:24
Миха PADLA
In reply to this message
Даже внутри блокчейна
Не очень хотел тут писать это ну ладно
Примерно чего хочет the graph
AM
00:25
Alexander Mamaev
ну эксплореры есть, что еще надо
МP
00:25
Миха PADLA
In reply to this message
Простите не видел еще
AM
00:26
Alexander Mamaev
МP
00:27
Миха PADLA
In reply to this message
Спасибо
Увидел 👍🙏
NA
02:24
Nikita Aleksandrovich
Всем привет, подскажите на валидатора, сколько лучше брать оперативы и какой? Хочу сделать сборку из комплектующих, а не готовый брать
02:25
32 или 64?
KT
06:09
Kay Tran
Hello i have questions about cashout with ton.org/bridge
06:11
After transfer 10 Ton => Ethereum and i not receive anything from MetaMask wallet
D
06:33
Daniil
In reply to this message
I don't think this is the right chat for such questions
KT
06:41
Kay Tran
In reply to this message
Do you know where Ton costumer support?
H
06:42
Hartmann D.
In reply to this message
KT
06:43
Kay Tran
In reply to this message
Thank you so much
СВ
08:23
Сергей В
А в чем смысл вот таких контрактов?
В них нет кода? но на них есть ТОН

https://explorer.toncoin.org/account?account=0%3A974bd685192054ce5b5209a333a70d658cbd99808795b465a57822eadcebf320
AF
10:02
Anton F
In reply to this message
Это просто неинициализированный контракт - код будет добавлен только при первом исходящем сообщении. Смысл в том, что для того чтобы задеплоить контракт, нужно заплатить за газ, а для этого нужен хоть какой-то баланс
СВ
10:03
Сергей В
In reply to this message
Но там бывает по 100 тонов :)
как-то расточительно)
AF
10:08
Anton F
In reply to this message
Много пользователей, что просто холдят тоны, не делают исходящих транзакций и их кошельки так и остаются неинициализированными. Никто не запрещает, но иногда с этим бывают проблемы, так как чтобы потом получить доступ к монетам, нужно знать какой именно код контракта должен был быть использован
СВ
10:12
Сергей В
In reply to this message
Блин, не понимаю как это работает :)
Если там нет контракта, то можно любой код контракта использовать?
Получается там же нет ни даты ни кода?
или это не так работает?
10:16
ааа дата все же есть, просто кода нет
AF
10:16
Anton F
In reply to this message
Нет, потому что для того чтобы отправить монеты на такой неинициализированный адрес, нужно этот адрес как-то рассчитать. Адреса контрактов в тоне являются хешем от их кода и данных, по этому какой угодно код потом загрузить не получится.
10:16
In reply to this message
Нет там ничего, ни данных ни кода - только баланс
СВ
10:18
Сергей В
Блин я думал адрес это паблик чейн+паблик_кей
10:19
Ладно, надо видимо задеплоить смартконтракт чтоб разобраться :)
AT
11:11
Andrey Tvorozhkov
In reply to this message
Адрес это хэш от Стейт инит клетки, куда входит код, данные и библиотеки
11:11
In reply to this message
По обычаю советую начать с https://t.me/tondev/52402
СВ
11:15
Сергей В
In reply to this message
Я думаю это слишком просто :)
toncli deploy -n testnet

Хочу начать вот от сюда)
https://ton.org/docs/#/howto/step-by-step
11:22
так, и все же. если адрес это некий хеш
то как возможен такой адрес?
nothing workchain_id:-1 address:x3333333333333333333333333333333333333333333333333333333333333333
AP
11:38
Andrey Pfau
In reply to this message
конкретно такого вида не уверен, но адреса в 2-5 кастомных символов можно “забрутфорсить” себе во владения с помощью вот этой утилиты:
https://t.me/tondev/52885
A
11:40
Andrei
In reply to this message
Осталось на гпу перенести)
11:41
Кстати можно помимо сид-фразы перебирать subwallet_id, что может ускорить процесс
11:41
Но правда кошельки дефолтный выставляют(
c
11:42
cryshado
In reply to this message
можно вообще сид фразы не брутить, а чисто контракт с set_code
11:42
и потом сразу кошелек со своим публичником заливать
11:42
In reply to this message
(((
A
11:42
Andrei
Так кошелек же ожидает, что адрес будет как у в3
c
11:42
cryshado
In reply to this message
ааа(
AF
11:44
Anton F
In reply to this message
Так как кошельки эту фичу не поддерживают, смысла их перебирать нет. На самом деле, это бы ускорило процесс в десятки раз и было бы легче перенести на видеокарту
A
11:45
Andrei
In reply to this message
Это адрес электора, он не хеш и был задан в первом блоке
T
12:04
Tambet
Hello! Sorry if this a wrong channel but is there an API endpoint where I can fetch the current TON network mining difficulty?
СВ
12:09
Сергей В
In reply to this message
ага, понятно теперь :)
AJ
12:26
Adam Johnson
Доброго дня.
Есть ли эксплорер с api, который мог бы отдать список всех транзакций по кошельку?
Нашел только один с api, но там ограничение в 10 транзакций в истории кошелька.
Заранее спасибо
А
12:27
Андрей
In reply to this message
Will most likely help you:
https://ton.org/docs/#/howto/pow-givers (get_pow_params method)
AJ
12:30
Adam Johnson
In reply to this message
Моё почтение!
S
13:47
S
Ребята привет. Подскажите пожалуйста, есть ли какие-то библиотеки на python для взаимодействий с блокчейном TON ?
AT
13:50
Andrey Tvorozhkov
In reply to this message
https://t.me/tondev/52402 CLI написан на питоне
13:50
Но это для смарт контрактов
13:51
Есть еще toncenter
13:51
Он тоже на питоне
13:51
Он вот как раз для взаимодействия
NM
14:09
Nick MMM
Как получить всю информацию о хэше одной транзакции через апи?
MP
14:18
Michael Pokrovsky
In reply to this message
А там появились предзаготовленные boc для создания трансфера например? Как например webton.js делает
AT
14:23
Andrey Tvorozhkov
In reply to this message
0_о

Тонцентер - это про то, чтобы сделать запрос в апи и получить транзакции
14:24
In reply to this message
CLI это про то, чтобы быстро и просто деплоить и взаимодействовать с контрактами
14:24
Например дебажить транзакции
14:24
In reply to this message
Тут есть команда sendboc которая автоматически создает и отправляет boc
MP
14:46
Michael Pokrovsky
In reply to this message
а тесты как можно погонять? что-то не найду
AT
14:50
Andrey Tvorozhkov
In reply to this message
Тесты в след релизе
AP
14:56
Andrey Pfau
In reply to this message
пока рано, ton sites ожидаются в 3 квартале 2022
D
15:23
Daniil
In reply to this message
Привет. Чето не хочет работать vaniton. Почти сутки не может найти адрес
AF
15:26
Anton F
In reply to this message
Наверняка ошибка в паттерне поиска
15:26
Ну и зависит от того, сколько символов вы пытаетесь найти, если больше 4-ех, оно вполне неделю может занять
D
15:26
Daniil
AF
15:27
Anton F
Много символов, попробуйте с .*dan.* начать
D
15:27
Daniil
In reply to this message
такие есть
15:27
я пробовал
AF
15:28
Anton F
Лучше искать короткие строки и потом самому в логе смотреть
15:28
В остальном - рекомендую просто ещё подождать. Лично я уже второй день жду пока бенчмарк найдет матч для 5 символов
15:30
Ещё можно обновить ванитон, я пару плюшек добавил недавно, но основной функционал никак не изменился
AP
17:48
Andrey Pfau
А отображение скорости "майнинга" будет?
AF
17:55
Anton F
Уже есть, каждые 4 тысячи адресов (плюс-минус пять минут на моих машинах)
c
17:56
cryshado
In reply to this message
а майнинг пулы будут?
AF
17:59
Anton F
In reply to this message
Нет, не будет - я понятия не имею как его сделать так чтобы безопасность не полетела в окно
18:00
Опять же, это будет равносильно переписыванию всей программы с нуля - слишком много труда для хобби-проекта)
c
18:01
cryshado
In reply to this message
про пулы тона также говорили, придумаем 💪
AF
18:03
Anton F
In reply to this message
Проблема в том что никто не может помешать нехорошим людям записывать в логи все адреса которые они сгенерировали, и потом смотреть не начал ли кто эти адреса использовать 🤷 И все, пропали ваши тоны
c
18:03
cryshado
In reply to this message
хмм верно
AF
18:04
Anton F
Кроме того, главным боттлнеком у нас PBKDF2, который наверное можно бы было разбить на мелкие части для каждого клиента, но Сид все равно должен кто-то сгенерировать и этому кому-то нужно доверять
18:05
Ну и в отличие от майнинга - монетарной награды за поиск нет, следовательно не будет и причины тратить на это ресурсы
c
18:15
cryshado
In reply to this message
чел который хочет красивый адрес может платить
AF
18:24
Anton F
In reply to this message
Ну сколько таких людей наберётся - дюжина-две? Такой себе бизнес план если честно
c
18:25
cryshado
In reply to this message
tolYaEnOt заплатит себе за такой адрес - этого хватит на всех)0
AF
18:25
Anton F
In reply to this message
Тут надо будет суперкомпьютер арендовать 😂
AP
18:27
Andrew Python
In reply to this message
Попросить Стива мощности пула на 5 минут перекинуть
SK
18:33
Shawn Kovac
In reply to this message
😂
CZ
18:37
Chak Zefir
Привет, у кого-нибудь были проблемы с 4-ым шагом(https://github.com/disintar/toncli/blob/master/docs/apple_m1_compile_fix.md) в компиляции TON modules на M1? Компиляция проходит, но никак не могу найти бинарники
c
21:43
cryshado
In reply to this message
бинарники в папке build должны быть ты ее создавал
MG
21:44
Mo Go
https://ton.org/bridge/?fromNetwork=ton&toNetwork=bsc
This is not working. How long until the transactions time out and funds are returned to ton wallet
21:44
это не работает. как восстановить транзакцию?
21:45
The bridge inserted swapTo# in the transaction, which is for ETH according to the documentation, instead of swapTo% for BSC. Been waiting patiently for a response.
The oracle sees it as completed, but the BSC contract doesn't show the transaction.
21:45
Мост вставил в транзакцию swapTo#, который согласно документации предназначен для ETH, вместо swapTo% для BSC. Терпеливо ждал ответа. Оракул считает, что это завершено, но контракт BSC не показывает транзакцию.
S
21:50
S
In reply to this message
Спасибо
21:52
In reply to this message
Это получается я могу Смарт контракты на python писать
AT
21:52
Andrey Tvorozhkov
In reply to this message
Нет, так не получится :)
S
21:53
S
In reply to this message
Эх жаль)
21:53
А было б класссссно
AT
21:53
Andrey Tvorozhkov
Но сэкономить безумно много времени на заход в тон - получится
S
21:53
S
In reply to this message
Понял, буду играться
1
21:55
10658
In reply to this message
спасибо
GV
21:57
Greg Vaysberg
In reply to this message
Привет! fift и func в папке build/crypto/
А lite-client в папке build/lite-client/
CZ
22:10
Chak Zefir
In reply to this message
Да, папка есть но к сожалению всего упомянутого в ней нет

Всё остальное делал ровно по инструкции
c
22:10
cryshado
In reply to this message
че-то не собралось, скинь конец логов сборки
A
22:11
Aлeксандp
Коллеги, приветствую!
Правильно ли я понимаю что если я хочу перевести TON от одного "пользователя" к другому мне нужно инициировать смарт-контракт в системе?

вопрос новичка, не судите строго...
CZ
22:12
Chak Zefir
In reply to this message
Log at 2022-02-11 10-11-07 PM.txt
Not included, change data exporting settings to download.
1.9 KB
это я пересобирал уже, тут почти всё из кэша подцепилось
С
22:12
Сигизмунд VI
нет
AS
22:13
Aleksandr Shepelev
In reply to this message
технически да, если он не был инициализирован ранее на твоем адресе)
22:13
если был инициализрован, то воспользоваться методами уже инициализированного контракта для перевода
D
22:14
Denis
In reply to this message
ты находишься в папке rockdb. запускать команды сборки нужно из корня репозитория (`/Users/serhio/ton`, как я понимаю), там же, в корне, появится папка build
CZ
22:16
Chak Zefir
In reply to this message
🤦 пропустил самое главное
"Execute from root repository directory"

спасибо!
12 February 2022
T
01:50
Tambet
Sorry again, but is there some kind of official API for current network complexity?
H8
09:16
HDN 814
Hey there ✋

I was curious how can I program on the ton blockchain...

Like solidity on ether...
СВ
10:10
Сергей В
In reply to this message
А 6 симоволов в начале кошелька реально подобрать на 32х ядрах? :)
Или нужны все сервера амазона для такого?)
NM
10:12
Nick MMM
А есть ли официальный апи в свободном доступе ?
PG
10:19
Prime G.
In reply to this message
NM
10:21
Nick MMM
In reply to this message
Не могу тут найти как отправлять только хэш транзакции и чтобы вернул только данные хэша
По типу
requestType=getTransaction&
transaction=15200507403046301754
AS
10:22
Aleksandr Shepelev
In reply to this message
нужен адрес
NM
10:25
Nick MMM
In reply to this message
EQDSZaiGCAvFU4qjlGm2wcCeF4JoepVU_i3k1WSJ0MvTQVj5
AS
10:25
Aleksandr Shepelev
In reply to this message
не мне, апишке :)

апишка не может по хэшу транзакции что-то вытащить. по адресу может отдать транзакции. их можно фильтрануть еще потом по хэшу транзакции (переведенному в hex)
CZ
11:27
Chak Zefir
In reply to this message
Hey, it's possible to write smart-contracts on Solidity and then compile them into fift or func.
But most of contributors suggest to write straight forward on fift or func. More details in official dev docs: https://ton.org/docs/#/func
AF
11:29
Anton F
In reply to this message
Возможно всё, вопрос лишь в том сколько времени это может занять 🤷
CZ
11:40
Chak Zefir
In reply to this message
Hey
You could check network status in dedicated grafana instance: https://tonmon.xyz/
Also there is a link to sh scripts which you could handle by your own
AP
12:16
Andrey Pfau
In reply to this message
You can also download TON Development plugin for IntelliJ:
https://plugins.jetbrains.com/plugin/18541-ton-development
СВ
12:21
Сергей В
In reply to this message
А если я остановлю vaniton и заупущу снова? он же не будет переберать теже адреса заного?
AF
12:25
Anton F
In reply to this message
Каждый сгенерированый Сид совершенно случаен и уникален - два одинаковых адреса вам программа никогда не сможет сгенерировать
AP
12:26
Andrey Pfau
он через псевдорандом от времени работает?
AF
12:26
Anton F
Так что без опаски можно её перезапускать когда угодно, запускать паралельно на нескольких компьютерах
СВ
12:26
Сергей В
In reply to this message
👍
AF
12:27
Anton F
In reply to this message
Криптографически сильный псевдорандом из OpenSSL. Что там внутри я не особо в курсе, но судя потому что я читал, вроде как хеш (мд5) от системного источника энтропии (вроде /dev/urandom)
T
12:40
Tambet
In reply to this message
Nice, thank you!
NM
12:41
Nick MMM
In reply to this message
если кто-то отправил получателю с другого адреса, тогда как узнать адрес отправителя?
AS
12:42
Aleksandr Shepelev
In reply to this message
тебе достаточно знать свой адрес, чтобы видеть все входящие и исходящие
12:43
как отличить исходящую от конкретного человека? несколько способов. рекомендуют уникальный id счета в комментарии
12:43
либо old way - генерить много кошельков / пул кошельков
NM
12:46
Nick MMM
In reply to this message
Спасибо
H8
12:59
HDN 814
In reply to this message
Awesome,
I'll find my fron there 👌
13:05
In reply to this message
Thank u...
It looks like a portal to all tools needed for that
👍👍
13:07
In reply to this message
🙏🙏
M
15:35
M. Nemati √
Isn't it better to keep this group in English? Or is there any devs group on tg in English?
AF
16:40
Anton F
In reply to this message
There is discord server https://discord.gg/tWxm8nrKt8 for english-only
H8
17:01
HDN 814
In reply to this message
Thanks
17:29
In reply to this message
Помогите лайком пофиксить официальный кошелёк, а то аж стыдно за наших, что урл не могут распарсить
17:29
Deleted Account
In reply to this message
T
18:25
Tolya
In reply to this message
Спасибо, применим в ближайшем апдейте
A
22:24
Aлeксандp
Коллеги, приветствую!
Где качнуть клиент для теста, тот что есть на всех ресурсах дает ошибки при cmake
13 February 2022
D
04:19
Dario
Hello guys, i have a question: Why wallet v2/v3 are outdated? I mean, why should i avoid them?
AF
09:03
Anton F
In reply to this message
They're not outdated, V3 is still the default wallet option. The only reason V2 is not widely used is because V3 is newer :) it just brings new features, for example subwallets, but main functionality of sending and receiving coins is the same.
Now we're slowly moving towards V4 as it introduces support for wallet plug-ins, which can provide such new features as subscriptions
СВ
10:35
Сергей В
Вопросик про Bug Of Cells
Какое предназачение у Refs?
Клетка может ссылаться на другие, но как это используется?
Скачал большой boc на мегабайт, и клетка 3 ссылается на 14163 и 14164
10:35
Не понимаю как это итерпретировать
c
10:44
cryshado
In reply to this message
1 клетка может ссылаться на 4 другие, как и сами эти клетки. Можно построить цепочку рефов например:

<данные реф<данные реф<данные реф<данные>>>>
P
10:46
Project Manager
In reply to this message
на всякий - отправить .boc файл в сеть размером в 1мб = ошибка
AP
10:47
Andrey Pfau
In reply to this message
Ячейка жуков.
10:47
Или жучьи ячейки?
СВ
10:48
Сергей В
In reply to this message
Я понимаю, просто надо же чем-то парсер тестировать :)
10:48
In reply to this message
ну ладно, ладно 😂
СВ
10:50
Сергей В
In reply to this message
😭
10:51
пойду у себя в коде тоже переименую :D
CP
10:52
Catchain Protocol
In reply to this message
жук ячеек
1
11:05
10658
😂
T
11:29
Tshepiso
👊👊🔗🔗🇿🇦🤟🏻
Z
13:31
Zurab Edgulov
Ребят, как на сайте (своем) принимать оплату с помощью ТОН? Где почитать?
D
13:34
Daniil
In reply to this message
tegro.money, позволяют принимать оплату тоном
13:34
Сам там регался, за 4 часа прошел модерацию сайта
13:35
Могу демку оплаты тоном скинуть
Z
13:35
Zurab Edgulov
In reply to this message
Да зачем сторонний. мы сами сделаем. Где почитать только надо найти
D
13:35
Daniil
In reply to this message
toncenter.com, получай платежи каждые 30сек и проверяй на новые
JG
14:16
John Galt
In reply to this message
+, только рекомендую сразу предусмотреть что тонцентр часто падает и надо не забыть ретраи.

Для получения транзакций используй ручку getTransactions. Это апи, к сожалению, позволяет получать транзакции только ОТ актуальных К старым, а это значит, что вам придется брать n записей, запоминать lt и hash последней и от этих значений брать следующие n записей. Это в том числе поможет вам, если бэкенд упадет и надо будет взять записей больше, чем лимит запроса на тонцентре.

Мы такое реализовывали, чтобы забирать все транзакции для tonch.cc, очень похоже на платежный процессинг, только мы просто выводим все сообщения на сайт.
P
14:18
Purple
In reply to this message
и плати проценты просто так)))
JG
14:20
John Galt
Но если вы хотите отслеживать транзакции больше чем для одного кошелька, то этот способ не рекомендую. Слишком много воркеров придется делать.

В этом случае советую сделать что-то на подобии этого https://github.com/tonwhales/ton-raw и искать в поступивших транзакциях свои адреса

Только в этом апи есть проблема, что половина блоков из basechain теряются из-за бага. Сам сегодня переписал парсер блоков, чтобы они не терялись.

Если интересно, вот писали конкретный кейс, где блоки из бэйсчейна терялись https://t.me/tondev/51630
14:23
In reply to this message
Надеюсь дал вам исчерпывающий ответ
Z
14:23
Zurab Edgulov
In reply to this message
Спасибо большое
JG
14:26
John Galt
In reply to this message
А вообще, конечно, интересно. Если просто инкрементить seqno basechain будет ли это корректно работать? Не потеряются ли какие-нибудь транзакции?
D
14:29
Daniil
In reply to this message
Без процентов
14:29
Я бы сам лучше написал, если бы проценты были
14:30
Там даже на вывод мин. комиссия
14:30
Даже вроде меньше чем в крипто боте
P
14:30
Purple
In reply to this message
завел 10 тонкоинов получил 9 с чем то
14:30
угу
D
14:30
Daniil
In reply to this message
Неа, сейчас даже проверю
P
14:32
Purple
In reply to this message
давай
RY
14:35
Rotem Yakir
Hey guys, I’m looking for a way to import private key into an existing wallet and to set the wallet address. The reasoning behind it is that I have created and deployed a custom wallet contract and now I want to use it easily via UI. I don’t really care which wallet to use, although it can be awesome if it will be an iOS one or chrome extension.
⚡?
14:38
⚡ ILYA, Илья 🇮 🇱 🇾 🇦 🇮🇹🤝
Вот уже 2 месяца в тон но ни как не могу понять одно. Я не разработчик и не очень разбираюсь в этих делах, но можете пожалуйста сказать, Админы, какой кошелек самый безопасный? Где оставить свои Тон-Коин-ы и через 10лет допустим,зайти и продать их? Какой кошель использовать? Какой из ваших кошельков будет самый безопасный для рядового пользователя, То есть покупал и забыл, на время.спасибо!
??
AT
14:46
Andrey Tvorozhkov
In reply to this message
ton place сервис которым не стоит пользоваться, он плохой со всех точек зрения 😔

А еще это технический чат, было бы круто обсуждать тут технические вопросы
c
14:46
cryshado
In reply to this message
+
AP
14:46
Andrey Pfau
In reply to this message
+
D
14:47
Dario
In reply to this message
Oh okay, thanks!
14:50
Deleted Account
In reply to this message
Ну тонкипер проприетарный
АТ
14:50
Андрей Турбин
In reply to this message
Почему не безопасный? Ключ есть только у тебя.
14:58
In reply to this message
Монеты хранятся не в кошельке, а в блокчейне. Кошельки типа тонкипера или тонкоинтваллет это просто инструмент для управления. Можно завести адрес в одном кошельке, а потом восстановить в любом другом.
15:00
In reply to this message
Главное чтобы кошелёк был некастодиальный. То есть тот, в котором вы являетесь единственным владельцем закрытого ключа.
CZ
15:01
Chak Zefir
@f_closer включи реакции пожалуйста, чтобы лайки Андрею отгружать
c
15:04
cryshado
In reply to this message
Ты не можешь гарантировать, что ключ только у тебя, если исходный код кошелька закрыт
D
15:04
DvDm
In reply to this message
уже обсуждали, что в разных кошельках может формироваться разный приватный ключ из сид, в зависимости от некоторых переменных
некастодиальность кошелька надо ещё подтвердить, т.к. тонкипер закрытый - никто не знает, что там внутри
так что сейчас тон валлет безопаснее
c
15:04
cryshado
In reply to this message
👏👏👏
⚡?
15:15
⚡ ILYA, Илья 🇮 🇱 🇾 🇦 🇮🇹🤝
In reply to this message
Понял. Спасибо!
RY
15:25
Rotem Yakir
Anyone knows what I need to put in the config file to use a custom wallet contract?
15:58
Deleted Account
@ruslixag очень часто лайтсервер по таймауту падает(

{
"ok": false,
"error": "Liteserver timeout",
"code": 504
}

Посмотрите, может можно что-то улучшить...
15:59
In reply to this message
Только что часто ловил на этом запросе:
https://toncenter.com/api/v2/getBlockTransactions?workchain=0&shard=-9223372036854775808&seqno=23349116&count=40

Возможно стаднартный каунт в 40 слишком много?
16:04
In reply to this message
бтв спасибо что допилили передачу хэша в любом формате

очень удобно пользоваться теперь
AS
16:04
Aleksandr Shepelev
In reply to this message
о рили? спасибо)
16:04
In reply to this message
+, раз из 10 падает точно
16:05
Deleted Account
In reply to this message
там даже в описании теперь написано что и то и другое принимают)

Hash of transaction to start with, in base64 or hex encoding , must be sent with lt.
RG
16:15
Ruslan Gabdullin
In reply to this message
Только не забываем кодировать в percent encoding))
16:16
In reply to this message
Это проблемы с ответами лайтсерверов. Пока не решаемо
16:46
Deleted Account
In reply to this message
Имеет ли смысл поднимать свой лайтсервер, или на нем тоже будут таймауты?
AT
16:49
Andrey Tvorozhkov
In reply to this message
Имеет
16:49
Лучше держать тонцентер через свою ноду и лайт клиент
16:49
Чтобы обеспечить максимальный аптайм
18:13
Deleted Account
А из чего other_fee складывается? Которая отдается в тонцентре(лайтсервере)
14 February 2022
01:18
Deleted Account
Здравствуйте! Какой workchain у TON mainnet?
c
01:19
cryshado
In reply to this message
Есть два воркчейна. Мастерчейн(-1) и бейсчейн(0)
OA
01:46
Oleg Andreev
In reply to this message
Если я правильно понимаю, то мастерчейн - не воркчейн.

Иерархия там такая:

1 мастерчейн (код -1), и много воркчейнов (коды 0, 1, ...).

Причем воркчейны на самом деле не существуют, т.к. это коллективное название для всех шардчейнов с общими правилами валидации. Т.е. если воркчейн состоит из 2 шардов, то это только эти два шарда без какого-то родительского "воркчейна". Над ними только мастерчейн.
A
01:49
Andrei
In reply to this message
Мастерчейн является воркчейном, мне кажется)
01:49
Просто он особенный
01:50
Остальное верно
c
01:51
cryshado
In reply to this message
Не использовать эти библиотеки
01:52
Какие gwei? Тут нанотоны и т д
01:52
Попробуй https://github.com/toncenter/tonweb если тебе обязательно жс юзать
01:54
Deleted Account
Пример кода был взят из репозитория ton whales
c
01:55
cryshado
In reply to this message
Зачем ты оттуда брал пример кода? Не лучшая репа для примеров
01:55
Можешь свою задачу описать?
OA
01:55
Oleg Andreev
In reply to this message
Ты наверное имеешь в виду что там правила и начинка те же - TVM и прочее. Но формально термин "воркчейн" - это "то, что шардится", а мастерчейн - то, что все валидируют и комса в 100 раз выше. Поэтому и разница в названиях.
A
01:56
Andrei
In reply to this message
Воркчейн не обязан шардиться. С точки зрения маршрутизации мастерчейн такой же воркчейн, как и остальные
a
01:57
assemblerx64
Привет всем. Существует ли сейчас где то актуальный список доступных методов jsonrpc?
A
01:57
Andrei
Ну там есть max_split точнее в параметрах вокрчейна, если он 0, то он не будет шардится
01:58
Ну наверное есть отличие в том, что хеш блока мастерчейна не включается в следующий блок на правах шарда
OA
01:58
Oleg Andreev
ок, ясно. Но воркчейн как термин - для того чтобы отличить его от мастера? или для чего
02:00
Deleted Account
Как на tonweb получить объект wallet по мнемоник-фразе
c
02:00
cryshado
In reply to this message
a
02:01
assemblerx64
In reply to this message
Получается нету и только из сорсов ton-http-api можно их достать?
AP
02:01
Andrew Python
In reply to this message
есть отдельный пакет tonweb-mnemonic
c
02:02
cryshado
Это сурсы тонцентра https://github.com/toncenter/ton-http-api можно локально поднять
02:02
In reply to this message
И даже лучше так
02:02
In reply to this message
Юзайте его на свой страх и риск только
a
02:04
assemblerx64
Я просто хочу напрямую работать с libtonlibjson.so и поэтому хочу найти все методы RPC, которых вроде как и там нету в полном объеме, а от начального списка используемого в GRAM многое изменилось
02:06
Deleted Account
In reply to this message
Какие альтернативы?
c
02:07
cryshado
In reply to this message
Загулять mnemonic to seed и ed25519 и сделать ручками без библиотек
i
02:07
isoscele 💎
Did anyone try to cmake following the ton.org howto and happened to find this error?
c
02:07
cryshado
Что за наплыв разрабов? 🥳
02:28
Deleted Account
In reply to this message
What system do yo have?
i
02:29
isoscele 💎
In reply to this message
ubuntu 21.10
a
02:35
assemblerx64
tonlib-go тоже нерабочая да?.. Итого получается у нас есть +- обфусцированная версия tonweb и иначе никак?
AF
02:42
Anton F
Tonweb не обфусцирован, это жабаскрипт. Сам если честно сначала тоже растерялся
F
02:47
Flyheck
In reply to this message
почему он должен быть обфусцирован?
02:47
я только вникаю в эту тему, еще ни разу не приходилось работать с блокчейном
02:47
поэтому, простите на столь глупые вопросы)
AF
02:48
Anton F
In reply to this message
Просто попытка пошутить над JavaScript, глубинного смысла не ищите 😌
a
02:48
assemblerx64
In reply to this message
Сорян, это не так. Я тупой. Но я так понял, что текущую сеть поддерживает только tonweb, хотя на ton.org/docs заявляются 4 sdk, это странно
S
03:01
S
Ребята, мне стыдно за этот вопрос, но сколько знаков после запятой у ТОН, вроде я как считал их 9. Так ли это?
A
03:03
Andrei
Да
03:27
Deleted Account
TON Wallet какую версию кошелька использует?
RG
05:01
Roman Geints
In reply to this message
v3r2
СВ
11:19
Сергей В
А есть кошельки c v4?
AT
11:21
Andrey Tvorozhkov
In reply to this message
Тонкипер v4 хард пушит)
Тонвейловский - тоже
OA
11:23
Oleg Andreev
In reply to this message
пока не хард - по-умолчанию v3r2 стоит пока все остальные не включат поддержку v4
11:24
v4 необходим только для подписок, поэтому только при подписке вылезает приглашение на миграцию
AT
11:25
Andrey Tvorozhkov
In reply to this message
👍🤝
T
11:54
TON Дев Чат
In reply to this message
a
11:59
assemblerx64
In reply to this message
Вооу, спасибо
zz
12:08
zz z
hello how can i fix this problem

{"ok":false,"error":"SASLprep: failed prohibited character check","code":503}
AT
12:12
Andrey Tvorozhkov
In reply to this message
👀 sasl is pain in the ass module in my experience.

Is it answer of toncenter? Or what?
zz
12:14
zz z
In reply to this message
Ton-http-api run by self
12:15
Error returned when calling API
F
12:34
Flyheck
12:35
застряли тоны на мосту, может ли быть проблема в нулевом балансе на ton кошельке?
12:36
Deleted Account
In reply to this message
Долго ждете? По идее это стадия просто ожидания подтверждения, наверное если 3 подтвердили, то все окей должно быть
F
12:36
Flyheck
1.5 часа
12:37
Deleted Account
In reply to this message
Могу только посоветовать написать сюда @ton_help_bot

Есть шанс что передадут сообщение оракулам и они что-то проверят
F
12:37
Flyheck
спасибо)
12:37
а кто такие оракулы?)
12:38
это эквивалентно валидаторам?
12:38
Deleted Account
In reply to this message
Что-то типо)
S
13:06
S
In reply to this message
Нет, это не тоже что валидаторы.
Оракулы это поставщики информации децентрализированым способом.
Тоесть с использованием оракулов, можно не переживать, что данными будут манипулировать
AS
17:28
Aleksandr Shepelev
In reply to this message
а чо в одном случае toFriendly, во-втором нет?)
A
17:33
Apple
Все равно разные, даже когда так
17:33
AS
17:37
Aleksandr Shepelev
const {mnemonic, key, wallet} = await client.createNewWallet({workchain: 0, password: null, type: 'org.ton.wallets.v3'})
17:37
вы параметры не так передаете
A
17:39
Apple
Спасибо, заработало
F
17:45
Ferrari Apple
Добрый день,
А как сюда передать apiKey?

import { TonClient } from 'ton'
const client = new TonClient({ endpoint: 'https://toncenter.com/api/v2/jsonRPC' })
AS
17:45
Aleksandr Shepelev
In reply to this message
обновитьяс на последнюю версию
17:45
там будет apiKey рядом с эндпоинтом
F
17:46
Ferrari Apple
Спасибо
AT
19:05
Andrey Tvorozhkov
In reply to this message
Oh no js
c
19:12
cryshado
In reply to this message
AS
19:13
Aleksandr Shepelev
In reply to this message
пиши фолс) потому что иначе твою транзакцию на неинициализированный кошелек вернет
A
19:14
Apple
Спасибо
c
19:17
cryshado
In reply to this message
а зачем ты юзаешь js? какая твоя задача?
AP
19:18
Andrey Pfau
JS - это костыль
19:18
не в плане языка, а в плане взаимодействия с тон
F
19:18
Ferrari Apple
А такой вопрос, функция wallet.prepare выдает ошибку:
Error: Contract have different address

Как это понимать?

Код такой:
const address = 'EQClLegUGi16bo_C_V3bhPCtVUf15icENfLKZRBa0t_qsnwc'
const wallet = await client.openWalletFromAddress({ source: address })
wallet.prepare(0, publicKey)

Console Output:
Wallet { address: 'EQClLegUGi16bo_C_V3bhPCtVUf15icENfLKZRBa0t_qsnwc' }
// Error: Contract have different address
19:18
In reply to this message
А что нужно юзать?
c
19:18
cryshado
In reply to this message
опять жс...
19:18
In reply to this message
fift 💪
AP
19:18
Andrey Pfau
Fift
F
19:18
Ferrari Apple
Что это?
1
19:18
10658
js moment
AP
19:18
Andrey Pfau
ЧТО
AT
19:19
Andrey Tvorozhkov
In reply to this message
Meme
c
19:19
cryshado
In reply to this message
Это язык, который придумал Nikolai Durov специально для работы с тоном. https://newton-blockchain.github.io/docs/fiftbase.pdf
AP
19:19
Andrey Pfau
разбираем на мемы
AT
19:19
Andrey Tvorozhkov
In reply to this message
19:19
In reply to this message
Да, надо в рамочку сохранить
F
19:22
Ferrari Apple
Так а зачем toncli, python, fift, смарт-контракты и всё остальное, если мне на nodejs нужно тоны отправить с 1 кошелька на другой? 2 дня уже бьюсь, что за бред, я извиняюсь
AP
19:22
Andrey Pfau
In reply to this message
потому что через toncli это делается в 2 строки
19:23
fift вообще в 1
F
19:23
Ferrari Apple
А на node.js должно в 1 делаться, ну вот да
AP
19:23
Andrey Pfau
не должно js это костыль
F
19:23
Ferrari Apple
Так а как мне это всё дело использовать из бекенда который на nodejs?
19:23
Городить микро-сервис на питоне со своим API?
AP
19:23
Andrey Pfau
есть toncentral
19:23
в таком случае
F
19:24
Ferrari Apple
Не гуглится
19:24
Deleted Account
Я не понимаю, ему реально нужен tonweb, он его потребности максимально исполняет, зачем вы ему толкаете тонкли, фифт)
c
19:24
cryshado
In reply to this message
не исполняет
19:24
Deleted Account
In reply to this message
Чтобы в коде автоматизировать перевод монет с кошелька все инструменты что вы описываете оверхед
F
19:25
Ferrari Apple
Ну да, мне просто перевод, транзация, максимально просто
c
19:25
cryshado
In reply to this message
а потом мы получаем сервисы типа тон плейс - их такие разрабы и делают, на ноде жс
19:25
Deleted Account
In reply to this message
Да зачем тебе еще что-то если тебе надо сделать просто перевод монет с дефолтного кошелька???
NA
19:25
Narek Abovyan
Ребят может вы еще сервера на фифте начнете писать, чего мелочиться то))
19:25
Deleted Account
In reply to this message
это такой примитив, который можно и на ЖС сделать
19:26
там же просто бок сформировать одинаковый и отправить его в тонцентер
19:26
In reply to this message
для этого фифт не нужен, с байтиками может жс код поебаться (если я правильно понимаю)
c
19:26
cryshado
In reply to this message
ну для этого нужно будет немного доработать фифт - но сможем если надо будет 🐈
19:27
Deleted Account
In reply to this message
это tonwhales?
F
19:27
Ferrari Apple
In reply to this message
Могу в ЛС написать?
c
19:27
cryshado
In reply to this message
кто-то мешает вызывать фифт из сервера на ноде?)
19:28
можно вообще в веб асемблер его собрать скорее всего
AP
19:29
Andrey Pfau
In reply to this message
у меня в репозитории кстати интерпретатор фифта в wasm и js компилится
c
19:29
cryshado
In reply to this message
оо скинь ссылку
19:29
в случае с js там надо еще дополнительно stdlib котлина подрубить и будет работать
c
19:30
cryshado
а скок на выходе весит васм такой?
AP
19:30
Andrey Pfau
собственно вот это получается
AP
19:30
Andrey Pfau
AP
Andrey Pfau 31.01.2022 12:13:21
ton-fift.js
Not included, change data exporting settings to download.
77.6 KB
настроил компиляцию для JS 😜
AP
19:30
Andrey Pfau
In reply to this message
ой с васм хз, но джс как видишь 77 килобайта
c
19:31
cryshado
можно собрать оригинальный фифт и это убивает все жс либы обычные
1
19:31
10658
In reply to this message
toncenter
F
19:31
Ferrari Apple
Спасибо, уже скинули ссылку
AT
19:33
Andrey Tvorozhkov
In reply to this message
С дефолтного для личных целей не за чем, согласен.

Если ты делаешь бэкенд, работаешь над сервисом, где тебе реально люди доверят свои деньги и спрашиваешь что такое баунцебл флаг и что такое фифт - нужно идти и смотреть вайтпейперы
c
19:34
cryshado
In reply to this message
+
AP
19:35
Andrey Pfau
Ну и для бекенда юзать nodejs...
19:35
Ладно если это какой то MVP, то ок
F
19:35
Ferrari Apple
In reply to this message
Тимуру Шамсутдинов это скажите)
AP
19:35
Andrey Pfau
Или клиент не ввсоконагруженный
19:36
In reply to this message
Что за недоинфлюенсер?
F
19:36
Ferrari Apple
Это топ 1 бекендер в СНГ на node.js)
AP
19:37
Andrey Pfau
оперировать аргументами одного человека который погружен в свой информационный пузырь не обьективно
F
19:37
Ferrari Apple
Ну просто хейтить js, если это единственный язык который понимает браузер, не считая wasm (ок)
AP
19:37
Andrey Pfau
In reply to this message
в том то и дело
19:38
In reply to this message
клиент = браузер
c
19:38
cryshado
In reply to this message
так, создатель ноде жс, официально сказал, что ноде жс мягко говоря вышел не очень, и пошёл делать другой движок - так что всё равно node js это плохо
AP
19:38
Andrey Pfau
для браузера это нормально
F
19:38
Ferrari Apple
In reply to this message
Ну это Райану Далю так кажется, его deno до nodejs ещё 10 лет развиваться
AP
19:38
Andrey Pfau
In reply to this message
ОРУ
19:39
мнение создателя продукта не учитывается в самом продукте?)
19:39
до чего дожили….
c
19:39
cryshado
In reply to this message
ыыыы
AP
19:41
Andrey Pfau
In reply to this message
ну кстати я тоже могу сказать <<инфлюенсер нэйм>> считает что язык <<лангуаге нэйм>> лучше
19:41
ну это максимально не обьективно
19:41
нужно сравнивать разные источники и из этого делать общий вывод а не жить в своем инфопузыре и считать что все вокруг идиоты
AS
19:41
Aleksandr Shepelev
а то что вы не глядя пихаете всем подряд фифт это объективно?))
1
19:42
10658
спасибо всем, от души посмеялся )))))
AP
19:42
Andrey Pfau
Fift не просто так создан для тон
AS
19:42
Aleksandr Shepelev
причем если бы чел сказал что он пишет на питоне сервис, все бы сказали лан пиши пили свои транзакции)))
c
19:43
cryshado
In reply to this message
удачи на питоне даже нет либы нормальной, чтобы BOC собрать 🙂
19:43
у меня все питон/голанг штуки юзают фифт
AS
19:44
Aleksandr Shepelev
ну сделают там обвязку скоро аналогичную тонвебу, вроде кто-то пилит уже
1
19:44
10658
toncli написали уже на питоне )
c
19:44
cryshado
In reply to this message
он фифт использыет и лайт клиент 😛
AS
19:44
Aleksandr Shepelev
ну потому что нахрен фифт не всрался, если надо взять монеты и кинуть через стандартный кошель на другой стандартный кошель)
F
19:44
Ferrari Apple
Ну вот именно)
AP
19:44
Andrey Pfau
с таким подходом вам в эверскейл
c
19:45
cryshado
In reply to this message
плюсую
19:45
там ещё и на солидити контракты писать можно)
19:45
с тестами на жс 👍
AP
19:45
Andrey Pfau
In reply to this message
не только
19:45
там они сделали LLVM компилятор
19:45
по сути можно на любом языке который в LLVM может
19:45
даже на том же котлине
1
19:45
10658
In reply to this message
действительно
AP
19:46
Andrey Pfau
все, всем пока, я в эверскейл там контракты на котлине можно!1!!
c
19:46
cryshado
🥴
AT
19:48
Andrey Tvorozhkov
In reply to this message
Так а мой поинт выше про то, что если ты делаешь сервис где тебе люди доверили деньги и ты не знаешь что такое баунс флаг и что такое фифт не учитывается?
19:48
Я бы не доверил свои деньги в такой сервис 🤔
AP
19:48
Andrey Pfau
F
19:48
Ferrari Apple
Все с чего-то начинали, я вчера мб с утра что такое тон первый раз загуглил, зачем так строго)
AT
19:50
Andrey Tvorozhkov
In reply to this message
Да нет ничего сторогово или плохого, я от чистого сердца советую посмотреть в тон кли.

Если вы делаете сервис для пользователей. Перед тем как пытаться что-то делать на джс
c
19:50
cryshado
In reply to this message
потому что ты также реагируешь, когда тебе показывают удобный, практичный, правильный и простой путь, а ты говоришь, что костыли это ок
F
19:51
Ferrari Apple
In reply to this message
Ну он же на питоне, а он чем лучше) Я например к Python отношусь в 10 раз хуже чем к JS. Ну и к чему он мне в таком случае)
AT
19:52
Andrey Tvorozhkov
In reply to this message
Гспд. Забейте)
c
19:53
cryshado
🥴
AP
19:53
Andrey Pfau
а как вы относитесь к святому котлину? 😇
F
19:54
Ferrari Apple
Также как и к Enterprise
AP
19:54
Andrey Pfau
вы не рассказывали
19:54
поэтому референс не актуален
F
19:55
Ferrari Apple
А бывают люди которым нравится работать в Enterprise секторе? Пока таких не встречал
AP
19:55
Andrey Pfau
что в вашем понятии энтерпрайз?
19:56
Java - да, это энтерпрайз в основном
19:56
на котлине не только энтерпрайз делают
19:56
вооюще любой язык так то на энтерпрайзе используется по сути (из популярных) просто кто-то больше, кто-то меньше
19:57
поэтому ставить == между языком и энтерпрайзом не верно
F
19:57
Ferrari Apple
Ну в случае Java, так все ставят, потому что она этим славится
AP
19:57
Andrey Pfau
а я про джаву спросил
19:57
?
F
19:57
Ferrari Apple
А котлин сильно отличается?
AP
19:58
Andrey Pfau
кардинально
19:58
то что он в JVM компилироваться может это не означает что это джава
F
19:58
Ferrari Apple
Не знаком с ними, всегда считал что примерно одно и тоже)
19:58
Я так-то фронтендер просто
AP
19:58
Andrey Pfau
а ну понятно все теперь
19:59
извините за кибербуллинг
19:59
был не прав
19:59
JS хороший язык, всего доброго
F
19:59
Ferrari Apple
Ахаха
20:00
Вы я так понимаю сайтами не пользуетесь, так как они на JS написаны, понимаю, не просто наверное с таким отношением радикальным к современным стандартам веба
AP
20:00
Andrey Pfau
просто мы про бекенд говорили
20:01
причем тут фронтэнд - не понятно)
F
20:01
Ferrari Apple
Ну если можно и там и там использовать JS, зачем далеко ходить?
AP
20:01
Andrey Pfau
CSS кстати тьюринг полный
20:01
давайте кодить на CSS
D
20:03
DvDm
на этот моменте PHP GOD входит в чат
20:03
давайте писать exe на php
AP
20:05
Andrey Pfau
nodejs появился из за того что верстальщики просто не смогли осилить что-то сложнее тайп-скрипта и решили вариться в своей каше
20:05
каждый язык нужен для своих задач
20:07
js же просто для того чтобы странички делать чуть более интерактивными чем просто статичными, нуж точно не писать бекенд
20:07
даже больше скажу NodeJS нужен был изначально для того чтобы фронтэндеры могли просто сделать заглушку-бекенд для того чтобы их фронт мог как то работать, чисто для тестирования
20:08
но не как на продакшине
a
20:08
assemblerx64
In reply to this message
Интересно твое мнение. Swift на сколько процентов годен для бэка?
AP
20:08
Andrey Pfau
Swift на сколько я знаю для софта эпла юзается
20:09
ну можно хоть на каком языке делать на самом деле выбор каждого, просто вопрос в том как это потом поддерживаться будет
20:09
просто не надо извращаться и использовать инструменты которые были предназначены для другого
a
20:09
assemblerx64
Да, но не только и у него открытый код. Можно запускать на сервере и есть фреймворки для http бэкенда, на сколько процентов он может соревноваться с Golang, например? Скорость у свифта тоже вроде кайф, а синтаксис и скорость разработки так еще лучше
AP
20:09
Andrey Pfau
это как утюгом забивать гвозди. Можно? Да можно, он такой же увесестый как и молоток. Но молоток для этого лучше подходит
a
20:10
assemblerx64
Swift это просто язык, он не предназначен для приложений
20:10
Ладно, я понял. Ты тут не раздаешь конструктивную оценку)
20:10
И какой у тебя стек?
AP
20:10
Andrey Pfau
In reply to this message
конечно можно, все языки мультипарадигменные
20:11
просто много ли ты найдешь людей которые имеют опыт с бекендом на свифте? это экзотика
20:11
это как искать мастера для забивания гвоздей с помощью утюга
a
20:11
assemblerx64
In reply to this message
Вопрос в процентах насколько подходит. Pascal подходит на 0, Golang на 100, Js по твоим словам процентов на 70 и тд
AP
20:11
Andrey Pfau
если ты сам в соло делаешь - окей, пиши хоть на фортране
a
20:12
assemblerx64
Ну ты видимо не знаешь сколько человек пишет бэк на свифте, но пон
AP
20:13
Andrey Pfau
ну да есть вакансии, не спорю
a
20:14
assemblerx64
In reply to this message
А у тебя какой стек?
AP
20:15
Andrey Pfau
20:15
20:15
20:15
a
20:15
assemblerx64
Я пишу быстро на питоне и тесчу бизнесы, бэк пишу на Go и приложения на Swift. Что скажешь по нему?
AP
20:15
Andrey Pfau
In reply to this message
ну это правильно
DS
20:15
Denis Serg
In reply to this message
это, конечно, оффтоп.

но таки kotlin jvm заявлялся как better java, это было их маркетинговым ходом
просто сахар над жавой.

а их котлин нейтив/мультиплатформ - та еще наркомания, проще на плюсах что-то накидать, чем обмазаться нейтивом
AP
20:15
Andrey Pfau
такой подход одобряю
a
20:15
assemblerx64
In reply to this message
Гуд
AP
20:16
Andrey Pfau
In reply to this message
а что не так с нейтивом?
20:17
просто все сравнивают нейтив с котлином 1.1 когда там он был жутко лаганный
20:17
это правда
20:17
сейчас уже 1.6.10 актуальная версия и там скорость близко к софту на си
20:17
ну быстрее JVM уж точно
DS
20:18
Denis Serg
In reply to this message
да дело не в скорости, а в удобстве разработки.

мне надо было написать либу нативную, в итоге плюнул и пошел писать ее на сишке даже вроде, не плюсах

rust > c++ > kotlin native
F
20:27
F
In reply to this message
Мда, парни, ну вы даете. Человек пришел помощи просить, а вы тут дискуссию на 150 сообщений устроили про языки. Вроде про разработку, а вроде и флуд 🤷‍♂️
OO
20:28
Oleg Oskolsky
In reply to this message
+
D
20:32
Denis
я тут начал накидывать клиент тонцентра на go. Кому интересно https://github.com/bored-ton/ton-go
Документация еще индексируется, но скоро прорастет
А
20:38
Андрей
In reply to this message
+
AF
21:37
Anton F
О, холивар о языках и никто не позвал пограмиста языка Ада? 🙄 В следующий раз повезет
AP
21:44
Andrey Pfau
In reply to this message
Когда речь зашла о php я сразу хотел тебя тегнуть 😂
DD
21:49
Dmitriy Dolinin
поделится ли кто ссылкой на пример func&typescript кода как реализовать стейкинг контракт метод на TON подобно EVM staking::deposit(...) payable
c
22:02
cryshado
In reply to this message
нет примеров таких
22:03
и зачем там typescript?
AP
22:03
Andrey Pfau
In reply to this message
js moment
c
22:04
cryshado
🌚
DD
22:04
Dmitriy Dolinin
ну хоть какой то работающий живой пример с тестом
c
22:05
cryshado
In reply to this message
22:05
и жс юзать не нужно при разработке контрактов
22:05
In reply to this message
нет смысла точнее
DD
22:07
Dmitriy Dolinin
спасибо - ну я приспособился уже к ton-contract-executor для тестовых вызовов
c
22:08
cryshado
In reply to this message
выбрось и забудь что это… чем быстрее тем лучше. Это очень ограниченная штука
22:08
в тоне специально придумали языки свои для контрактов, тестов и т д
AP
22:14
Andrey Pfau
In reply to this message
@ddolinin если тебя пугают fift и func тем, что нет поддержки подсветки синтаксиса и подсказкам, то очень рекомендую плагин для IntelliJ:
https://plugins.jetbrains.com/plugin/18541-ton-development
NA
22:15
Narek Abovyan
In reply to this message
А чем она ограничена?
AT
22:22
Andrey Tvorozhkov
😂 это может продолжаться бесконечно
c
22:24
cryshado
In reply to this message
AT
22:24
Andrey Tvorozhkov
Мне кажется нужно ввести правило, что мы не спорим что использовать в разработке.

Мне кажется программисты сами поймут что лучше, а что хуже. А пользователи выберут правильные сервисы 🧐
NA
22:24
Narek Abovyan
@wrkpro так в чем ограниченность? Просто интересно)
AP
22:24
Andrey Pfau
Ребят, если вы втягивайтесь в новую технологию, то и изучайте ее и пользуйтесь соответствующими инструментами. Если хотите на js/solidity писать то вам явно в тон делать нечего
c
22:25
cryshado
In reply to this message
+
AP
22:25
Andrey Pfau
На худой конец есть everscale
22:26
Особенность тон в том что тут полностью с нуля разработан стек технологий. Для серелизации используется свой TL-B, а не protobuf или cbor, для программирования - fift/FunC, даже протокол сетевой ADNL. Если вы не готовы к переменам не нужно тащить Легаси стек в новый проект
F
22:27
F
@testgiver_ton_bot обновили, добавили капчу, тайм-аут в 1 час и вывод в 1 монету.
Это почти решило проблему с высасыванием тестовых монет ботоводами. Хотя они до сих пор там присутствуют. Я хз кстати зачем им это.
c
22:28
cryshado
In reply to this message
ну как зачем, мне нужно было какие-то прикалюхи тестить и нужно было тонов 200, но мне в итоге больше дали и бота писать не нужно)
22:28
тестнет тоны бесплатные их можно и побольше давать
AF
22:28
Anton F
На случай если тест3 переименуют в мэйннет2 😂 Рад что обновили, тестовых тонов людям постоянно нехватало
AT
22:28
Andrey Tvorozhkov
In reply to this message
Согл
F
22:29
F
In reply to this message
Там ботоводы уже по несколько тысяч монет собрали) у некоторых десятки тысяч
Ну а если что то масштабное, то можно и тут спросить, мы насыпим)
AM
22:29
Alexander Mamaev
Приятно чувствовать себя богатым
AP
22:29
Andrey Pfau
NA
22:30
Narek Abovyan
In reply to this message
Так ты не расскажешь чего там ограничено? А то какие-то голословные высказывания получаются))
AP
22:30
Andrey Pfau
Крутая защита, я тест Тьюринга не прошёл...
AM
22:30
Alexander Mamaev
In reply to this message
Кнопку нажать мб
AP
22:31
Andrey Pfau
In reply to this message
Жмакал...
c
22:31
cryshado
In reply to this message
я уже 1000 раз писал об этом и не только я, нет смысла спорить сейчас
AP
22:31
Andrey Pfau
In reply to this message
Тем что все взаимодействие JS - это тупо отправка запросов на централизованный сервер, чтобы просто пернуть нужно сеть дергать как минимум
22:31
Это только одна из сотен проблем
NA
22:31
Narek Abovyan
Чего)) Какой сервер
22:32
Там локально TVM поднимается
22:32
И в первых версиях это вообще была cli тулза, никак не связанная с жс, хоть с питона ее дергай хоть с кобола
AP
22:33
Andrey Pfau
Ты смарт контракты тоже на js писать будешь?
NA
22:33
Narek Abovyan
🤦
22:34
Причем тут код смарт контракта и запуск контракта чтобы локально его тестировать?
c
22:34
cryshado
In reply to this message
что мешает, это делать используя фифт, который для этого придуман например?
22:34
и это опять спор без смысла и флуд
AP
22:34
Andrey Pfau
А к чему вообще вопросы? Чтобы запустить TVM достаточно и bash скрипта, зачем тут js?
NA
22:34
Narek Abovyan
Ничего не мешает. Ты сказал штука ограничена - я пытаюсь понять в чем
c
22:36
cryshado
In reply to this message
именно
AP
22:36
Andrey Pfau
Шило на мыло просто меняете
c
22:36
cryshado
In reply to this message
тем что пока ее завести нормально, ногу сломать можно, если ты не жс разраб, как минимум
22:36
Deleted Account
In reply to this message
😐
NA
22:37
Narek Abovyan
Аргумент уровня - порш говно, потому-что я не умею водить))
AP
22:38
Andrey Pfau
Чел, это тоже самое если бы щас @AntonMeep пришел и начал задавать вопросы как ему отправить из Ады монетки в другой кошелек. Если хочешь экзотику - ну так разберись с основными инструментами а дальше хоть на паскале делай
22:38
Пора бы уже это в правилах беседы прописать
AM
22:41
Alexander Mamaev
Js тесты читать не удобно
NA
22:41
Narek Abovyan
Гайз я может для вас секрет открою, но когда будут нормальные тулинги под распространенные языки и доки к ним - никто не будет разбираться в фифте, который был написан т.к. нужен был какой-то скриптовый язык, а форт и его родственники одни из самых простых в реализации. В конечном счете какая разница чем собирать ячейки?
AF
22:42
Anton F
Да все равно нет пока прям хороших либ для любого языка чтобы прям все из коробки работало 🤷 Добро пожаловать в тондев, если хотите чего-то достичь то по локти в кишках тона окажетесь
AM
22:42
Alexander Mamaev
Это не скриптовый язык…
AP
22:43
Andrey Pfau
In reply to this message
В конечном счёте ячейки все равно будет фифт собирать, вы же просто делаете бессмысленный многослойный пирог из абстракций
NA
22:43
Narek Abovyan
Аргументы же уровня “так делать говно потому-что жс говно” или “ну это говно потому-что у меня не завелось” - это детский сад.
Мы тут пытаемся коммюнити построить, а не секту свидетелей фифта.
22:43
In reply to this message
Конечно же нет
22:43
In reply to this message
А что же это по-твоему?
22:44
Тут половина народа путает биткод TVM и фифт, камон о чем вы вообще
AF
22:44
Anton F
In reply to this message
Разницы действительно никакой, а тулинг будет когда его кто-то напишет :) Основная команда другими вещами занимается
NA
22:44
Narek Abovyan
In reply to this message
Ну так тут ребята сразу токсично накидываются по поводу любых тул кроме фифта, в этом и проблема
AF
22:46
Anton F
In reply to this message
Не столько токсично сколько то, что если хочется добиться реального результата то других путей пока нет. Ну не советовать же каждому новичку чтобы он сам всю сериализацию и подобное писал с нуля на его любимом языке
NA
22:48
Narek Abovyan
Так нет, чувак спрашивает например как в тон либе на жс отправить денги с кошелька - чуваки иронизируют, что он выбрал не ту платформу
D
22:51
Denis
In reply to this message
про масштабное: для валидатора в тестнете тоже нужно 300к или можно с 1го токена стартануть для тестов?
AP
22:52
Andrey Pfau
In reply to this message
Вроде как тоже
c
22:52
cryshado
In reply to this message
в тестнете 10к
D
22:54
Denis
In reply to this message
спасибо!
22:55
как будет чуть больше времени, приду клянчить тесткоины на валидатора )
AP
22:55
Andrey Pfau
Долго придётся)
c
22:56
cryshado
In reply to this message
мы после того как допилим каталог, я буду девнет поднимать, и нам как раз валики нужны - дадим монеток
AT
23:00
Andrey Tvorozhkov
In reply to this message
Я верю, что то что вы делаете на джс хорошо, но не согласен, что продолжать развивать тон нужно посредством джса (типа выкинем все прошлое).

Я не понимаю аргумента "фифт было легко написать вот его и написали". Это не так. Фифт нихрена не просто написать. В исходниках куча задела на будущее, которое даже не успели реализовать.

По поводу ионизации - да, сейчас единственный способ понять как все устроено это пойти читать вайтпейперы и тыкаться в фифт фанкси (которвй работает на фифте) и tlb, потому что это единственный хорошо документированный источник информации. Джсовские сорсы конечно неплохи, но они нифига ничего не объясняют, это правда просто другой уровень абстракции с ограниченными возможностями. (например деплой библиотек)

Мне не нравится, что в джс ищут простых путей поднятия приложения, было уже оч много примеров, где люди берут джс, думают что что-то понимают в тоне и идут клепать. Потом приходят сюда с вопросами как будто мы в солидити сидим) Когда вы работаете с деньгами пользователей - вы хотите быть уверенным что приложение надержное. В джс этой возможности нет.

Но есть другие сферы применения ваших библиотек, где без них не обойтись. То что вы делаете очень круто. Но нельзя давать всем новичкам джс. Так же я не считаю что нужно заруинить всю работу по func / fift и перейти на джс. С такими идеями мы в тоне далеко не уедем.

Fift нужен, js тоже (для узких задач, после изучения вайтпейпера, фифта и фанкси с tvm).
D
23:02
Denis
In reply to this message
было бы здорово. Где-нибудь об этом можно будет узнать? (мб в личку или канал какой?)
c
23:02
cryshado
In reply to this message
ты про девнет или каталог?
D
23:03
Denis
In reply to this message
девнет
c
23:03
cryshado
могу в чат добавить
23:03
сек
D
23:05
Denis
In reply to this message
👍🔥
NA
23:07
Narek Abovyan
In reply to this message
Так это все решается документацией
c
23:08
cryshado
In reply to this message
🤦‍♂️
1
23:09
10658
In reply to this message
+
NA
23:09
Narek Abovyan
Хз про какой ты задел на будущее в фифте. Очевидно же, что это скриптовый язык, который тебе биткод компилирует, ячейки позволяет собирать и TVM запускать.
Никто не мешает весь этот функционал написать на любом другом языке, блокчейн от этого работать не перестанет
AT
23:11
Andrey Tvorozhkov
In reply to this message
Ну никто же не спорит. Пишите.

Просто все обновления, новый функционал должен быть реализован на fift / func в тоне.
NA
23:11
Narek Abovyan
Я повторюсь, но тут половина людей вообще считает, что смарт контракты на фифте пишутся и TVM исполняет фифтовый код. Ну если так рассуждать - тогда да, без фифта никуда.
Но далеко мы не уедем как раз именно с таким подходом. С такой логикой даже веб кошелька не должно существовать.
23:11
In reply to this message
Обновления чего?
AT
23:12
Andrey Tvorozhkov
In reply to this message
Функционала
NA
23:12
Narek Abovyan
Ты про инструкции TVM или про что?
23:12
Потому-что в фифте нет никакого функционала самого блокчейна
AT
23:12
Andrey Tvorozhkov
In reply to this message
Про код смарт контрактов на func
NA
23:12
Narek Abovyan
И причем тут фифт то?
AT
23:12
Andrey Tvorozhkov
Например, добавление подписей к клеткам
23:13
In reply to this message
При том, что есть функционал, который не нужно пихать в твм, а делать его нужно
23:13
Для этого в func есть asm
NA
23:13
Narek Abovyan
Ну это препроцессинг, его на чем угодно можно сделать
AT
23:14
Andrey Tvorozhkov
In reply to this message
Да блин, зачем переворачивать все в тоне ради того, чтобы сделать "на чем угодно"?)
23:14
Ну вот кому это сейчас надо?
23:14
Почему не пойти и не продолжить пилить то, что есть?
c
23:14
cryshado
In reply to this message
а вопрос на.. зачем его делать на чём угодно? ты это уже 100 раз повторил и не разу не сказал ЗАЧЕМ
NA
23:15
Narek Abovyan
Например чтобы людям не нужно было ломать мозг чтобы понять как работает постфиксная нотация в фифте, чтобы написать простейший контракт?
Повышенный порог входа - это конечно хорошо, но только когда он оправдан
AT
23:16
Andrey Tvorozhkov
In reply to this message
Тонкли решает эту проблему
23:16
Деплой простых контрактов в 2 строчки
NA
23:16
Narek Abovyan
Он ее просто скрывает
AT
23:16
Andrey Tvorozhkov
Там нет ничего сложного
23:16
In reply to this message
Как и джс сейчас
23:17
In reply to this message
Я верю в то, что если люди пришли делать сложные приложения на смарт контрактах - они должны очень сильно погрузиться в их работу и понять все детально
NA
23:17
Narek Abovyan
Хз либы на жс тупо реализуют спеку, там нечего скрывать
AT
23:17
Andrey Tvorozhkov
Иначе деньги пользователей будут утекать
NA
23:17
Narek Abovyan
Все так, пусть читайют вайтпереры
AT
23:18
Andrey Tvorozhkov
In reply to this message
Вы из фанкси как генерируете asm?
23:18
func -SPA ?
NA
23:18
Narek Abovyan
Я к тому, что тон концептуально гвоздями к фифту не прикручен и не нужно топить ребят который пришли с вопросами не про фифт
AT
23:18
Andrey Tvorozhkov
In reply to this message
Абсолютно согласен
AM
23:19
Alex Molina
In reply to this message
Ставлю плюс. Пока я смог только им деплоить. Лично я столкнулся с некоторыми ньюансами, но почитать что ему надо и хотя бы можно начать что-то делать
AT
23:19
Andrey Tvorozhkov
Но сейчас нет альтернативы, которая покажет пользователям как работает тон не на фифте и фанкси
NA
23:19
Narek Abovyan
In reply to this message
Ага
23:19
In reply to this message
Да че нет то, взял тонвеб тот же и задеплоил
AT
23:19
Andrey Tvorozhkov
In reply to this message
То что вы сделали очень круто. Я уже много раз это говорил.

Просто вы еще недоделали до конца
23:20
In reply to this message
Ну как сказать...
23:21
In reply to this message
Ну в этом и проблема, вы говорите что тонкли скрывает от пользователя все сложности, а сами генерируете fift asm и прогоняете его в своей vm
NA
23:21
Narek Abovyan
Нет, вм принимает бинарник
AT
23:21
Andrey Tvorozhkov
Сложные смарт контракты на фанкси можно сейчас сделать только через asm
23:21
С использованием фифта
23:21
Просто нет всех примитивов для твм которые нужны
NA
23:22
Narek Abovyan
Ну да кто спорит то
AT
23:22
Andrey Tvorozhkov
In reply to this message
Ну вы говорите, что фифт не используется в разработке контрактов)
23:23
правильно сказать, что это происходит до определенного момента
23:23
Когда вам требуется сложный функционал
AT
23:23
Andrey Tvorozhkov
А сам фанкси в джсе собирается через fift asm
23:23
Который оперирует стеком фифта, чтобы правильно поставить битики
23:24
In reply to this message
Я уже говорил, что это супер костыльный метод.

Даже то, что вы юзаете json RPC для публикации контракта, который работает с деньгами пользователей - уже большая проблема.
23:24
In reply to this message
Этот шаг назад, а не вперед
NA
23:25
Narek Abovyan
In reply to this message
Он используется на этапе препроцессинга функа и его компиляции в биткод
23:25
Представь завтра появится компилятор функа, который тебе сразу бинарник выдает вместо куска кода на фифте и с другим препроцессингом
AT
23:25
Andrey Tvorozhkov
In reply to this message
И использовании сложный методов с использованием asm
23:25
Deleted Account
In reply to this message
У нас пока не было никаких проблем и продукт работает )
NA
23:26
Narek Abovyan
In reply to this message
А ты что используешь?
23:26
lite-client?
AT
23:26
Andrey Tvorozhkov
In reply to this message
Зачем в тоне на ваш взгляд существует adnl?
23:26
In reply to this message
Да
NA
23:26
Narek Abovyan
Ну так хттп апи тоже его юзают
AT
23:27
Andrey Tvorozhkov
In reply to this message
Блин, ну зачем создавать adnl если им не пользоваться
23:27
Ну камон
NA
23:27
Narek Abovyan
По такой логике все кошельки нужно выкинуть потому-что они к сети опосредованно обращаются через lite-server
AT
23:27
Andrey Tvorozhkov
In reply to this message
Да нет, не передергивайте
NA
23:27
Narek Abovyan
Да потому-что абсолютно нафиг не нужно твоему телефону коннектиться к adnl чтобы баланс посмотреть или денюжку отправить
AT
23:28
Andrey Tvorozhkov
Из веба оч сложно попасть в тоновскуб сеть, потому что udp
NA
23:28
Narek Abovyan
Так же как и не нужно чуваку чтобы контракт залить или взаимодействовать с ним
AT
23:28
Andrey Tvorozhkov
То, что кошельки не пилят внутреннюю поддержку adnl - беда
c
23:28
cryshado
In reply to this message
+
AT
23:28
Andrey Tvorozhkov
Но это жертва ради скорости набора пользователей. Потому что нас тут разбирающихся человек 20
23:29
In reply to this message
Ну я так не считаю
23:29
In reply to this message
Тоже так не считаю
23:29
Если вы делаете смарт контракт - вы должны полностью понимать его работу.

Когда вы делаете сложный смарт - вы неизбежно сталкиваетесь с нуждой использовать фифт
23:30
Все разработчики которые сейчас будут писать контракты с использованием asm, что будут делать когда вы перейдёте на ваш прекрасный func js будущего?
23:30
Выкинут свои наработки и сервисы и все перепишут?
NA
23:31
Narek Abovyan
А зачем писать контракты на asm вообще?
AT
23:33
Andrey Tvorozhkov
In reply to this message
Сейчас невозможно иначе))
23:33
Deleted Account
In reply to this message
Я думаю что проблемы можно решать разным способом. Если кому-то удобно добиваться результата через js - им поможет наш кукбук. Если человек захочет все делать на фифте - воспользуется ton-cli. Мы же строим экосистему с разных сторон :)
NA
23:33
Narek Abovyan
In reply to this message
В смысле, я же писал на функе
AT
23:35
Andrey Tvorozhkov
In reply to this message
Как подписать сообщение перед отправкой из фанкси?
NA
23:36
Narek Abovyan
Не очень понял
D
23:40
Denis
In reply to this message
останутся на asm, зачем им переезжать?! Вообще разговор выглядит как "нужно писать на ассемблере, все должны понимать ассемблер". Кажется, что если появляется что-то, что жизнь конкретных людей упрощает — это хорошо для сообщества и этих самых конкретных людей в частности.
c
23:41
cryshado
In reply to this message
давайте под микроконтроллеры писать на жс
23:41
In reply to this message
ну есть ру разрабы пытались, вышло не очень в итоге
D
23:41
Denis
In reply to this message
давайте мл делать на ассемблере )
c
23:42
cryshado
In reply to this message
мл в 99% вообще отмыв денег 👍
D
23:47
Denis
In reply to this message
если что, я не за жс топлю, а за то, чтобы люди могли решать свои задачи удобными для них инструментами и по-возможности как можно проще. хоть на пхп.
будет тулинг на жс — набегут фронтендеры, наделают сервисов — профит.
будет тулинг на расте — набегут разработчики на расте — круто же
15 February 2022
AF
00:11
Anton F
Вообще тулинг на расте или любом другом нативном языке, да даже и не на нативном, упирается в отсутствие адекватных либ на Си или крестах. У нас бы вообще этого разговора тогда не было - написать обертку для новых языков гораздо проще чем переписывать одни и те же вещи
00:13
Смотрел я исходники - вроде библиотеки и есть но откуда хвосты растут и как это интегрировать совершенно непонятно. Ну, бета код такой - вообще либы от телеграма вполне себе ничего обычно, хотя конечно бывает и лучше
D
00:13
Denis
In reply to this message
есть же libtonlibjson (ClientJson), вроде там все нормально, просто нужно сидеть биндинги писать, а это не самое приятное занятие.
AF
00:21
Anton F
In reply to this message
То что оно существует совершенно не значит что его легко использовать :( Биндинги это обычно самая легкая часть - некоторые языки умеют напрямую Си дергать, у других есть тулзы чтобы их автоматически генерировать.
D
00:23
Denis
In reply to this message
А что ты вкладываешь в понятие "легко использовать"? Он просто максимально адаптирован под эти кейсы: принимает json, отдает тоже json
AF
00:23
Anton F
Но к сожалению, типично как это телеграм любит делать, нас избавили от скучных и простых сишных интерфейсов - вместо этого у нас свой интерфейс на Джейсоне потому что так надо(тм)
00:24
In reply to this message
Именно в этом и зло - вместо биндинга который будет повторять сишное апи, придется полностью писать парсер вот этого вот их формата
00:25
Так что да, библиотеки для разработчиков есть, но есть нюансы
00:30
Как по мне так на этом примере отчётливо видно, с чем мы имеем дело - заброшенным проектом большой компании. Все эти вещи вполне имеют смысл в рамках одной организации, у них уже все там внутри на ТЛ и джейсонах, так что нет смысла их не использовать и для очередного проекта, но в формате открытого проекта которым рулит сообщество плюсы таких решений уходят и имеем что имеем
D
00:32
Denis
In reply to this message
тут я не согласен ) писать биндинги под кастомные плюсовые структуры (типо не std::vector, а какой-нибудь tg::vector и тд) — это тот еще фан. А JSON скастить куда нужно — супер легко в любом языке.
AF
00:40
Anton F
In reply to this message
Если бы это писали не в Телеграме, интерфейс бы вполне мог быть и на простом Си, как во многих проектах где заботятся о разработчиках.
00:46
Суть в том что в тоне очень много вещей, которые не имеют смысла для тона как свободного проекта. Например ADNL - нет никакой веской причины использовать его вместо хорошо известных, проверенных и распространенных альтернатив кроме как то что его решили использовать в Телеграме во время беты. И теперь спрашивай, а почему на него всем разработчикам кошельков наплевать
A
00:47
Andrei
ADNL это задел под i2p-подобную сеть 🤔
AF
00:49
Anton F
In reply to this message
В противном случае у нас останется этакое "ядро" из решений принятых телеграмом, которое будет обернуто в интерфейсы привычные разработчикам, и именно их и будут все использовать 🙄 Веб3.0? У нас приложение через РЕСТ обращается к серверу, который дёргает фифт через system() который и достает нужные данные из блокчейна 🤦
c
00:51
cryshado
In reply to this message
Да не. Разрабы должны познать все протоколы и выдумки дуровых, чтобы работать с ними без всяких shell костылей и обёрток. Так чтобы кидать запросы к тем же лайт серверам, без тонцентра, который сам обертка было как нефиг делать
00:52
Телеграм вон работает на mtproto, есть куча либ для работы с этим протоколом и т д
00:52
Просто в тоне сейчас разрабов можно по пальцам пересчитывать, их близко не сотни и не сотни тысяч пока что
00:54
Да и надо понимать что все кусочки кода дуровых на плюсах, это как бы «черновики», много что не допилино и т д. Так и хочется написать с чистого листа, сохранив все идеи и сделав лучше - но ресурсов нет у разрабов, как и самих разрабов мало
00:54
В каком нибудь файлкоине код ноды блокчейна на голанге и только на чем не написали, там свежий, читаемый код и т д. А тут по факту драфтики тестнета в проде
AF
00:56
Anton F
Ктож знал что так выйдет - если бы Телеграм не забросил тон то были бы ресурсы все это довести до ума, написать документацию и тд
c
00:56
cryshado
In reply to this message
Это да, уверен, что было бы намного лучше. Но тут скорее не вина телеграма, думаю им самим не весело было такое бросать.
AF
00:57
Anton F
Эх, надеюсь что хоть в главной тиме понимают что Николай Дуров он конечно молодец но он не мессия кодинга и не все решения которые были приняты им оптимальны или имеют смысл в настоящих реалиях
00:58
In reply to this message
Там такая история, а денег сколько ушло 😱 Что интересно, не на разработку а на финансовые штучки 😂
00:59
Эх, есть люди которые пишут код, а есть те кто продает фантики за мильёны
00:59
Тут значит код пишут... Есть ссылка на второй чат?
c
01:00
cryshado
In reply to this message
Он скорее учёный, если можно так сказать, а не программист. Его задача придумать алгоритмы и т д - и с этим он отлично справился, многое впечатляет. Даже в коде ядра тона прослеживается такой стил разработки, олимпиадный скорее.

А вот красивый, читаемый и поддерживаемый код это уже задача других разрабов.
01:00
In reply to this message
Ыыы
CP
01:01
Catchain Protocol
In reply to this message
Согласен.
Николай не придумывает готовые решения - он придумывает концепцию и формальную модель
c
01:02
cryshado
Ну вообщем по хорошему сейчас должна образоваться команда разрабов. Хз ее соберет TF или кто как. И они должны реализовать фундаментальные вещи. Код той же ноды(а это сейчас самая важная часть) абсолютно не поддерживаемый, хоть и реализует крутые алгоритмы и т д
01:02
Вот что сейчас важно, а не стандарты нфт)
01:03
In reply to this message
Тут многие уже дефи, дао всякие хотят и им потакают- до этого еще ой как далеко. По факту все с нуля
01:03
Юзеры думают что тон уже готовый блокчейн, но чувствуется запах того, что все же мы в тестнете :)
AF
01:04
Anton F
Надеюсь они смогут выделить все важные части в отдельные, простые библиотеки и перейти к более популярным протоколам и инструментам там где это имеет смысл 😌
c
01:05
cryshado
In reply to this message
Пока увы не заметно, чтобы этим кто-то занимался. Тут с киптографией в кошельках значения раундов на рандом с потолка, какие инструменты протоколы ..
AF
01:06
Anton F
In reply to this message
Код на хлеб не намажешь и в карман не положишь - и дефи тоже нужно заниматься, надеюсь это не за счёт кодеров делается
01:06
Кхем кхем ТФ что-то я не вижу вакансий разработчиков
01:07
Знаю были какие-то конкурсы, но вы же не Телеграм людей только через олимпиады нанимать
c
01:07
cryshado
In reply to this message
Не, я про то, что енот и т д сейчас заняты комитами в стандарт нфт. Это по факту основоположники блокчейна сейчас, есть более важные фундаментальные вещи - когда они будут, всякие дефи и т д и обычные разрабы запилят
01:08
А вот понять, как тон изнутри работает не каждый может, тем более доработать и сделать лучше
01:08
In reply to this message
Это если что я говорю с того что наблюдаю каждый день на гитхабе
AF
01:09
Anton F
In reply to this message
Соглашусь, но что-то мне подсказывает что после нфт они будут заняты днс или какие там потом трехбуквенные аббревиатуры в роадмепе идут
CP
01:10
Catchain Protocol
In reply to this message
скорее всего так и будет, поэтому надо девам объединяться и ставить общие цели
c
01:10
cryshado
In reply to this message
Ну днс, это такой же контракт, как и нфт. Там нет ничего сверх магического, просто на это нужно время. Днс может пилить кучка разрабов обычных, это не фундаментальная основа блокчейна
AF
01:10
Anton F
Вот и будет у нас стандарт нфт и полный дикий запад в мире апи для разрабов
c
01:10
cryshado
In reply to this message
Вот она суть проблемы)
AF
01:11
Anton F
Тхе Опен Нетворк - стандартизируем не то и не туда 👍
c
01:12
cryshado
Сейчас чтобы разобраться как тон прокси работает или нода изнутри обычному разрабу нужно потратить столько же времени, сколько и TF на это потратили. Смысл в таком замкнутом круге
01:12
Ну кстати как некоторые пытаются переписывание биндингов под js проблемы не решает )
01:13
Тут более глобальные вещи надо делать, но опять же сторонние разрабы встают в 100500 тупиков, а так как пока я наблюдаю человек < 100, которые активно что-то делают - хз как это разгребать
01:15
Страшный сон это если через году тут будет: подписки в тонкипере, какие нибудь NFT и всякие прикалюхи с ботами, псевдо крипто-соц-сети и тот же самый старый код ядра, инструментов и тому подобных важных вещей
T
01:17
Tolya
AF
01:18
Anton F
Да уж, тут точно нужно как-то организовать разрабов - даже если найдется герой или два которые перепишут какие-то части ноды, интегрировать это в основную базу будет некому, да и зачем Запорожцу новый двигатель
01:18
Именно, дискутировать мы любим а вот код писать это вы сами как нибудь, не отвлекайте от дискуссии
c
01:19
cryshado
In reply to this message
Слево направо
AF
01:19
Anton F
Чат без реакций, как же хочется сердечко поставить 🥺
c
01:19
cryshado
In reply to this message
Так и не включили :(
AF
01:20
Anton F
Вот мы и наконец то докопались до источника всех проблем тона. Лайков в чате нет, откуда тут всему остальному взяться?
c
01:21
cryshado
In reply to this message
Вполне логично
CP
01:25
Catchain Protocol
In reply to this message
тру
T
01:34
Tolya
На примере из вашей практики, когда у вас есть отлично работающий код, который работает в продакшене без ошибок, часто его переписываете?)
01:35
Считаете что linux надо переписать на более модный язык?)
CP
01:35
Catchain Protocol
In reply to this message
да.
для личного опыта, красоты кода и бест практис полностью менял архитектуру мобильного приложения
T
01:36
Tolya
In reply to this message
сколько раз в месяц переписываете
CP
01:36
Catchain Protocol
In reply to this message
два раза переписывал за два месяца 😜
c
01:36
cryshado
In reply to this message
Ну в линуксе много новых компонентов появляется, старые и уязвимые убираются и т д. Ядру тона до линукса еще очень очень …
P
01:37
Priani4ek
Молодым не понять концепта "работает - не трогай", их же с юности сейчас учат бесконечному процессу разработки, а не конечному результату вида "сделал один раз нормально и ушёл". За это же нельзя бесконечно получать деньги, индустрия так устроена
c
01:38
cryshado
In reply to this message
Тон ещё ни разу не написали, то что сейчас в проде это драфты для тестнета
01:38
Никто не просит переписывать что-то, переписывать нечего
T
01:38
Tolya
In reply to this message
c
01:39
cryshado
In reply to this message
🦝
P
01:40
Priani4ek
In reply to this message
Тогда к чему разговоры про поддерживаемость кода? Как будто его толпа аджайлистов с продуктовым подходом будет переписывать каждые пол-года?
c
01:40
cryshado
In reply to this message
Сейчас даже что-то доработать это полный ад, как мне кажется
SG
01:41
Setup Gg
Ну, еверскейл написали.
Хороший такой понятный код.
Читается гораздо легче, собирается без танцев с бубном
DV
01:41
Dan Volkov
In reply to this message
а что тон разве с танцами собирается?
SG
01:42
Setup Gg
In reply to this message
Собери его в новой убунте без докера без даунгрейда гцц
DV
01:42
Dan Volkov
In reply to this message
в новой это в 22.04?
SG
01:42
Setup Gg
Модули эверскейла собираются тупо в идешке при первом билде
P
01:43
Priani4ek
Пф, тоже мне проблемы. Пару команд в консоли набрать не могут, иде им подавай. А вы точно айтишники? (С)
AP
04:04
Andrew Python
In reply to this message
Не думаю что это будет трудно, после того как его собрали на M1 )
CP
05:57
Catchain Protocol
что в тлб означает (## n)
AP
06:39
Andrey Pfau
In reply to this message
Размер в битах. В текущем кейсе - depth - 24 битное целое число.

Вот тут подробная документация:
https://github.com/tonuniverse/TL-B-docs
CP
06:41
Catchain Protocol
я уже прочитал ее насквозь) благодарю
AT
11:16
Andrey Tvorozhkov
Пришёл тот день, когда мы обзавелись отдельным сервером в кластере для тона :))
AS
11:17
Aleksandr Shepelev
In reply to this message
кубер на фифт хоть переписали?))

или на го идете в веб 3.0?)
AT
11:24
Andrey Tvorozhkov
In reply to this message
Я не очень понимаю эти смехуёчки)

Вы считаете что моя работа с тонкли и упрощением работы с фифтом + тесты на фанкси не нужны? Или в чем поинт то?
AS
11:25
Aleksandr Shepelev
In reply to this message
тут на все продукты не на фифте так пишут :(

я тренд поддерживаю
AT
11:25
Andrey Tvorozhkov
))
AS
11:25
Aleksandr Shepelev
в общем небольшой троллинг, прошу не обижаться :)

пис лаф жвачка тон

все продукты нужны :)
CP
11:25
Catchain Protocol
собрались приколисты короче.
AT
11:26
Andrey Tvorozhkov
In reply to this message
💪👍😁
AL
11:27
Artem WINE Lebedev
Всем привет. Ищу разработчика , который может сделать игру в Телеграме.
B
11:50
BeverlyHills90210
Hi guys, I'm looking for a developer with whom I can discuss my idea to deploy an application
AT
11:51
Andrey Tvorozhkov
In reply to this message
Hi. If you have money to support developers - you can use https://i.tonic.cx/
S
12:14
Sam
всем привет, погружаюсь в тему ТОН. возник вопрос, как можно подтвердить отправку транзакции? к примеру эфир возвращает хэш транзакции (https://eth.wiki/json-rpc/API#eth_sendrawtransaction), есть ли что то подобное в ТОН?
g
12:14
ggg
Всем привет! Мне нужно написать скрипт, который создаст новый кошелек и будет проверять транзакции, создавать счета. Подскажи, как это сделать? И есть ли рабочие готовые примеры для этого?
AS
12:26
Aleksandr Shepelev
In reply to this message
просто мониторишь адрес на предмет транзакций

или блоки на предмет нужной транзакции
S
12:27
Sam
In reply to this message
а как сматчить нужную транзакцию, если я не знаю ее хеш?
12:29
есть ли возможность узнать хеш транзакции при ее отправке? как в эфире выше
AT
12:30
Andrey Tvorozhkov
А что вы делаете? Зачем это нужно?
AS
12:30
Aleksandr Shepelev
In reply to this message
он хочет отправить транзакцию, потом подтвердить у себя на бэке что она дошла. типа того.
AT
12:31
Andrey Tvorozhkov
In reply to this message
External или internal?
S
12:34
Sam
In reply to this message
все верно
AT
12:34
Andrey Tvorozhkov
In reply to this message
S
12:35
Sam
In reply to this message
я еще не до конца разобрался в терминах, извините

я отправляю транзакцию через библиотеку с бэка
AT
12:35
Andrey Tvorozhkov
In reply to this message
Какую библиотеку и что делает транзакция?
AS
12:36
Aleksandr Shepelev
In reply to this message
ну обычный трансфер монет, экстернал
12:37
просто перевод средств
AT
12:37
Andrey Tvorozhkov
Смотрите на измнение состояния контракта
12:38
Для того, чтобы защитить деньги, которые отправляете нужно использовать mode
12:39
я не очень хорошо разбираюсь конкретно в ващей js либе, но она делает сначала (external) запрос к кошельку (смарт контракту), и говорит ему отправить internal транзакцию
12:39
=> можно просто проверить, что кошелек действительно отправил internal транзакцию
12:39
Или посмотреть изменения баланса
S
12:41
Sam
In reply to this message
спасибо за информацию. поясните, как это работает?
12:42
In reply to this message
может быть посоветуете другую библиотеку, если есть лучше?
AT
12:43
Andrey Tvorozhkov
In reply to this message
Очень сложно) Юзер френдли документации нет. Нужно разбираться со смарт контрактами.

На мой взгляд самый простой способ это сделать - использовать toncli https://t.me/tondev/52402

еще довольно много написано в - https://github.com/dkeysil/awesome-ton-smart-contracts
12:43
Можно попробовать почитать вайтпейперы, но без живых примеров и тыканья в контракты - мне кажется невозможно ничего понять)
S
12:45
Sam
грустно, что такие простые, даже банальные вопросы так сложны в реализации на ТОН, в эфире это решается элементарно на уровне API
12:45
в любом случае большое спасибо, буду пытаться разобраться
AT
12:47
Andrey Tvorozhkov
In reply to this message
Это не так)

Я же сказал вам решение, смотрите на состояние аккаунта и его транзакции) Получить хэш после отправки не получится
12:48
Кстати, с транзакциями в кошельке можно смотреть на seqno
12:49
У каждого кошелька есть этот метод, если число увеличилось на 1 - значит было отправлено валидное сообщение
12:50
In reply to this message
У вас даже есть такой метод)
S
13:01
Sam
а если транзакция была отправлена с другого кошелька? к сожалению без точной идентификации транзакции по хешу гарантированного подтверждения не получить, это будет только косвенное подтверждение, которое в ряде случаев можно обойти
13:02
In reply to this message
я не совсем понял идею и как это реализовать
13:03
In reply to this message
под другим кошельком я имею ввиду другую программу-клиент
13:05
приходит мысль добавить в комментарий транзакции сгенерированный уникальный ID и матчить по нему, но это мне кажется костылем
S
13:07
Sam
а как мне узнать этот хеш при отправке транзакции?
AT
13:07
Andrey Tvorozhkov
Посчитать :))
S
13:08
Sam
API эфира например возвращает хеш сразу при отправке, а тут этого не происходит
AP
13:08
Andrew Python
In reply to this message
Дёргать getTransactions....
S
13:08
Sam
In reply to this message
разве это не возвращает нас к вопросу про матчинг транзакицй?
13:10
In reply to this message
хм а как это можно сделать?
AP
13:11
Andrew Python
Вообще не задумывался именно об исходящих транзакциях, обычно все проверяют входящие
S
13:12
Sam
и правильно ли я понял, что на один платеж будет две транзакции: внещняя от бэкенда к контракту кошелька и внутренняя от кошелька к кршельку получателя?
AT
13:13
Andrey Tvorozhkov
In reply to this message
Да
S
13:13
Sam
то есть проверять мне нужно именно вторую транзакцию получается
AT
13:14
Andrey Tvorozhkov
In reply to this message
Я вообще не понимаю юзкейс)
13:14
Зачем её проверять
13:14
In reply to this message
Мне кажется что это sha256
S
13:15
Sam
а если ее отправляет сам кошелек, то и хеш ее видимо появляется только на этапе выполнения контракта?
AT
13:15
Andrey Tvorozhkov
In reply to this message
Не понял)
13:15
Хэш он всегда один
13:16
На единицу данных
13:16
Локально его можно посчитать
13:16
Но мне кажется никто так не делал и не делает
S
13:16
Sam
In reply to this message
к примеру это может быть сервис, где пользователь может запросить вывод средств и нужно убедиться, что операция успешно выполнена
AT
13:16
Andrey Tvorozhkov
Кошелек отправлят raw message
13:16
Клетки, которая туда приходит
13:17
И определенным mode
13:17
Клетку вы сами в external отправляете как и mode
СВ
13:18
Сергей В
Мне кажется @samweb3 просто хочет отправить деньги, и убедиться что они дошли :)
13:18
И на этом все)
S
13:18
Sam
In reply to this message
по сути так и есть
AT
13:20
Andrey Tvorozhkov
In reply to this message
.
13:22
In reply to this message
А зачем с хэшами заморачиваться?
13:22
Почему seqno неустраивает?
S
13:24
Sam
In reply to this message
а если кошелек управляется несколькими программами одновременно? тогда seqno может увеличиваться независимо друг от друга
AT
13:24
Andrey Tvorozhkov
In reply to this message
Нет
A
13:24
Alex
In reply to this message
Он в смарт-контракте хранится
AT
13:24
Andrey Tvorozhkov
В транзакции к кошельку вы указываете секно
13:25
Чтобы транзакция прошла нужно указать то, что хранится в смарте
DS
13:25
Denis Serg
там же вроде есть контракты без seqno для батчей
S
13:25
Sam
то есть использовать seqno как монотонно возрастающий ID транзакции и матчить по нему?
AT
13:26
Andrey Tvorozhkov
S
13:26
Sam
но в самой транзакции он же не отображается, как я понимаю
AT
13:26
Andrey Tvorozhkov
Вы в трансфере указываете seqno
13:26
В вашей библиотеке
СВ
13:26
Сергей В
In reply to this message
как я вижу себе это, но я беби ТОН девелопер, так что может это будет булшит.

После отправки, можно запросить у кошелька назначения
raw.getAccountState получить raw.fullAccountState
в нем будет last_transaction_id
сделать raw.getTransactions
и попытаться отыскать там свою
AT
13:26
Andrey Tvorozhkov
In reply to this message
Нет, зачем так делать
13:27
Есть seqno)
13:27
13:27
После отправки сообщения кошельком - он обновляет seqno
13:28
И если обновление произошло - транзакция ушка
СВ
13:28
Сергей В
In reply to this message
так может кто-то другой отправил туда?
13:28
а есть же хайлоад волет в котором нет seqno?
AT
13:28
Andrey Tvorozhkov
In reply to this message
Ну ты же сам руками берешь этот seqno
13:28
И вставляешь в свою транзакцию)
S
13:28
Sam
In reply to this message
я как раз об этом же, если ушли две конкурирующие транзакции, то одна могла дойти, а нужная нет, seqno при этом увеличится
DS
13:29
Denis Serg
на обычном кошельке синхронь тразакции
AT
13:29
Andrey Tvorozhkov
In reply to this message
У вас сообщение к кошельку упадет
13:29
Нельзя отправить 2 транзакции к кошельку)
СВ
13:29
Сергей В
In reply to this message
и типа если я получу ошибку во время отправления, то кто-то его апнул до меня?
А если нет и он апнулся то значит точно моя?
AT
13:29
Andrey Tvorozhkov
In reply to this message
Да)
S
13:30
Sam
а может быть такое, что seqno увеличился, но средства не дошли?
СВ
13:31
Сергей В
In reply to this message
Но что делать с highload-wallet? например
13:31
у него нет seqno
AS
13:31
Aleksandr Shepelev
In reply to this message
там айдишник есть
13:31
или seqno у первой версии
13:31
просто внутрь одного сообщения можно N переводов запихать.
СВ
13:32
Сергей В
но получается нужно тогда под каждый код контракта проверки свой доставки?
AS
13:34
Aleksandr Shepelev
In reply to this message
ну да, кошелек это контракт, нужно обращаться с ним как с контрактом)
13:34
в зависимости от типа кошелька свои проверки
S
13:35
Sam
но я так понимаю, что если нода приняла транзакцию это еще не значит, что она будет выполнена в 100% случаев? Тогда может быть так:

Клиент №1 отправляет транзакцию X с seqno 5, нода приняла транзакцию к исполнению, но она по какой-то причине не была выполнена

Клиент №2 отправляет транзакцию Y с seqno 5, которая успешно выполнилась

Клиент №1 видит, что seqno увеличился и думает, что транзакция X выполнилась
AS
13:36
Aleksandr Shepelev
In reply to this message
в случае обычных кошельков просто проверяйте наличие транзакции в списке транзакций адреса) после проверки высылайте новую. типа очередь организовать, одна исполнена и подтверждена, следующая пошла на процессинг
S
13:37
Sam
In reply to this message
а как проверить наличие транзакции в списке, если я не знаю ее хеш, мне кажется мы ходим по кругу 😁
СВ
13:38
Сергей В
In reply to this message
у меня есть небольшой парсер блоков, вот с января я нашел 111 разных смартконтрактов, как все это поддерживать потом ?:)
Если мы говорим про сервис, пришел пользователь, вбивает адрес фиг пойми чего, что с этим делать? :)
S
13:38
Sam
очередь не работает в ситуации когда один и тот же кошелек может одновременно использоваться несколькими программами
AS
13:38
Aleksandr Shepelev
In reply to this message
ну еще раз, у вас было 30 транзакций. вы бахнули транзакцию на 1 тон на адрес ааа с адреса ббб. проверяете что на адресе ббб 31 транзакция и последняя из них 1 тон на ааа
13:38
In reply to this message
только хранить мапу известных контрактов кошельков, всё остальное в unknown
S
13:39
Sam
In reply to this message
то есть мэпить по адресу и размеру транзакции?
AS
13:39
Aleksandr Shepelev
In reply to this message
и по номеру seqno да
13:40
In reply to this message
ну вот все программы должны сыпать в микросервис очереди
13:40
и микросервис будет процессить по очереди транзакции
13:40
или батчами, если мы говорим про хайлоад валлет
S
13:40
Sam
In reply to this message
это невозможно, если одна из программ например обычный кошелек
AS
13:40
Aleksandr Shepelev
In reply to this message
а зачем у вас приватник кошелька везде разбросан по 5 программам?))
13:41
тут в общем вопрос всей схемы тоже)
13:41
если у вас кастодиальный кошелек - вы весь процессинг забираете себе
13:41
если некастодиальный, просто отдаете это всё на откуп пользователю. если он вводит кошель в 5 местах и везде одновременно шлет транзакции, ну хз, можно в этом случае криво спроцессить что-то.
S
13:42
Sam
In reply to this message
это на мой взгляд наиболее адекватный пока что вариант, но к сожалению он не дает 100% точности, в случае отправки двух транзакций одинаково размера из двух разных программ. на практике, это конечно крайне маловероятно но с точки зрения логики такая ситуация возможна
AS
13:42
Aleksandr Shepelev
In reply to this message
ну надо понимать юзкейс, в вакууме юзкейс звучит странно. можете конкретный пример дать?
СВ
13:43
Сергей В
In reply to this message
Но как потом понять что это з смартконтакт вообще, я вот вижу 8000+ адресов unknown, как мне понять что это за смарт-контракт вообще такой?
вот пример
https://explorer.toncoin.org/account?account=0%3A1ee7e8c6e02322393789ec4f9f2e99d4e2048890a5e9ed426db800bb85935c1e
S
13:44
Sam
In reply to this message
хотя в данном случае наверное все равно кто отправил эта транзакцию, главное что она в итоге выполнена
F
13:44
F
In reply to this message
Если контракт не задеплоен, то никак. И если исходный код смартконтракта неизвестен - то тоже никак
AS
13:45
Aleksandr Shepelev
In reply to this message
да никак, зачем вам все контракты понимать?
там просто код какой-то. если дергаются все методы допустим нфт стандарта, значит нфт.

если код соответствует кошельку, то кошелек
13:45
если не дергаются, значит хрень какая-то
S
13:45
Sam
In reply to this message
думаю можно на таком варианте остановиться, большое всем спасибо за дискуссию и помощь 👍
13:46
In reply to this message
кстати официальный кошелек похоже так и делает
СВ
13:46
Сергей В
In reply to this message
вот я так и делаю :)
просто любопытно, довольно много контрактов такого типа
AT
13:47
Andrey Tvorozhkov
In reply to this message
Зачем? Почему нельзя смотреть на seqno?
AS
13:47
Aleksandr Shepelev
In reply to this message
человек хочет убедиться что его вторая софтина одновременно с первой не сунула другую транзу с этим секно :)
13:47
я говорю что юзкейс шляпа полная, но если надо то надо))
AT
13:48
Andrey Tvorozhkov
In reply to this message
Это невозможно
AS
13:48
Aleksandr Shepelev
In reply to this message
почему?
AT
13:49
Andrey Tvorozhkov
In reply to this message
Еще раз:

Ты отправляешь экстернал транзакцию в кошелек (там указываешь seqno). Если seqno совпадает с тем что в контракте - транзакция проходит. Если не совпадает - транзакция не пройдет
13:49
К кошельку
13:49
Нельзя одновременно отправить 2 транзакции)
AS
13:50
Aleksandr Shepelev
допустим я пишу (простихосподи на жс) что-то типа getSeqNo(), sleep(10000), send(txA). и тож самое send(txB). отправляю 2 процесса в параллель
AT
13:50
Andrey Tvorozhkov
In reply to this message
Второй упадет
AS
13:50
Aleksandr Shepelev
ну вот челу надо убедиться, какой именно сработал, мало ли с какого эррора грохнулось и кто был первый
AT
13:50
Andrey Tvorozhkov
Всмысле кто был первый?))
13:51
Первая пройдет успешно
13:51
Вторая упадет
13:51
Вы об этом узнаете)
13:51
Вам не дадут её отправить
13:51
В сеть
13:52
In reply to this message
В вашем случае ничего не нужно делать с хэшами
13:52
Нужно просто смотреть на seqno
13:52
Если сообщение отправилось - seqno будет на 1 больше
13:54
In reply to this message
Кошелек дергает вот этот метод твм
c
13:55
cryshado
In reply to this message
Там можно быть гением и впихнуть криврую транзакцию, которая поменяет seqno, но не уйдет и вообще заспамит v3 кошелек экстерналами которые реплаить будут валидаторы
AT
13:56
Andrey Tvorozhkov
In reply to this message
xD
13:56
Ну это если ты неправильно составил клетку)
13:56
Но это чет какой-то супер крайний случай
13:56
Кажется если ты используешь js)))