Skip to content

Commit

Permalink
Update v2
Browse files Browse the repository at this point in the history
  • Loading branch information
STWonderFool authored Apr 7, 2024
1 parent 856f5c1 commit 7b00173
Showing 1 changed file with 19 additions and 19 deletions.
38 changes: 19 additions & 19 deletions v2
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@ from urllib.parse import quote
from bs4 import BeautifulSoup
from notifiers import get_notifier
from printy import printy
from requests import get, Session, post
from requests import get, post
from requests.utils import dict_from_cookiejar
from steampy.confirmation import ConfirmationExecutor
from steampy.exceptions import CaptchaRequired, InvalidCredentials
from MySteam.login import LoginExecutor
from MySteam.steam import get_sent_offers

stop_flag = False

Expand Down Expand Up @@ -434,7 +434,7 @@ class ItemsSender:
self.steam_api = self.get_my_steam_api()
break

self.sent_offers_messages = []
self.sent_offers_messages = {}

self.run()

Expand Down Expand Up @@ -478,7 +478,7 @@ class ItemsSender:

try:
Thread(target=self.ping_pong_cycle).start()
# Thread(target=self.cancel_all_offers_older_10_min).start()
Thread(target=self.cancel_all_offers_older_10_min).start()
except:
telegram_notify(self.chat_id, self.token, f'Critical error: {format_exc()}')

Expand Down Expand Up @@ -539,20 +539,20 @@ class ItemsSender:
while True:
if stop_flag:
return
sleep(90)
url = f'http://api.steampowered.com/IEconService/GetTradeOffers/v1/?key={self.steam_api}&get_sent_offers=1&active_only=1'

try:
trade_offers = get(url, timeout=60).json()['response']['trade_offers_sent']
for i in trade_offers:
if time() - i['time_created'] > 600 and i['message'] in self.sent_offers_messages and i['trade_offer_state'] in [2, 9]:
try:
self.cancel_trade_offer(i['tradeofferid'])
message(self.login, 'n', f'Canceled offer #{i["tradeofferid"]}')
except:
message(self.login, 'r', 'Trade offer cancellation error')
except:
pass
sleep(500)
message(self.login, 'n', f'Getting sent offers!')
offers = get_sent_offers(self.session, self.steam_id)
if offers == 'ERROR':
message(self.login, 'r', 'Error getting sent offers list')
continue
for trade_id in offers:
trade_message = offers[trade_id]
if trade_message in self.sent_offers_messages and time() - self.sent_offers_messages[trade_message] > 600:
try:
self.cancel_trade_offer(trade_id)
message(self.login, 'n', f'Canceled offer #{trade_id}')
except:
message(self.login, 'r', 'Trade offer cancellation error')

def filter_offers_list(self, offers):
for offer in offers.copy():
Expand Down Expand Up @@ -606,7 +606,7 @@ class ItemsSender:
# If session is ok, and trade offer need confirmation
if response.status_code == 200:
message(self.login, 'y>', f'Offer #{counter}/{len(offers)} creating..')
self.sent_offers_messages.append(offer['tradeoffermessage'])
self.sent_offers_messages[offer['tradeoffermessage']] = time()
sleep(1)
continue

Expand Down

0 comments on commit 7b00173

Please sign in to comment.