System Contract
vote_producer.iost
Описание
Контракт Super Node (также известен как, Узел Servi) агитирует за голосование.
Информация
| contract_id | vote_producer.iost |
|---|---|
| language | javascript |
| version | 1.0.0 |
API
applyRegister
Подать заявку на регистрацию, чтобы стать кандидатом в супер-узлы.
| Список параметров | Тип данных параметров |
|---|---|
| Account Name | string |
| public key base58 encoding | string |
| Location | string |
| Website url | string |
| network id | string |
| is producer | bool |
applyUnregister
Подать заявку на отмену.
| Список параметров | Тип данных параметров |
|---|---|
| Account Name | string |
unregister
Для отмены регистрации вначале необходимо вызвать ApplyUnregister. После прохождения аудита вы можете вызвать этот интерфейс.
| Список параметров | Тип данных параметров |
|---|---|
| Account Name | string |
updateProducer
Обновить регистрационную информацию.
| Список параметров | Тип данных параметров |
|---|---|
| Account Name | string |
| public key base58 encoding | string |
| Location | string |
| Website url | string |
| network id | string |
logInProducer
Выйти в Онлайн, указывая, что узел в настоящее время доступен для работы.
| Список параметров | Тип данных параметров |
|---|---|
| Account Name | string |
logOutProducer
Выйти в Оффлайн означает, что узел в настоящее время недоступен для работы.
| Список параметров | Тип данных параметров |
|---|---|
| Account Name | string |
vote
Проголосовать.
| Список параметров | Тип данных параметров |
|---|---|
| Voter Account Name | string |
| Candidate Account Name | string |
| Number of votes | string |
unvote
Отменить голоса.
| Список параметров | Тип данных параметров |
|---|---|
| Voter Account Name | string |
| Candidate Account Name | string |
| Number of votes | string |
voterWithdraw
Избиратели получают бонусные вознаграждения.
| Список параметров | Тип данных параметров |
|---|---|
| Voter Account Name | string |
candidateWithdraw
Кандидат получает бонусные вознаграждения.
| Список параметров | Тип данных параметров |
|---|---|
| Candidate Account Name | string |
vote.iost
Описание
Универсальный контракт голосования используется для создания голосов, сбора голосов и статистики голосов. Вы можете реализовывать свои собственные функции голосования основываясь на этом контракте.
Информация
| contract_id | vote.iost |
|---|---|
| language | javascript |
| version | 1.0.0 |
API
newVote
Создать голосование.
| Список параметров | Тип данных параметров | Примечания |
|---|---|---|
| Vote creator account name | string | Создайте голосование, которое требует залога 1000 IOST, которые будут вычтены с аккаунта создателя, а аккаунт создателя имеет права администратора голосования |
| Vote Description | string | |
| Voting Settings | json object | содержит 5 ключей: resultNumber —— тип данных number(число), количество результатов голосования, максимум 2000; minVote —— тип данных number, минимальное количество голосов, кандидаты набравшие голосов больше этого значения будут введены в набор результатов голосования; options - тип данных array(массив), набор кандидатов, каждый элемент это string(строка), представляет кандидата, изначально может быть пустым []; anyOption - тип данных bool(булевые), разрешить ли кандидату в коллекцию без опций, передача false означает, что пользователь может приводить кандидатов только в коллекции options; freezeTime - тип данных number, время отмены заморозки токенов, в секундах; |
Успешный вызов возвращает глобально уникальный ID голосования.
addOption
Увеличение опций голосования.
| Список параметров | Тип данных параметров | Примечания |
|---|---|---|
| Vote ID | string | ID возвращенный интерфейсом NewVote |
| Options | string | |
| Очистить ли предыдущие голоса | bool |
removeOption
Удаление опции голосования при сохранении результата голосования, удаление опции, а затем добавление этой опции через AddOption, чтобы выбрать следует ли восстанавливать количество голосов.
| Список параметров | Тип данных параметров | Примечания |
|---|---|---|
| Vote ID | string | ID возвращенный интерфейсом NewVote |
| Options | string | |
| Нужно ли удалять | bool | false означает, что опция не удалена, когда она находится в наборе результатов, true означает принудительно удалить и обновить набор результатов |
getOption
Получение голосов за кандидата.
| Список параметров | Тип данных параметров | Примечания |
|---|---|---|
| Vote ID | string | ID возвращенный интерфейсом NewVote |
| Options | string |
Результатом является объект json:
| ключ | тип данных | примечания |
|---|---|---|
| votes | string | Голоса |
| deleted | bool | Помечены ли как удаленные |
| clearTime | number | Номер блока, где в последний раз произошло очищение количества голосов |
voteFor
Голосовать за других, IOST заложенные для голосования будет вычтено с аккаунта агента.
| Список параметров | Тип данных параметров | Примечания |
|---|---|---|
| Vote ID | string | ID возвращенный интерфейсом NewVote |
| Agent account name | string | |
| Voter Account Name | string | |
| Options | string | |
| Number of votes | string |
vote
Проголосовать.
| Список параметров | Тип данных параметров | Примечания |
|---|---|---|
| Vote ID | string | ID возвращенный интерфейсом NewVote |
| Voter Account Name | string | |
| Options | string | |
| Number of votes | string |
unvote
Отменить голоса.
| Список параметров | Тип данных параметров | Примечания |
|---|---|---|
| Vote ID | string | ID возвращенный интерфейсом NewVote |
| Voter Account Name | string | |
| Options | string | |
| Number of votes | string |
getVote
Получить запись о голосовании аккаунта.
| Список параметров | Тип данных параметров | Примечания |
|---|---|---|
| Vote ID | string | ID возвращенный интерфейсом NewVote |
| Voter Account Name | string |
Результатом будет массив json, каждый элемент которого является следующим объектом:
| ключ | тип данных | примечания |
|---|---|---|
| option | string | опции |
| votes | string | Число голосов |
| voteTime | number | Номер блока последнего голоса |
| clearedVotes | string | Число очищенных голосов |
getResult
Получить результат голосования и вернуть опцию resultNumber перед количеством голосов.
| Список параметров | Тип данных параметров | Примечания |
|---|---|---|
| Vote ID | string | ID возвращенный интерфейсом NewVote |
Результатом будет массив json, каждый элемент которого является следующим объектом:
| ключ | тип данных | примечания |
|---|---|---|
| option | string | опции |
| votes | string | Количество голосов |
delVote
Удалить голосование и вернуть IOST, которые были созданы во время голосования, аккаунту создателя.
| Список параметров | Тип данных параметров | Примечания |
|---|---|---|
| Vote ID | string | ID возвращенный интерфейсом NewVote |
auth.iost
Описание
Система аккаунтов и управления их правами
Информация
| contract_id | auth.iost |
|---|---|
| language | javascript |
| version | 1.0.0 |
API
signUp
Создать аккаунт
| Список параметров | Тип данных параметров |
|---|---|
| Username | string |
| ownerKey | string |
| activeKey | string |
addPermission
Добавить разрешения аккаунту
| Список параметров | Тип данных параметров |
|---|---|
| Username | string |
| Permission name | string |
| Permission threshold | number |
dropPermission
Удалить разрешение
| Список параметров | Тип данных параметров |
|---|---|
| Username | string |
| Permission name | string |
assignPermission
Указать разрешения для элемента
| Список параметров | Тип данных параметров |
|---|---|
| Username | string |
| Permissions | string |
| item | string |
| Weight | number |
revokePermission
Отозвать разрешение
| Список параметров | Тип данных параметров |
|---|---|
| Username | string |
| Permissions | string |
| item | string |
addGroup
Добавить группу разрешений
| Список параметров | Тип данных параметров |
|---|---|
| Username | string |
| Group name | string |
dropGroup
Удалить группу разрешений
| Список параметров | Тип данных параметров |
|---|---|
| Username | string |
| Group name | string |
assignGroup
Указать элемент для группы разрешений
| Список параметров | Тип данных параметров |
|---|---|
| Username | string |
| Group name | string |
| item | string |
| Weight | number |
revokeGroup
Отозвать элемент группы разрешений
| Список параметров | Тип данных параметров |
|---|---|
| Username | string |
| Group name | string |
| item | string |
assignPermissionToGroup
Добавить разрешения в группу
| Список параметров | Тип данных параметров |
|---|---|
| Username | string |
| Permission name | string |
| Group name | string |
revokePermissionInGroup
Удалить разрешения в группе
| Список параметров | Тип данных параметров |
|---|---|
| Username | string |
| Permission name | string |
| Group name | string |
bonus.iost
Описание
Формальное управление вознаграждениями узлов
Информация
| contract_id | bonus.iost |
|---|---|
| language | javascript |
| version | 1.0.0 |
API
issueContribute
Расчет значения вклада. Это вызывается системой автоматически.
| Список параметров | Тип данных параметров |
|---|---|
| data | json |
exchangeIOST
Использовать значение вклада для выплаты IOST
| Список параметров | Тип данных параметров |
|---|---|
| Account Name | string |
| Quantity | string |
system.iost
Описание
Базовый системный контракт для выпуска и обновления контрактов и других базовых системных функций.
Информация
| contract_id | system.iost |
|---|---|
| language | native |
| version | 1.0.0 |
API
setCode (code)
Развертывание смарт-контрактов.
| Имя параметра | Описание параметра | Тип данных параметра |
|---|---|---|
| code | Код смарт-контракта | string |
| Return Value | Тип возвращаемого значения |
|---|---|
| contractID | string |
Код смарт-контракта включает в себя код и информацию о смарт-контракте, такую как определения языка программированая и интерфейса смарт-контракта. Параметр code поддерживает два формата: формат json и формат сериализации кодирования protobuf. Для разработчиков при развертывании контрактов как правило нет необходимости вызывать напрямую этот интерфейс. Рекомендуется использовать iwallet или реализации SDK на языке программирования связанного с этим контрактом.
При развертывании смарт-контракта система автоматически вызывает функцию init() смарт-контракта. Разработчик может выполнить некоторую работу по инициализации в функции init.
Возвращаемое значение contractID является ID смарт-контракта, который глобально уникален и генерируется с помощью хеша транзакции, которая разворачивает контракт в сети. contractID начинается с "Contract" и состоит из букв верхнего и нижнего регистра, а также чисел. В транзакции можно развернуть только один смарт-контракт.
updateCode (code, data)
Обновление смарт-контрактов.
| Имя параметра | Описание параметра | Тип данных параметра |
|---|---|---|
| code | Код смарт-контракта | string |
| data | параметры функции upgrade | string |
| Return value | None |
|---|
Обновление смарт-контракта, code это код смарт-контракта, формат такой же как в параметрах SetCode.
При обновлении смарт-контракта система автоматически проверит разрешения на обновление, есть ли функция can_update(data) в контракте, а также является ли параметр data вторым параметром в UpdateCode, только в случае есть ли функция can_update существует, вызов возвращает true. Обновление контракта будет выполнено успешно, в противном случае обновление завершится неудачно, и будет определено, что разрешение на обновление отсутствует.
cancelDelaytx (txHash)
Отмена отложенной транзакции, для отмены отложенной транзакции вызывайте эту функцию перед выполнением отложенной транзакции.
| Имя параметра | Описание параметра | Тип данных параметра |
|---|---|---|
| txHash | Хеш транзакции | string |
| Return value | None |
|---|
requireAuth (acc, permission)
Проверка, есть ли у транзакции разрешение аккаунта.
| Имя параметра | Описание параметра | Тип данных параметра |
|---|---|---|
| acc | имя аккаунта | string |
| permission | имя разрешения | string |
| Возвращаемое значение | Тип данных |
|---|---|
| ok | bool |
receipt (data)
Генерация квитанции транзакции, квитанция хранится в блоке, а также может быть запрошена с помощью хеша транзакции.
| Имя параметра | Описание параметра | Тип данных параметра |
|---|---|---|
| data | контент квитанции | string |
| Возвращаемое значение | None |
|---|
