3 Создание токенов
В CyberWay каждый пользователь приложения может создать собственный вид токена (в EOS создавать токены могут только валидаторы, что дает валидаторам власть над приложениями). Токены создаваемого приложения должны разворачиваться на отдельном от cyber.token
аккаунте. Пользователь при создании токенов может использовать эталонную реализацию токен-контракта cyber.token
в качестве базовой, загрузив его содержимое в свою область. То есть пользователю необходимо создать свой аккаунт и свой вид токена.
3.1 Загрузить исходные файлы контрактов Войти в созданную для контрактов директорию и загрузить в нее копию удаленного репозитория с исходными файлами контрактов.
Репозиторий cyberway.contracts содержит несколько контрактов, но для создания токенов необходим контракт cyber.token
.
3.2 Создать аккаунт для контракта Перед тем, как развернуть токен-контракт, необходимо создать аккаунт этого контракта (учетную запись контракта), исполнив командную строку вида:
Параметры командной строки:
olga — имя аккаунта для создаваемого контракта;
olga.token — имя токен-контракта, загруженного с репозитория cyberway.contracts
с исходными файлами.
В качестве примера создан аккаунт контракта с именем olga.token
.
3.3 Скомпилировать контракт
Контракт компилируется в веб-ассемблеровский файл формата wasm
. Наличие опции --abigen
указывает, что будет также сгенерирован файл abi/olga.token.abi
.
3.4 Установить токен-контракт
Параметр:
olga.token@active
— имя, которое будет использоваться для авторизации запроса.
Токен-контракт будет считаться успешно установленным, если в результирующей выдаче выполняемой команды будет содержаться информация вида:
3.5 Создать токен
Для создания нового токена используется операция-действие create
. В качестве аргумента задается тип токена symbol_name
, содержащий два значения — максимальное значения предложения и символ токена. Вызов данного действия имеет вид:
Наличие опции -p olga.token@active
санкционирует контрактом olga.token
выполнение этого действия.
Создание токена считается успешным, если на мониторе появится информация вида:
В результате будет создан новый токен SYS,имеющий точность четыре десятичных знака. Максимально допустимое количество токенов в обращении должно быть ограничено значением 1000000000. Для создания этого токена требуется разрешение контракта olga.token
. Имя olga.token@active
будет использоваться для авторизации запроса.
3.6 Выпуск токенов Автор токена может выпускать токены на предварительно созданный аккаунт, например, на аккаунт с именем «alice», исполнив:
В результате выполнения команды должна появиться информация вида:
Выдача содержит одно действие issue
и три действия transfer
. Во время выполнения issue
дополнительно генерируются три внутренних вызова с уведомлением отправителя и получателя токенов.
3.7 Трансфер токенов Часть токенов может быть переведена с баланса одного аккаунта на баланс другого аккаунта. Например, для перевода суммы 25 токенов с баланса аккаунта «alice» на баланс аккаунта «bob» необходимо использовать командную строку вида:
Для выполнения этого действия требуется разрешение аккаунта отправителя «alice» — наличие опции -p alice@active
.
Трансфер токенов считается выполненным успешно, если по завершению действия в командном окне появляется информация вида:
Для контроля тансвера токенов можно воспользоваться вызовом get_currency_balance
для получения данных баланса аккаунтов отправителя и получателя, исполнив:
Last updated