summaryrefslogtreecommitdiff
path: root/FortniteStatusNotifier.py
diff options
context:
space:
mode:
Diffstat (limited to 'FortniteStatusNotifier.py')
-rw-r--r--FortniteStatusNotifier.py37
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