diff options
Diffstat (limited to 'FortniteStatusNotifier.py')
-rw-r--r-- | FortniteStatusNotifier.py | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/FortniteStatusNotifier.py b/FortniteStatusNotifier.py new file mode 100644 index 0000000..1c40ec0 --- /dev/null +++ b/FortniteStatusNotifier.py @@ -0,0 +1,37 @@ +from telebot import formatting +import time +import asyncio +from pythonFortniteStatus.FortniteStatus import * + +__polling_interval__ = 5 + +fortniteStatus = FortniteStatus() + +class Observer: + async def update(self, fortniteStatus) -> None: + pass + +class FortniteStatusNotifier: + + observer = None + fortniteStatus = None + + def __init__(self, observer: Observer): + self.observer = observer + + async def run(self): + # Initialize status + self.fortniteStatus = fortniteStatus.getStatus() + while True: + await self.__readStatus() + await asyncio.sleep(__polling_interval__) + + async def __readStatus(self): + serviceStatusTmp = fortniteStatus.getStatus() + if serviceStatusTmp != self.fortniteStatus: + await self.__notify(serviceStatusTmp) + self.fortniteStatus = serviceStatusTmp + + async def __notify(self, fortniteStatus): + print("Fortnite status changed, notifying observers") + await self.observer.update(fortniteStatus)
\ No newline at end of file |