diff --git a/check_x_capacity.py b/check_x_capacity.py index 1d81e8a..3dad047 100755 --- a/check_x_capacity.py +++ b/check_x_capacity.py @@ -1,5 +1,6 @@ #!/usr/bin/env python3 import logging +import pytz logging.basicConfig( filename='/home/shane/foodie_automator/logs/check_x_capacity.log', @@ -99,27 +100,26 @@ def display_author_status(author): """Display detailed status for a single author.""" username = author['username'] can_post, remaining, reset = check_author_rate_limit(author) - reset_time = datetime.fromtimestamp(reset, tz=timezone.utc).strftime('%Y-%m-%d %H:%M:%S') - - # Only check API if no scripts are running - if not is_any_script_running(): - api_remaining, api_reset = get_x_rate_limit_status(author) - if api_remaining is not None: - api_reset_time = datetime.fromtimestamp(api_reset, tz=timezone.utc).strftime('%Y-%m-%d %H:%M:%S') - # Use API values as primary display - remaining = api_remaining - reset_time = api_reset_time - can_post = remaining > 0 + reset_time_utc = datetime.fromtimestamp(reset, tz=timezone.utc) + reset_time_str = reset_time_utc.strftime('%Y-%m-%d %H:%M:%S UTC') + # Convert to Sydney time + try: + sydney_tz = pytz.timezone('Australia/Sydney') + reset_time_sydney = reset_time_utc.astimezone(sydney_tz) + reset_time_sydney_str = reset_time_sydney.strftime('%Y-%m-%d %H:%M:%S %Z') + except Exception as e: + reset_time_sydney_str = 'N/A' status = "✅" if can_post else "❌" print(f"\n{status} {username}:") print(f" • Remaining tweets: {remaining}/17") - print(f" • Reset time: {reset_time}") + print(f" • Reset time (UTC): {reset_time_str}") + print(f" • Reset time (Sydney): {reset_time_sydney_str}") print(f" • Can post: {'Yes' if can_post else 'No'}") # Send alert if capacity is full if remaining == 0: - send_capacity_alert(username, remaining, reset_time) + send_capacity_alert(username, remaining, reset_time_str) # Show API status for verification if not is_any_script_running():