2025-07-15 16:36:34 +02:00
|
|
|
import os
|
|
|
|
|
from dotenv import load_dotenv
|
2025-08-02 22:37:17 +02:00
|
|
|
from auth.session import AnnySession
|
|
|
|
|
from booking.client import BookingClient
|
|
|
|
|
from utils.helpers import get_future_datetime
|
2025-07-15 16:36:34 +02:00
|
|
|
|
2025-08-02 22:37:17 +02:00
|
|
|
def main():
|
|
|
|
|
load_dotenv('.env', override=True)
|
|
|
|
|
username = os.getenv("USERNAME")
|
|
|
|
|
password = os.getenv("PASSWORD")
|
2025-07-15 16:36:34 +02:00
|
|
|
|
2025-08-02 22:37:17 +02:00
|
|
|
if not username or not password:
|
|
|
|
|
print("❌ Missing USERNAME or PASSWORD in .env")
|
|
|
|
|
return
|
2025-07-15 16:36:34 +02:00
|
|
|
|
2025-08-02 22:37:17 +02:00
|
|
|
session = AnnySession(username, password)
|
|
|
|
|
cookies = session.login()
|
2025-07-15 16:36:34 +02:00
|
|
|
|
2025-08-02 22:37:17 +02:00
|
|
|
if not cookies:
|
|
|
|
|
return
|
2025-07-15 16:36:34 +02:00
|
|
|
|
2025-08-02 22:37:17 +02:00
|
|
|
booking = BookingClient(cookies)
|
|
|
|
|
start = get_future_datetime(hour="13:00:00")
|
|
|
|
|
end = get_future_datetime(hour="18:00:00")
|
2025-07-15 16:36:34 +02:00
|
|
|
|
2025-08-02 22:37:17 +02:00
|
|
|
resource_id = booking.find_available_resource(start, end)
|
2025-07-15 16:36:34 +02:00
|
|
|
|
2025-08-02 22:37:17 +02:00
|
|
|
if resource_id:
|
|
|
|
|
booking.reserve(resource_id, start, end)
|
|
|
|
|
else:
|
|
|
|
|
print("⚠️ No available slots found.")
|
2025-07-15 16:36:34 +02:00
|
|
|
|
2025-08-02 22:37:17 +02:00
|
|
|
if __name__ == "__main__":
|
|
|
|
|
main()
|