Добро пожаловать в FunPay PHP! Эта библиотека позволяет удобно и легко создавать ботов для биржи FunPay
Этот API больше не будет обновляться.
1. PHP 8.1 или выше
2. Curl-extension PHP
Composer
composer require timliz/funpayphp
<?php
require_once ("vendor/autoload.php");
use run\messageRepository;
use run\run;
//Инициируем бота
$FunPay = new run();
//Добавляем прослушку события MESSAGE
$FunPay->on(Event::message, function (messageRepository $msg) {
//Мы получили messageRepository от этого события
//Отвечаем пользователю сообщением
$msg->reply(\messageBuilder\messageBuilder::fastMessage("Hello world!"));
});
//Запускаем бота
$FunPay->run();
Пример выше отвечает Hello world! На сообщения.
$FunPay->timers->addTimer(6, function () {
//Код, который исполнится через 6 секунд
});
$ID = $FunPay->timers->addRepeated(1, function () {
//Код, который будет исполняться каждую 1 секунду
});
В основном примере вы видели пример события message, ниже я перечислю все события:
$FunPay->on(event::message, function (\run\messageRepository $msg) {
//Код, исполняющийся при событии
});
$FunPay->on(event::payment, function (\run\paymentRepository $payment) {
//Код, исполняющийся при событии
});
$FunPay->on(event::lotRise, function () {
//Код, исполняющийся при событии
});
$FunPay->on(event::loop, function () {
//Код, исполняющийся при событии
});
$FunPay->on(event::ready, function () {
//Код, исполняющийся при событии
});
paymentRepository & userRepository
Позволяет записывать данные для долгого хранения
Если вы хотите использовать API вместе с чем-то другим, что тоже запускает бесконечный цикл, используйте решение ниже
<?php
require_once("vendor/autoload.php");
use run\run;
//Инициируем бота
$FunPay = new run(array(
run::SETTINGS_CUSTOM_LOOP => true
));
//Код бота тут
//Не забываем про запуск бота
$FunPay->run();
//Далее вам необходимо привязать метод loop() к циклу другого скрипта,
//В моём примере я просто использую свой бесконечный цикл
while (true) {
$FunPay->timers->loop();
}
<?php
require_once('vendor/autoload.php');
use run\lot;
use run\run;
//Инициируем бота
$FunPay = new run();
//Прослушиваем событие ready
$FunPay->on(event::ready, function () use ($FunPay) {
//Получаем лот с id 13914382
$lot = lot::getLot(13914382);
//Ставим кол-во 10
$lot->amount = 10;
//Сохранение лота(отправка на сервер)
$lot->save();
});
$FunPay->run();
Если вы хотите, вы можете поменять некоторые настройки, укажите как массив как первый аргумент для конструктора класса run
$FunPay = new run(array(
run::SETTINGS_DISABLE_LOT_RISE => true,
run::SETTINGS_DISABLE_MESSAGE_CHECK => true,
run::SETTINGS_GOLDEN_KEY => "Ваш ключ",
));
run::SETTINGS_DISABLE_MESSAGE_CHECK
run::SETTINGS_DISABLE_LOT_RISE
run::SETTINGS_GOLDEN_KEY
run::SETTINGS_CUSTOM_LOOP
Авто поднятие и всегда онлайн работают, Остальные события вы можете найти в файле enums/event.php По любым вопросам можете писать в Discord(TimLiz#2952) или создавать issue
Удачи всем
() Добавить к paymentRepository метод getLotObjectTry2 который будет получать объект с помощью ссылки на таблицу на странице оплаты, в будующем заменит старый способ получения и будет всегда