diff --git a/README.md b/README.md
index f463d01..6c5b418 100644
--- a/README.md
+++ b/README.md
@@ -20,9 +20,9 @@ This software handles data collection and processing for The Weather Channel's I
- [ ] WMRecord - Marine Forecast
# Usage instructions
-[Download a release](https://github.com/the5dcrew/i2MessageEncoder-Rewrite/releases) for the most stable version, or clone the repository.
+[Download a release](https://github.com/Open-Telecom/i2MessageEncoder-Rewrite/releases) for the most stable version, or clone the repository.
-``git clone https://github.com/the5dcrew/i2MessageEncoder-Rewrite``
+``git clone https://github.com/Open-Telecom/i2MessageEncoder-Rewrite``
*(If downloading this as a zip, extract to the directory of your choosing.)*
diff --git a/RecordTasks.py b/RecordTasks.py
index d3493af..8f5b924 100644
--- a/RecordTasks.py
+++ b/RecordTasks.py
@@ -4,28 +4,22 @@ from radar import TWCRadarCollector
from datetime import datetime
-""" This houses the tasks needed to update the data records concurrently
- I have no idea if this is a messy way to do things, but it will be worked upon if it is.
-"""
-
async def updateMosaicTask():
- mosaicUpdateIntervals = [0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55]
+ mosaicUpdateIntervals = [i+1 for i in range(0, 60, 5)]
while True:
- # Server takes ~15 - 35 seconds to fully generate a frame, so use 40 seconds to ensure it's fully generated.
- if datetime.now().minute in mosaicUpdateIntervals and datetime.now().second == 40:
+ # Mosaic intervals are 5+1 minutes, so instead of waiting 40 seconds and running "Datetime.now()" twice, We run it once and wait for 60.
+ if datetime.now().minute in mosaicUpdateIntervals:
await TWCRadarCollector.collect("radarmosaic")
-
await asyncio.sleep(1)
async def updateSatradTask():
- satradUpdateIntervals = [0, 10, 20, 30, 40, 50]
+ satradUpdateIntervals = [i+1 for i in range(0, 60, 10)]
while True:
- # Server takes ~15 - 35 seconds to fully generate a frame, so use 40 seconds to ensure it's fully generated.
- if datetime.now().minute in satradUpdateIntervals and datetime.now().second == 40:
+ #Satrad intervals are 10+1 minutes, so instead of waiting 40 seconds and running "Datetime.now()" twice, We run it once and wait for 60.
+ if datetime.now().minute in satradUpdateIntervals:
await TWCRadarCollector.collect("satrad")
-
await asyncio.sleep(1)
@@ -94,4 +88,4 @@ async def tTask():
async def wnTask():
while True:
await WateringNeeds.makeRecord()
- await asyncio.sleep(60 * 60)
\ No newline at end of file
+ await asyncio.sleep(60 * 60)
diff --git a/lo8s.py b/lo8s.py
index 0a13e0c..142dd9c 100644
--- a/lo8s.py
+++ b/lo8s.py
@@ -1,42 +1,21 @@
import py2Lib.bit as bit
-import time
-from datetime import datetime,timedelta
-import random
-import secrets
-
-theNow = datetime.now()
-
-currentHour = theNow.strftime('%H')
+from time import sleep
+from datetime import datetime, timedelta
+from random import choice
def runLo8s(flavor, duration, LDL, logo = None, LDLColor = None, EmergencyLFCancel = None):
-
Id = ''.join(random.choice('ABCDEF0123456789') for i in range(16))
-
nowUTC = datetime.utcnow()
-
now = datetime.now()
-
- currentHour = nowUTC.strftime('%H')
-
- friendlyRunTime = now + timedelta(seconds=30)
-
+ friendlyRunTime = now + timedelta(seconds=30).strftime('%m/%d/%Y %I:%M:%S %p')
runTime = nowUTC + timedelta(seconds=30)
-
- runTimeLDL = nowUTC + timedelta(seconds=30)
-
- ldlCancelTime = runTimeLDL.strftime('%m/%d/%Y %H:%M:%S'+':02')
-
- lo8sRunTime = runTime.strftime('%m/%d/%Y %H:%M:%S'+':00')
-
- friendlyLo8sRunTime = friendlyRunTime.strftime('%m/%d/%Y %I:%M:%S %p')
-
+ ldlCancelTime = runTime.strftime('%m/%d/%Y %H:%M:%S:02')
+ lo8sRunTime = runTime.strftime('%m/%d/%Y %H:%M:%S:00')
if flavor == 'Z':
nextLDLRunTime = runTime + timedelta(seconds=91)
else:
nextLDLRunTime = runTime + timedelta(seconds=65)
-
- nextLDLRun = nextLDLRunTime.strftime('%m/%d/%Y %H:%M:%S'+':02')
-
+ nextLDLRun = nextLDLRunTime.strftime('%m/%d/%Y %H:%M:%S:02')
if duration == '60':
duration = '1800'
elif duration == '65':
@@ -46,66 +25,45 @@ def runLo8s(flavor, duration, LDL, logo = None, LDLColor = None, EmergencyLFCanc
elif duration == '120':
duration = '3600'
else:
- print('Invalid Duration specified. Please specifiy length of the local forecast in seconds. 60 for 1 minute, 65 for 1 minute 5 seconds, 90 for 1 minute 30 seconds, 120 for 2 minutes.\n\nScript will now terminate...')
+ print('Invalid Duration specified. Please specifiy length of the local forecast in seconds.\n60 for 1 minute, 65 for 1 minute 5 seconds, 90 for 1 minute 30 seconds, 120 for 2 minutes.\n\nScript will now terminate...')
exit()
- nextLDLRun = nextLDLRunTime.strftime('%m/%d/%Y %H:%M:%S'+':02')
-
if EmergencyLFCancel == 1:
- print('Emergency Local On The 8s Kill Switch is Activated. No Local On The 8s Will Air. Maybe b3atdropp3r Hacked An i2 Again???\n' + friendlyLo8sRunTime)
- time.sleep(27)
+ print(f'Emergency Local On The 8s Kill Switch is Activated. No Local On The 8s Will Air. Maybe b3atdropp3r Hacked An i2 Again???\n{friendlyLo8sRunTime}')
+ sleep(27)
elif logo != '':
- print('Sending Load Command To All Stars. The Local On The 8s is expected to start at ' + friendlyLo8sRunTime + ' ...')
- bit.sendCommand([''], 1)
- time.sleep(27)
+ print(f'Sending Load Command To All Stars. The Local On The 8s is expected to start at {friendlyLo8sRunTime} ...')
+ bit.sendCommand([f''], 1)
+ sleep(27)
else:
- print('Sending Load Command To All Stars. The Local On The 8s is expected to start at ' + friendlyLo8sRunTime + ' ...')
- bit.sendCommand([''], 1)
- time.sleep(27)
- #Cancel LDL
+ print(f'Sending Load Command To All Stars. The Local On The 8s is expected to start at {friendlyLo8sRunTime} ...')
+ bit.sendCommand([f''], 1)
+ sleep(27)
print('\nCanceling LDL...')
- bit.sendCommand([''], 1)
- #time.sleep(1)
+ bit.sendCommand([f''], 1)
if EmergencyLFCancel == 1:
print('Not Airing Local On The 8s Due To Kill Switch Activated. Will Reload LDL After National DBS Forecast Finishes...')
- time.sleep(53)
+ sleep(53)
else:
- #Run Local On The 8s
print('\nSending The Run Command. Stand By For Your Local Forecast...')
- bit.sendCommand([''], 1)
- time.sleep(53)
+ bit.sendCommand([f''], 1)
+ sleep(53)
if EmergencyLFCancel == 1:
- #color = None
- #if LDLColor == 0:
- #color = 'E'
- #elif LDLColor == 1:
- #color = 'F'
- #else:
- #color = 'E'
print("\nGetting The LDL Ready So It'll Cue After The National DBS Local Forecast")
- bit.sendCommand([''], 1)
+ bit.sendCommand([f''], 1)
time.sleep(10)
print("\nSending The Run Command For The LDL...")
- bit.sendCommand([''], 1)
+ bit.sendCommand([f''], 1)
elif LDL == 1:
- #color = None
- #if LDLColor == 0:
- #color = 'E'
- #elif LDLColor == 1:
- #color = 'F'
- #else:
- #color = 'E'
- #Load LDL
print("\nGetting The LDL Ready So It'll Cue After This Local Forecast...")
- bit.sendCommand([''], 1)
+ bit.sendCommand([f''], 1)
time.sleep(10)
- #Run LDL
- print('''\nSending The Run Command For The LDL. As Dave Schwartz Would Say... "That's a Wrap!"''')
- bit.sendCommand([''], 1)
+ print('\nSending The Run Command For The LDL. As Dave Schwartz Would Say... "That\'s a Wrap!"')
+ bit.sendCommand([f''], 1)
else:
time.sleep(10)
- print('''That's It Folks. As Dave Schwartz Would Say... "That's a Wrap!"''')
+ print('That\'s It Folks. As Dave Schwartz Would Say... "That\'s a Wrap!"')
#----- SET BACKGROUNDS HERE ----------------------#
BGCatastrophic = ['3094', '3095', '3103', '3115']
@@ -114,8 +72,6 @@ BGAlert = ['3094', '3095', '3103', '3115']
#BGNight = ['3091', '3092', '3102', '3114', '3191']
BGNorm = ['3091', '3092', '3102', '3114']
-#------------------------------------------------------------------------
-
#------ BG RULES SECTION ------------------------#
if BGCatastrophic:
@@ -137,29 +93,28 @@ else:
brandedNormal = ''
#----------------------------------------------
-i = 0
-while i == 0:
- mode = input('\nPlease specify mode. 1 for "Normal", 2 for "Alert", 3 for "Storm Mode", 4 for "Catastrophic", 5 for "Tag" or 0 for "Unbranded"\n')
- if mode == '5':
- ad = input('Please specify Tag Number.\n')
- flavor = input("Flavor Overide? Default is 'V'.\nEnter flavor letter or enter to bypass...")
+while True:
+ mode = input('Please specify mode.\n0 - "Unbranded"\n1 - "Normal"\n2 - "Alert"\n3 - "Storm Mode"\n4 - "Catastrophic"\n5 - "Tag"\n9 - Exit LOT8\n==>')
+ if mode == '0':
+ runLo8s('V', '65', 1, '', 'E')
+ elif mode == '1':
+ runLo8s('V', '65', 1, brandedNormal, 'E')
+ elif mode == '2':
+ runLo8s('V', '65', 1, brandedAlert, 'E')
+ elif mode == '3':
+ runLo8s('V1', '65', 1, brandedStorm, 'STORM')
+ elif mode == '4':
+ runLo8s('V2', '65', 1, brandedCatastrophic, 'F')
+ elif mode == '5':
+ ad = input('Please specify Tag Number.\n==>')
+ flavor = input("Flavor Overide? Default is 'V'.\nEnter flavor letter, or press enter to bypass.\n==>")
if flavor == '':
runLo8s('V', '65', 1, ad, 'E')
else:
runLo8s(flavor, '65', 1, ad, 'E')
- elif mode == '4':
- runLo8s('V2', '65', 1, brandedCatastrophic, 'F')
- elif mode == '3':
- runLo8s('V1', '65', 1, brandedStorm, 'STORM')
- elif mode == '2':
- runLo8s('V', '65', 1, brandedAlert, 'E')
- elif mode == '1':
- runLo8s('V', '65', 1, brandedNormal, 'E')
- elif mode == '0':
- runLo8s('V', '65', 1, '', 'E')
+ elif mode == '9':
+ print("\n\nGoodbye.\n\n")
+ exit()
else:
- print("An invalid mode was specified. This is not allowed! Will now shutdown...\n")
- time.sleep(5)
- i = 1
-
-#runLo8s('V', '65', 1, brandedNormal, 'E')
\ No newline at end of file
+ print("Not a valid selection.\n\n")
+ time.sleep(1)