Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
ropox
7 лет назад

votebot

Я наверное не писал об этом, но у меня на гитхабе лежат исходники голосовального бота, которым я пользуюсь для... ну да, голосования.

Я его написал чисто в академических целях, потом мне показался он удобным и я пересел на него. У @vik-а есть семейка навороченных, голосовальных ботов для телеграма, но у них одно печальное ограничение. Один бот, один пользователь. Нудно настраивать. Да из-за соображений безопасности Вик наложил на ботов ограничение и их приходится поэтому периодически перезапускать, если Вик выкатил новое обновление.

Вообщем я написал своего собственного, персонального бота и постепенно развиваю дальше. Ну и делюсь им с вами.

Для работы требуется node.js версии 7 и выше, работает как под windows, так и под linux.

golos-addons

За одно про анонсирую свой первый npm модуль golos-addons. Я уже написал несколько скриптов для голоса и у меня постепенно выкристаллизовались свои паттерны построения приложений. Как они работают с блокчейном голоса, как выводятся отладочные сообщения, как происходит конфигурирование. Все это я решил вынести в отдельную библиотеку и использовать в своих скриптиках. Получается что-то вроде маленького фреймворка и обкатывать его начал я на этом боте. Пока никакого описания я не делал, я часто его меняю, так что использовать не рекомендую, но кому интересно, могут глянуть.

Исходники здесь. https://github.com/gropox/golos-addons

Там в папке examples есть пара примеров по работе с golos-addons

  • count_upvotes.js - подсчет голосов сделанных пользователем за сутки
  • get_curation_rewards.js - подсчет кураторских вознаграждений за определенный периуд
  • follow.js - подписка/отписка скриптом
  • votebot.js - бот голосующий по триггеру-комментарию на подобие gemini,

Но вернемся к голосовальному боту.

Принцип работы

  • Бот просто повторяет голоса куратора-лидера.
  • Можно указать сколько голосов за сутки будут повторены за лидером в общей сложности. К примеру 40.
  • Вы можете задать несколько лидеров, указав каждому свою квоту.
  • Можно просто задать одного лидера и квоту 100% или допустим marina - 80% vox-populi 10%. В этом случае бот за сутки повторит 32 апвота пользователя marina и 4 апвота vox-populi. Я лично боту настроил максимально повторять 30 голосов, а 10 я оставил для себя, для ручного кураторства. Меня все равно больше чем на 10 лайков не хватает.
  • Если vote_weight параметр быстрее восстановился, то и срок созревания голосов сокращается. При vote_weight = 100% бот будет готов повторять голоса уже через 12 часов.
  • Можно задать сколько угодно аккаунтов, которые будут повторять голоса.

Установка

Исходники можно взять от сюда https://github.com/gropox/voteprediction. Либо используя git, клонируете репозиторий

git clone https://github.com/gropox/voteprediction.git

Либо скачиваете исходники кликнув по кнопке "Download ZIP"

После распаковки архива с исходниками, или после клонирования, зайдите во вновь созданную папку. В ней выполните команду npm install

npm установит необходимые модули.

Настройка

В папке с исходниками лежит config.json.example. Скопируйте его или просто переименуйте в config.json. Там собственно все должно быть очевидно

{
        "golos_host" : "https://golos.io",
        "golos_websocket" : "wss://ws.golos.io",
        "shared_votes" : 35,
        "leaders" : {
            "eee" : 80, 
            "ropox" : 20
        },
        "users" : {
            "ropox" : "5PRIVKEY",
            "twink" : "5PRIVKEY"
        }
}

Как видно бот будет повторять максимально 35 голосов. Из них 80% за @eee и 20% за ropox. "users" собственно пользователи и их приватные постинг-ключи

Запуск

Что бы запустить надо выполнить следующую команду

node index

Можно добавить опциональные параметры debug или trace, что бы увидеть отладочные сообщения.

2
187.630 GOLOS
На Golos с February 2017
Комментарии (15)
Сортировать по:
Сначала старые