Интересует бот для принятия трейдов и отправки запроса API после его получения.
Нужно будет еще добавить логирование в Discord по вебхуку. Кто отправил, название каждого предмета, цена предмета, время и дата трейда, общая сумма предметов и их количество, статус трейда (принят, отклонён из за холда, отклонён т.к. содержит предметы не из игр в списке, тайм аут и т.п.). Принятие предметов в трейде только из игр Rust, CS2 (CS:GO) и Steam предметы.
Трейды с задержкой (холд) должны отклоняться. После успешного получения предметов с трейда бот отсылает API:
curl --location '
pay.gamestores.app/api/in... \
--header 'Content-Type: application/json' \
--data '{
"store_id": ,
"secret_key": "",
"steam_id": "",
"amount": 10.00,
"create_player": true,
"method_name": "Skins"
}'
Успешный ответ:
{
"result": "success",
"data": {
"store_balance": 85,
"player_balance": 300,
"payment_id": "1906324"
}
}
Ответ в случае фейла:
{
"result": "fail",
"message": "store_id or secret_key are incorrect",
"code": 101
}
Коды ошибок:
101 Ошибка в параметрах запроса (детальное описание в поле message). Возвращаеться с http кодом 400
102 Недостаточно средств на балансе магазина. Возвращаеться с http кодом 400
103 Внутренняя ошибка. Возвращаеться с http кодом 500
Параметры:
"store_id": ,
"secret_key": "",
Желательно не хардкодить, что бы иметь возможность сменить ключ, например если он был скомпрометирован
Бот должен быть автономный, при потери соединения реконнект. Автоматическая генерация 2fa и его использование для авторизации профиля у бота