Project translated automatically.
Log in
or
register,
to view the original
1. Project Goal
To implement an automated system that will scan for available slots for passport appointments (or other services) at the Ukrainian consulate (for example, in San Francisco) and automatically book the nearest available slot. A micro-admin panel should also be developed to track booked slots and manage email addresses that will be used for booking. https://consulategeneralofukraineinsanfrancisco.setmore.com/services/43f35be4-5432-4289-b1b0-3838ab21d825?step=time-slot&products=43f35be4-5432-4289-b1b0-3838ab21d825&type=service&staff=5P8eQv743liUR3eBhDkLo1fP4Vdbtmtq&staffSelected=false
2. Requirements
2.1. Script for Automatic Booking
- The script must scan for available slots for services at the consulate and automatically book the nearest available slot.
- An example of a service is obtaining a passport at the Ukrainian consulate in San Francisco.
- The script must check available dates and times and look for the nearest free slot.
- Once the nearest free slot is found, the script must automatically book it.
- For booking, use email addresses from the database. The script must also support the use of Google email aliases (for example, zapisgmail.com, zapis+1gmail.com, etc.).
2.2. Admin Panel
- Goal: To provide control and monitoring of all booked slots through a user-friendly interface.
- Functions:
- Display all service bookings, showing which service, which slot was booked, and which email was used for the booking.
- The ability to add and manage email addresses that will be used for booking.
- Filtering by services, dates, and email addresses.
- Access to the admin panel must be restricted through an authorization system.
3. Business Logic
- The script must run periodically (for example, every 5 minutes), checking for available slots.
- Once a slot is found, the system automatically performs the booking using pre-prepared data (email, booking information).
- After a successful booking, the information must be stored in the database.
4. Monitoring and Notifications
- The administrator must receive information about each successful booking (service, slot, email).
- Logs: It is necessary to keep logs of all successful and failed booking attempts.
5. Additional Requirements
- The system must be resilient to frequent requests and prevent blocking by the website.
- The ability to easily scale the system to other consulates with similar functionality.