Автовыдача на FunPay | Настройка бота FunPay Server
FunPay Server - бесплатный бот для FunPay c открытым исходным кодом. Он имеет такие функции как: автовыдача, автоподнятие всех лотов, автоответ на сообщение или команду, автоответ на первое сообщение, а также вечный онлайн и частичное управление через telegram бота(через него также можно получать уведомления о поднятии лотов, работы автовыдачи и о новых сообщениях / заказах).В этой статье я расскажу вам как его установить и настроить!
Установка Windows/Mac OS ( BAT ) 1. Заходим по данной ссылке: https://github.com/NightStrang6r/FunPayServer , нажимаем на кнопку "Code", потом на "Download ZIP"
2. После загрузки, разархивируем его в любое место
3. Скачиваем NodeJS v16.16 по ссылке: https://nodejs.org/en/blog/release/v16.16.0, выбираем свою операционную систему
5. Переходим к пункту НастройкаУстановка Linux
Устанавливать можно как на системы с GUI, так и на системы без него. Все версии Ubuntu начиная с 16.04 подходят для установки. Данный вид установки предусматривает то, что вы будете запускать с source code.
Установка бота:1. После входа в систему пропишите команду sudo apt update -y && sudo apt upgrade -y2. Скачайте curl с помощью команды sudo apt-get install curl nano unzip wget -y2. Установите деб-пакет NodeJS при помощи команды curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -3. Установите NodeJS при помощи команды : sudo apt-get install nodejs -y4. Устанавливаем бота командой sudo wget https://github.com/NightStrang6r/FunPayServer/archive/refs/heads/main.zip && unzip main.zip
Включение бота:1. Пропишите команду cd FunPayServer-main2. Прописываем команду npm i -y, ждем загрузки.3. После загрузки прописываем команду node . (да, с точкой)4. Переходим к пункту "Настройка"
Примечание:
Чтобы настраивать бота вам необходимо знать базовые команды:
ls - Просмотр содержимого в текущей папке, пропишите чтобы узнать какие директории вам доступны.
cd - Перемещение в другую папку, например: cd FunPayServer-main или cd data/configs, чтобы вернутся в домашний котолог пропишите cd без параметра.
nano - текстовый редактор, перед использованием его нужно установить командой. Пример использования: вам потребовалось изменить какой-то файл, допустим это будет конфиг настроек settings.txt, для этого переходим в папку с этим конфигом с помощью команды cd FunPayServer-main и открываем нужный файл командой nano settings.txt, после чего изменяем нужные вам параметры. Теперь конфиг нужно сохранить его нажав Ctrl + O и выйти из него с помощью хоткея Ctrl + X, поздравляю, вы великолепны!
Скачать через F-Droid - на странице кнопка "Download APK" (рекомендуется)Скачать со страницы релизов Termux - нужен файл termux-app_v0.118.0+github-debug_universal.apk, либо более новой версии
Установка бота:1. Обновите пакеты, выполнив команду apt update -y && apt upgrade -y2. Выполните команду pkg install nodejs-lts wget unzip nano -y3. Выполните команду wget https://github.com/NightStrang6r/FunPayServer/archive/refs/heads/main.zip && unzip main.zip
Включение бота:
1. Перейдите в папку проекта, выполнив команду cd FunPayServer-main2. Выполните команду: npm i3. Выполните команду: node . (не забудьте точку)4. Установка завершена, переходите к пункту "Настройка"
Примечание:
В termux все файлы находятся внутри приложения, вы не найдёте их в проводнике.
Чтобы настраивать бота вам необходимо знать базовые команды:
ls - Просмотр содержимого в текущей папке, пропишите чтобы узнать какие директории вам доступны.
cd - Перемещение в другую папку, например: cd FunPayServer-main или cd data/configs, чтобы вернутся в домашний котолог пропишите cd без параметра.
nano - текстовый редактор, перед использованием его нужно установить командой. Пример использования: вам потребовалось изменить какой-то файл, допустим это будет конфиг настроек settings.txt, для этого переходим в папку с этим конфигом с помощью команды cd FunPayServer-main и открываем нужный файл командой nano settings.txt, после чего изменяем нужные вам параметры. Теперь конфиг нужно сохранить его нажав Ctrl + O и выйти из него с помощью хоткея Ctrl + X, поздравляю, вы великолепны!
Установка только на системы без GUI, установка исключительно через source code, через .exe файл установить невозможно. Все версии начиная с 13.1 поддерживаются. Установка на FreeBSD самая простая из всех систем. Минусы : Кириллица не поддерживается, для её отображения вам нужно будет скачивать дополнительные пакеты, в этом гайде их не будет. Без этих пакетов все кириллические символы будут переведены в знаки вопроса.
Установка бота:1. Установите NodeJS используя команду pkg install nodejs-lts -y2. Установите npm используя команду pkg install npm-8.19.1 -y3. Перезагрузитесь используя команду rebootЗапуск бота (Аналогичный запуску на Linux)
Включение бота:
1. Пропишите команду cd FunPayServer-main
2. Прописываем команду npm i, ждем загрузки.
3. После загрузки прописываем команду node .
4. Готово! Бот запущен!
5. Переходим к пукту "Настройка"
1. Запустите программу2. Теперь в браузере Google Crome устанавливаем расширение EditThisCookie по ссылке: https://chrome.google.com/webstore/detail/editthiscookie/fngmhnnpilhplaeedifhccceomclgfbg3. Входим в аккаунт FunPay, с которого осуществляются продажи, нажимаем на установленное расширение и в открывшейся панели открываем "golden_key", значение этой строки нам понадобится в следующем пункте
4. Переключаемся на консоль с ботом и дожидаемся этого сообщения:
5. Вставляем golden_key из пункта 4, нажимаем enter
6. Заходим на сайт whatismybrowser.com, копируем user agent:
7. Переключаемся на консоль и вставляем user agent из прошлого пункта:
8. После выбираем стрелками на клавиатуре выбираем "Оставить по умолчанию" и нажимаем Enter
7. Поздравляю! Первоначальная настройка выполнена, приступим к подключению telegram бота!Создание бота Telegram
1. Заходим по ссылке https://t.me/BotFather
2. Отправляем боту команду /newbot3. После отправляем любое имя боту, это имя которое будет отображаться в чате с ботом4. Теперь придумываем юзернейм боту, он должен заканчиваться на bot или _bot , например NightBotЕсли вы получили следующее сообщение, значит юзернейм уже занят и вам необходимо придумать другой!
5. Ваш бот успешно создан! Получаем следующее сообщение:
Копируем выделенный токен
6. Переходим в папку с ботом, ищем файл settings.txt и открываем его через блокнот (если файл у вас не открывается скачайте https://notepad-plus-plus.org/downloads/ и откройте через него)
7. Ищем пункт [Telegram] и заполняем настройки:
enabled: 1
token: вставляем ваш токен из пункта 5
userName: вставляем юзернейм вашего телеграм аккаунта с котрого будете пользоваться ботом
8. Сохраняем файл, перезапускаем FunPay Server и радуемся!
9. Возвращаемся к пункту 5 и переходим по первой ссылке которую выдал BotFather
У вас откроется окно с вашим ботом, нажимаем кнопку запустить
Вуаля, бот готов!
Telegram бот не будет работать если FunPay Server не запущенНастройка автовыдачи
1. Проверьте, что в файле settings.txt включена настройка автовыдачи: autoDelivery: 1.2. Заходим в диалог с ботом которого мы создали3. нажимаем Редактировать автовыдачу
4. Нажимаем Добавить товар
5. Если вы хотите чтобы после оплаты лота выдавался всегда один и тот же товар нажимаем Инструкция
Если же вы продаёте, к примеру аккаунты или любой другой товар который после каждой оплаты должен быть новый, нажимаем Аккаунты
Инструкция 6. Переходим на FunPay и копируем название лота, потом отправляем боту7. Пишем текст который будет выдан покупателю после оплаты этого лота и отпраляем боту8. Готово! Товар добавлен, вы можете добавить другие товары или удалить их через telegram бота, в дальнейшем функций будет больше!Как изменить товар в автовыдаче я рассказал в разделе Способ 2.
6. Переходим на FunPay и копируем название лота, потом отправляем боту7. Пишем текст который будет выдан покупателю после первой оплаты этого лота и отпраляем ботуПишем текст вторым сообщением который будет выдаваться после второй оплатыПишем текст третьим сообщением который будет выдаваться после третьим оплаты и т.д.8. Как только закончите заполнять товар нажмите назад
9. Готово! Товар добавлен, вы можете добавить другие товары или удалить их через telegram бота, в дальнейшем функций будет больше!Как изменить товар в автовыдаче я рассказал в разделе Способ 2.
1. Проверьте, что в файле settings.txt включена настройка автовыдачи: autoDelivery: 12. Переходим в папку data, configs открываем файл delivery.json.3. Заполняем необходимыми товарами в формате JSON по примерам:
Если у вас выдаётся один и тот же товар: Код:
[B][ { "name": "ТУТ ТОЧЬ В ТОЧЬ НАЗВАНИЕ ТОВАРА НА FUNPAY", "message": "Тут сообщение, которое будет выдано после оплаты. Для переноса строки используйте символы \n. Пример: первая строка\nвторая строка" }, { "name": "ТУТ ТОЧЬ В ТОЧЬ НАЗВАНИЕ ТОВАРА НА FUNPAY", "message": "Тут другое сообщение, которое будет выдано после оплаты другого лота" } ][/B]
Если у вас выдаются разные товары:
[B][ { "name": "ТУТ ТОЧЬ В ТОЧЬ НАЗВАНИЕ ТОВАРА НА FUNPAY", "nodes": [ "Тут сообщение, которое будет выдано после первой оплаты. Для переноса строки используйте символы \n. Пример: первая строка\nвторая строка ", "Тут сообщение, которое будет выдано после второй оплаты данного лота.", ] } ][/B]
[B][ { "name": "ТУТ ТОЧЬ В ТОЧЬ НАЗВАНИЕ ТОВАРА НА FUNPAY", "nodes": [ "Тут сообщение, которое будет выдано после первой оплаты. Для переноса строки используйте символы \n. Пример: первая строка\nвторая строка ", "Тут сообщение, которое будет выдано после второй оплаты данного лота.", ] }, { "name": "ТУТ ТОЧЬ В ТОЧЬ НАЗВАНИЕ ТОВАРА НА FUNPAY", "message": "Тут сообщение, которое будет выдано после оплаты. Для переноса строки используйте символы \n. Пример: первая строка\nвторая строка" } ][/B]
Перезапускаем FunPay Server и радуемся!Для переноса строки используйте \n между строчками, ни в коем случае не используйте перенос строки в выдаваемом сообщении или названии лота!Если в выдаваемом сообщении или названии лота присутствуют двойные кавычки поставьте перед ними \ , иначе бот просто выдаст ошибку, пример: Логин: \"1234\" Пароль: \"1234\".Для проверки кода на правильность написания используйте сервис - https://jsonformatter.org/json-parserПроверка автовыдачи
Для проверки работы автовыдачи зайдите в файл settings.txt, убедитесь что значение 1 стоит у следующих параметров:autoDeliveryautoResponse
autoDeliveryTestCommand
Если вы изменили настройки перезапустите FunPay Server чтобы изменения вступили в силу!Далее найдите чат с заблокированным пользователем / другом / твинком или в любой другой чат куда не жалко будеть слить выдаваемый товарпропишите: !автовыдача "в кавычках точное название лота который хотите проверить"Когда закончите проверку обязательно установите значение 0 для autoDeliveryTestCommand и перезапустите бота, иначе любой хитрюга сможет украсть ваш товар на автовыдаче запросив его командой проверки.
Примечание:
Вы так же можете указать в названии лота лишь его часть, например ваш лот - "[Автовыдача] among us + 400 игр, xbox game pas" и вы хотите добавить этот же аккаунт в другие категории то вам не обязательно создавать отдельные товары в файле delivery.json, вы можете просто добавить товар с названием "xbox game pas" и бот будет выдавать его для всех лотов в которых есть эта ключевая фраза (xbox game pas)!
1. Проверьте, что в файле settings.txt включена настройка автоответа: autoResponse: 12. Переходим в папку data, configs открываем файл autoResponse.json.3. Заполняем необходимыми ответами в формате JSON по примерам:
Код:
[ { "command": "!тест", "response": "Тестовое сообщение" }, { "command": "!команда", "response": "Ответ на команду" } ]
После чего сохраняем файл и перезапускаем бота!Вы можете использовать как команды обычные слова, не обязательно добавлять восклицательный знак!Данные команды работают в чате на FunPay как если их напишет покупатель так если и продавец!Ответ на первое сообщение
1. Заходим в файл settings.txt ищем параметр greetingMessage: 0
2. меняем 0 на 1 тем самым включая настройку3. Листаем чуть ниже, ищем параметр greetingMessageText: , после двоеточия (через пробел) записывайте ваш ответ на первое сообщение:
Для переноса строки в сообщении используйте \n.
Доступные переменные: {name} - имя покупателя.
(переменная работает только в этой функции, в автовыдаче и т.д. работать не будет)
4. Сохраняем файл, перезапускаем программу. Ответ на первое сообщение готов!
Учтите что он будет срабатывать с теми пользователями с которыми у вас была переписка (но уже не видна в списке чатов) до момента включения этой функции.Остальные настройки
1. Убедитесь что у вас создан и нормально функционирует телеграм бот, которого мы создали ранее2. Заходим в файл settings.txt, листаем до пункта newMessageNotification
3. Включаем те уведомления котрые хотите получать:
newMessageNotification: 1 (1 - уведомление о новых сообщениях включены, 0 - выключены)
newOrderNotification: 1 (1 - уведомление о новых заказах включены, 0 - выключены)
lotsRaiseNotification: 1 (1 - уведомление о поднятии лотов включены, 0 - выключены)
deliveryNotification: 1 (1 - уведомление о срабатывании автовыдачи включены, 0 - выключены)
4. Сохраняем файл, перезапускаем программу. Готово!вечный онлайн
1. Заходим в файл settings.txt ищем параметр alwaysOnline: 1,2. Значение 1 - вечный онлайн включён, значение 0 - вечный онлайн выключен.Если вы изменили настройки перезапустите FunPay Server чтобы изменения вступили в силу!По умолчанию включён3. Вечный онлайн не будет работать если бот не запущен!
1. Заходим в файл settings.txt ищем параметр lotsRaise: 1,2. Значение 1 - автоподнятие лотов включено, значение 0 - автоподнятие лотов выключено.Если вы изменили настройки перезапустите FunPay Server чтобы изменения вступили в силу!По умолчанию включено3. Автоподнятие лотов не будет работать если бот не запущен!
1. Заходим в файл settings.txt ищем параметр goodsStateCheck: 1,2. Значение 1 - авто восстановление лотов включено, значение 0 - авто восстановление лотов выключено.Если вы изменили настройки перезапустите FunPay Server чтобы изменения вступили в силу!По умолчанию включено3. авто восстановление лотов не будет работать если бот не запущен!
Функция подсчёта продаж / заработка
Работает только на версиях до 0.5.0!
Бот может подсчитать количество продаж и сумму заработанных средств с продаж. Для этого запустите файл FunPayServer.exe с параметром --countProfit, т.е. чтобы получилось FunPayServer.exe --countProfit. Запустить файл с параметром можно при помощи командной строки. Если вы использовали продвинутую установку, просто запустите файл CountTradeProfit.bat.
Бот поддерживает работу с http / https прокси с / без авторизации. Для включения работы через прокси пропишите в файле настроек settings.txt (пункт [Proxy]) настройку enabled: 1, а также данные хоста в поле host и порт в поле port. Если ваш прокси не требует авторизации, оставьте поля login и pass пустыми.
1. Ошибка при получении данных аккаунта: TypeError: Cannot read properties of null (reading 'innerHTML')
Решение 1: ваш golden key устарел, вам нужно заменить его на новый в файле settings.txt
Решение 2: у вас проблемы с подключением к интернету или с доступом к FunPay, вы можете: просто подождать / проверить интернет / поставить DNS сервера на 1.1.1.1 и 8.8.8.8
2. Ошибка при загрузке файла "C:\Users\lemar\OneDrive\Документы\FunPayServer-main/data/configs/delivery.json". Возможно файл имеет неверную кодировку (поддерживается UTF-8), либо неверный формат JSON:
Ошибка при загрузке файла "C:\Users\lemar\OneDrive\Документы\FunPayServer-main/data/configs/autoResponse.json". Возможно файл имеет неверную кодировку (поддерживается UTF-8), либо неверный формат JSON:
Ошибка при загрузке файла настроек: SyntaxError: Unexpected string in JSON at position 185. Программа будет закрыта.
Решение 1: смените кодировку файла который указан в ошибке на UTF-8
Решение 2: ваш файл заполнен с ошибкой, вы можете: вручную найти ошибку в файле (возможно не хватает запятой или скобки) / отправить содержимое файла на jsonformatter.org чтобы найти и исправить ошибку / если у вас проблема с файлом autoIssue.json вы можете воспользоваться телеграм-ботом для редактирования автовыдачи без ошибок
3. "node" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Решение: установите NodeJS
4. Ошибка при запросе (нет доступа к интернету / funpay): FetchError: request to https://funpay.com/ failed, reason: getaddrinfo ENOTFOUND funpay.com
Решение: у вас проблемы с подключением к интернету или с доступом к FunPay, вы можете: просто подождать / проверить интернет / поставитьDNS сервера на 1.1.1.1 и 8.8.8.8
5. Заморозка процесса (Windows)
(Бот перестаёт работать через какое-то время, хотя запущен и ошибок не выдаёт)
Решение:1. ПКМ по окну консоли -> свойства2. Переходим в Настройки3. Снимаем галочку "Выделение мышью"4. Нажимаем "Ок".
6. "Название товара" нет в списке автовыдачи, пропускаю.
Решение:1. зайдите на funpay и скопируйте название вашего лота.2. Перейдите в конфиг автовыдачи (delivery.json) и замените название лота на то которые вы скопировали.
Примечание:Телеграм бот некорректно добавляет товары с некоторыми эмоджи, поэтому всегда надёжнее добавить товар вручную.