BTSDEX v.4.x
С момента моего последнего поста добавилось много новых версий. Прежде чем начать заниматься версией
v0.5.X
хотел бы вам рассказать об основных изменениях в версии v0.4.X
.
Прежде чем я начну, стоит отметить, что к разработке подключились сторонние разработчики. Кто-то сообщал о найденных багах, кто-то предлагал pull-request-ы. Особую благодарность хотел бы выразить @technologiespro. Благодаря ему версия 0.4.X обогатилась еще большим функционалом.
Autoreconnect
Autoreconnect был добавлен для увеличения отказоустойчивости при длительном разрыве соединения с сервером. Такое может быть, например, если у вас произошло отключение интернета.
Автопереподключение включено по умолчанию и будет пытаться восстановить соединение бесконечно долго. Если вам не нужно такое поведение, это следует указать при инициализации класса BitShares
:
const BitShares = require("btsdex");
BitShares.init("wss://bitshares.openledger.info/ws", false, false);
login и loginFromFile
Для доступа к своему аккаунту, многие используют Логин и Пароль или через *.bin
-файл. Это упрощает взаимодействие: не нужно запоминать три разных приватника, достаточно хранить только один.
Решил добавить это в пакет btsdex
. Если вы знаете только логин и пароль от своего аккаунта, достаточно написать:
let account = await BitShares.login(<login>, <password>);
Теперь в account
такой же объект класса BitShares
, в котором проставлены ключи active
и memo
.
Еще один способ получить объект класса, использовать метод loginFromFile
:
const buffer = fs.readFileSync(<bit-file>);
let account = await BitShares.loginFromFile(buffer, <password>, <accountName>);
assetIssue и assetReserve
Класс BitShares
обогатился двумя операциями: asset_issue
для выпуска, и asset_reserve
для сжигания токенов.
Для выпуска токенов:
let account = await BitShares.login(<account>, <password>)
async account.assetIssue(<toName>, <assetSymbol>, <amount>, <memo>)
memo
является не обязательным параметром.
Для сжигания токенов:
let account = await BitShares.login(<account>, <password>)
async account.assetReserve(<assetSymbol>, <amount>)
Планы на версию 0.5.x
Пришло понимание, что очень не хватает функционала добавления нескольких операций в одну транзакцию. Как это правильно организовать, еще предстоит решить. Но думаю это будет решено в следующей версии.
Также документацию хотел бы сделать доступной для редактирования сообществом через pullrequest. Создавать отдельный репозиторий - плохое решение. А вот возможности Github pages вполне может подойти.
Сборки пакета для подключения непосредственно в браузер без компиляции.
Некоторый функционал
btsdex
был бы весьма полезен в основном репозиторииbitsharesjs-ws
иbitsharesjs
. Одно такое предложение уже одобрили.