Norn Pool Bot

Адрес бота: https://t.me/nornpoolbot

Назначение: уведомление участников о новых пулах по входу в пресейлы, сбор информации об участниках и суммах.

Основной чат

С ботом могут работать только пользователи, зарегистрированные в основном чате сообщества. Для установки основного чата нужно добавить бот в список пользователей чата и ввести в чате команду /setmasterchat (доступна только для владельца бота). Бот мониторит сообщения основного чата и автоматически регистрирует добавляемых пользователей (кроме ботов), а также отменяет регистрацию удаляемых пользователей. Пользователи, которые входили в чат до добавления бота, становятся зарегистрированными при написании любого сообщения в основном чате.

Администратор бота может отменить регистрацию пользователей вручную, введя команду /unregister и указав имена или логины пользователей.

Главное меню

Для вызова главного меню введите команду /start. В главном меню доступны следующие функции:

Новый пул – создание нового пула. Бот предлагает ввести ссылку на проект, минимальную сумму, которую нужно собрать, срок сбора и описание проекта (до 500 символов). После ввода всех данных подписчики и основной чат получают уведомление. Эта функция доступна только пользователям с ролю “Менеджер пулов”. Пользователь, создавший пул, становится его организатором.

Список пулов – выводит список действующих пулов с указанием, сколько ETH заявлено участниками и сколько требуется собрать. При выборе пула выводится информация о нём.

Мои заявки – выводит список пулов, в которых есть заявки пользователя с указанием, сколько ETH заявлено участником. При выборе пула выводится информация о нём.

Подписаться – вносит пользователя в список подписчиков, кому приходят уведомления о создании новых пулов. Пользователь будет получать уведомления о новых пулах или об изменениях в существующих пулах.

Отписаться – удаляет пользователя из списка подписчиков, кому приходят уведомления о создании новых пулов.

Административное меню – выводит список дополнительных команд. Эта функция доступна только пользователям с ролью “Администратор”.

Административное меню

Для вызова административноего меню выберите команду Административное меню в главном меню. Административное меню содержит следующие команды:

Список администраторов – выводит список зарегистрированных пользователей, которым доступны административные функции (административное меню), а также внесение любых изменений в любой пул.

Для добавления пользователей в список администраторов нужно ввести команду /grantadmin и указать имена или логины добавляемых пользователей.

Для удаления пользователей из списка администраторов нужно ввести команду /revokeadmin и указать имена или логины удаляемых пользователей.

Список пул-менеджеров – выводит список зарегистрированных пользователей, которым доступно создание новых пулов.

Для добавления пользователей в список пул-менеджеров нужно ввести команду /grantadmin и указать имена или логины добавляемых пользователей.

Для удаления пользователей из списка пул-менеджеров нужно ввести команду /revokeadmin и указать имена или логины удаляемых пользователей.

Список подписчиков – выводит список зарегистрированных пользователей, которые подписаны на уведомления, и которые будут получать уведомления о новых пулах и изменениях в существующих пулах.

Список зарегистрированных – выводит список зарегистрированных пользователей, которым доступен функционал бота.

Список незарегистрированных – выводит список пользователей, которые не зарегистрированы, но давали команды боту. Это пользователи, которые могли быть зарегистрированы ранее, а потом удалены из основного чата сообщества, либо каким-то образом нашли бот с помощью поиска.

Архив пулов – выводит список пулов, которые были удалены или закрыты.

Главное меню – вывод главного меню (аналог команды /start).

Просмотр и меню пула

При просмотре пула бот выводит следующую информацию о пуле: адрес проекта, организатор пула, сколько нужно собрать, срок сбора, описание, список участников и сколько собрано, адрес для сбора эфира и баланс токенов.

Полный список участников с именами пользователей и суммами видит только организатор пула или пользователь с ролью Администратор, остальные пользователи видят только список сумм заявок без имен пользователей, и информацию о собственной заявке.

После того, как необходимая сумма заявок собрана, организатор пула может начать сбор эфира. Адрес для сбора эфира задаётся для пула командой Задать адрес ETH. После того, как станет известен адрес смарт контракта токена проекта, организатор может указать его для пула через команду Редактировать. Бот проверяет балансы токенов с помощью ethplorer.io, и при изменении баланса токенов указанного адреса уведомляет организатора и участников проекта.

Организатору пула доступны следующие команды в меню пула:

💌 Отправить сообщение участникам – позволяет организатору пула отправить всем участникам сообщение. Например, пригласить в приватную группу для обсуждения деталей, или сообщить о новостях. После выбора команды бот предлагает ввести сообщение, которое пересылает всем участникам.

📭 Задать адрес ETH – позволяет организатору пула указать адрес для сбора эфира. После указания адреса сбора, необходимо сообщить его участникам. Этот адрес используется и при экспорте сведений об участниках в Excel и Google Docs, для сбора информации о транзакциях.

📝 Редактировать – выводит меню редактирования пула. Меню позволяет отредактировать для пула следующие свойства: Ссылка на сайт, Сумма сбора, Максимальная сумма сбора, Описание, Срок действия, Организатор, Таблица Google, Адрес сбора, Контракт токена. При изменении любого свойства подписчикам бота и в основной чат отправляется уведомление. Если пул был закрыт, то при изменении срока действия пул снова становится действующим.

💾 Экспорт – позволяет организатору пула экспортировать список участников, их заявок и фактических взносах в файл формата MS Excel.

☁️ Передать в Google – позволяет организатору пула экспортировать информацию о пуле, участниках и их суммах заявок и фактических взносах в таблицу Google. Перед первым использованием этой функции нужно создать новую таблицу в Google Docs и дать права на редактирование документа учетной записи nornpoolbot@x-planet-195111.iam.gserviceaccount.com следующим образом:

  1. Нажать кнопку Настройки доступа
  2. Указать учетную запись, права на редактирование
  3. Снять флажок “Оповестить пользователей”

После подготовки таблицы Google, организатор пула может экспортировать пул, для этого нужно нажать в боте на кнопку “☁️ Передать в таблицу Google”. При первом вызове функции бот предложит ввести адрес документа, нужно вставить адрес таблицы из адресной строки браузера. Экспорт может занять несколько секунд (10 и более).

❌ Удалить – удаление пула. Пул помечается удаленным и не показывается в списке действующих. Если пул был удален по ошибке, то Администратор может отменить удаление.

♻️ Отменить удаление – отмена удаления пула.

Участие в пуле

Участнику пула доступны следующие команды пула:

💸 Участвовать – пользователь может ввести новое значение для суммы заявки. При изменении суммы заявки у всех пользователей происходит обновление суммы заявок для списка пулов. А если ввод заявки привел к тому, что собрана минимальная сумма, то участникам отправляется об этом уведомление.

💸 Изменить заявку – пользователь может ввести новое значение для суммы заявки

🚫 Отказаться – удаляет пользователя из списка участников пула.

После того, как участник отправит эфир на адрес пула, он может отправить ид транзакции боту (в главном меню или при просмотре списка пулов, или при просмотре пула). Эта информация затем выводится организатору при экспорте списка участников, их заявок и фактических сборов. Если участник использует один и тот же адрес для участия в нескольких пулах, то можно не передавать боту все транзакции, так как бот запоминает адрес отправителя ETH и затем автоматически определяет отправителя транзакции.