calcom / cal.com

Scheduling infrastructure for absolutely everyone.
https://cal.com
Other
32.57k stars 8.06k forks source link

[CAL-4303] Optimized schedules #16575

Open CarinaWolli opened 2 months ago

CarinaWolli commented 2 months ago

Add a new setting to enable optimized schedules. When this option is enabled, instead of limiting events to our predefined start times (e.g., on the hour for 60-minute events), we find the optimal slot positioning to maximize the number of available slots. However, clean start times will still be prioritized when possible.

Example 1

Event length: 60 min

Availability: 8:00-12:30

Busy time: 10:00-10:10

Slots with optimized schedules:

Example 2

Event length: 60 min

Availability: 8:00-12:00

Busy time: 10:00-10:10

Slots with optimized schedules:

From SyncLinear.com | CAL-4303

Alex153 commented 1 month ago

@CarinaWolli In the 1st example you're describing :

Example 1 Event length: 60 min

Availability: 8:00-12:30

Busy time: 10:00-10:10

Slots with optimized schedules:

8:00-9:00 9:00-10:00 10:15-12:15 12:15-13:15

Aren't the 3rd and 4th slots supposed to be suggested at 10:10-11:10 and 11:30-12:30 ? Though it could depend on whether the "Busy time" through 10:00 to 10:10 matches an event type with a before/after buffer time config other than 0. (Or the event type we're trying to get slots from also happens to have a buffer config)

Looking forward to this feature 👍