From 7b992afe70925f244ca6e9746071ae71e497b54e Mon Sep 17 00:00:00 2001 From: Dmitrii Morozov Date: Mon, 8 Apr 2024 23:40:24 +0200 Subject: Observe status of friends --- fortniteTest.py | 91 --------------------------------------------------------- 1 file changed, 91 deletions(-) delete mode 100755 fortniteTest.py (limited to 'fortniteTest.py') diff --git a/fortniteTest.py b/fortniteTest.py deleted file mode 100755 index a00283f..0000000 --- a/fortniteTest.py +++ /dev/null @@ -1,91 +0,0 @@ -#!/usr/bin/python3 - -import fortnitepy -import json -import os - -email = 'dmitry-morozov.rjkv73@yandex.ru' -password = 'Dimka2407985$' -filename = 'device_auths.json' - -class MyClient(fortnitepy.Client): - def __init__(self): - if self._device_auth_file_exists(): - device_auth_details = self.get_device_auth_details().get(email, {}) - super().__init__( - auth=fortnitepy.DeviceAuth( - **device_auth_details - ) - ) - else: - code = input("Enter authorization code (https://www.epicgames.com/id/api/redirect?clientId=3446cd72694c4a4485d81b77adbb2141&responseType=code):") - print(code) - super().__init__( - auth=fortnitepy.AuthorizationCodeAuth( - code = code - ) - ) - - def _device_auth_file_exists(self): - return os.path.isfile(filename) - - def get_device_auth_details(self): - if os.path.isfile(filename): - with open(filename, 'r') as fp: - return json.load(fp) - return {} - - def store_device_auth_details(self, email, details): - existing = self.get_device_auth_details() - existing[email] = details - - with open(filename, 'w') as fp: - json.dump(existing, fp) - - async def event_device_auth_generate(self, details, email): - self.store_device_auth_details(email, details) - - async def event_ready(self): - print('----------------') - print('Client ready as') - print(self.user.display_name) - print(self.user.id) - print('----------------') - - if not self._device_auth_file_exists(): - device_auth_data = await self.auth.generate_device_auth() - details = { - 'device_id': device_auth_data['deviceId'], - 'account_id': device_auth_data['accountId'], - 'secret': device_auth_data['secret'], - } - self.auth.__dict__.update(details) - self.dispatch_event( - 'device_auth_generate', - details, - email - ) - - for incomingPedingFriend in self.incoming_pending_friends: - print('Accepting friend request') - await incomingPedingFriend.accept() - - async def event_party_invite(self, invitation: fortnitepy.ReceivedPartyInvitation): - clientParty = await invitation.accept() - for partyMember in clientParty.members: - if not self.get_friend(partyMember.id) and self.user.id != partyMember.id: - print('Adding {} as friend'.format(partyMember.display_name)) - await partyMember.add() - - async def event_friend_request(self, request: fortnitepy.friend.IncomingPendingFriend): - print('Accepting friend request') - await request.accept() - - async def event_friend_presence(self, before, after: fortnitepy.Presence): - if before is not None and after is not None: - print('event_friend_presence for user {}'.format(after.friend.display_name)) - print("Before available {}, joinable {}, playing {}, lfg {}".format(before.available, before.joinable, before.playing, before.lfg)) - print("After available {}, joinable {}, playing {}, lfg {}".format(after.available, after.joinable, after.playing, after.lfg)) - -client = MyClient() -client.run() \ No newline at end of file -- cgit v1.2.3