From af5337d50c9eef6354d32449726098733257c34c Mon Sep 17 00:00:00 2001 From: gsd Date: Thu, 16 Mar 2023 15:05:48 +0300 Subject: [PATCH] =?UTF-8?q?=D1=84=D0=B8=D0=BA=D1=81=D1=8B=20=D0=BE=D1=88?= =?UTF-8?q?=D0=B8=D0=B1=D0=BE=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db_driver.py | 6 +++--- rebuild.sh | 2 ++ tradebot.facti13.py | 22 +++++++++++++--------- 3 files changed, 18 insertions(+), 12 deletions(-) create mode 100644 rebuild.sh diff --git a/db_driver.py b/db_driver.py index 3519e6e..7b045f1 100644 --- a/db_driver.py +++ b/db_driver.py @@ -58,7 +58,7 @@ class Database: async with self.database.acquire() as connection: async with connection.cursor(aiomysql.DictCursor) as cursor: await cursor.execute(query) - await cursor.commit() + await connection.commit() return 101 async def add_new_user(self, steamid: SteamID, amount, status, who): @@ -68,5 +68,5 @@ class Database: async with self.database.acquire() as connection: async with connection.cursor(aiomysql.DictCursor) as cursor: await cursor.execute(query) - await cursor.commit() - return 100 \ No newline at end of file + await connection.commit() + return 100 diff --git a/rebuild.sh b/rebuild.sh new file mode 100644 index 0000000..cd8bca5 --- /dev/null +++ b/rebuild.sh @@ -0,0 +1,2 @@ +#!/bin/bash +docker-compose build --no-cache && docker-compose down && docker-compose up -d && docker-compose logs -f diff --git a/tradebot.facti13.py b/tradebot.facti13.py index 1c533a7..7acef35 100644 --- a/tradebot.facti13.py +++ b/tradebot.facti13.py @@ -80,32 +80,33 @@ class SteamClient(SteamPy.Client): if trade.state != SteamPy.enums.TradeOfferState.Active: error(f"[{trade.id}] trade have not active stats") - await send_msg(trade, "Бот не сможет принять трейд от тебя по причине удержания вещей с твоей стороны") + #await send_msg(trade, "Бот не сможет принять трейд от тебя по причине удержания вещей с твоей стороны") await trade.decline() return if not trade.is_gift(): warning(f"[{trade.id}] partner wanna get bot items, decine trade") - await send_msg(trade, "Не пытайся спиздить вещи у бота") + #await send_msg(trade, "Не пытайся спиздить вещи у бота") await trade.decline() return if len(trade.items_to_receive) > 25: warning(f"[{trade.id}] cannot accept trade with more 25 items") - await send_msg(trade, "За один раз можно отправить неболее 25 вещей") + #await send_msg(trade, "За один раз можно отправить неболее 25 вещей") await trade.decline() return seconds = self.items.Items2Seconds(trade.items_to_receive) if seconds == 0: error(f"[{trade.id}] cannot accept trade not valid items") - await send_msg(trade, "Ты отправил неправльные вещи! Проверь что это:\n- Ключ МаннКо (уникальный)\n- Очищенный метал (уникальный)") + #await send_msg(trade, "Ты отправил неправльные вещи! Проверь что это:\n- Ключ МаннКо (уникальный)\n- Очищенный метал (уникальный)") await trade.decline() return info(f"[{trade.id}] Try accept trade") - await send_msg(trade, "Попытка принять трейд...") + #await send_msg(trade, "Попытка принять трейд...") await trade.accept() + info(f"[{trade.id}] Maybe trade acceped...") #Force on trade accept await asyncio.sleep(3) if not trade.id in self.trade_tracker: @@ -119,6 +120,7 @@ class SteamClient(SteamPy.Client): #Принятый трейд async def on_trade_accept(self, trade: SteamPy.TradeOffer): + info(f"[{trade.id}] Finalize accept") if trade.id in self.trade_tracker and self.trade_tracker[trade.id] == 0: return @@ -132,18 +134,20 @@ class SteamClient(SteamPy.Client): return info(f"[{trade.id}] Final stage accepted trade [{trade.partner.id}] {trade.partner.name}") - await send_msg(trade, "Успешно, сейчас посчитаем сколько ты надонатил") + #await send_msg(trade, "Успешно, сейчас посчитаем сколько ты надонатил") seconds = self.items.Items2Seconds(trade.items_to_receive) result = await self.db.processing_vip(trade.partner, seconds) + await self.discord_alarm.alert(trade.partner, seconds) + await self.post_effect.execute() + if result == False: await send_msg(trade, "Спасибо за вещи, но у тебя уже есть КРУТЫЕ права на фактах") elif result == 100: await send_msg(trade, f"Мои поздавления! Ты получил випку на {seconds / 60 / 60 / 24} дней") elif result == 101: await send_msg(trade, f"Круто! Ты продлил випку на {seconds / 60 / 60 / 24} дней") - await self.discord_alarm.alert(trade.partner, seconds) - await self.post_effect.execute() + return if __name__ == "__main__": @@ -204,4 +208,4 @@ if __name__ == "__main__": password = password, shared_secret=secrets["shared_secret"], identity_secret=secrets["identity_secret"], - ) \ No newline at end of file + )