Scheduling — how it works
Scheduling is booking pages in the Calendly sense, as mesh records in your own home.
Set up
- Press Start on the Scheduling cover. It creates My scheduling at
{you}/Scheduling/MyScheduling. Nothing else is copied. - Add a booking page with + → Booking page. In Edit, set its length, the bookable days
and hours, your time zone, the minimum notice, how far ahead people may book, and the
calendar:
- Microsoft: your Microsoft 365 calendar, through the same consent the Executive Assistant uses. The page shows Connect Microsoft calendar until it is connected. Free/busy comes from your calendar view (events shown as free and cancelled events do not block). A booking creates the event with the invitee as an attendee, so Microsoft sends the invitation, and adds a Teams link when Online meeting is on.
- Google: set Google account path to your Google account node (the Google app, inside your home). Free/busy comes from Google's freeBusy. Booking needs calendar write permission on that connection; without it the booking is recorded and you send the invitation yourself (see Limits).
- None: bookings are only recorded, and nothing checks your calendar.
- Turn on Published. The Overview shows the link to share. Anyone with it can book, without an account.
Your preferences
On My scheduling (every page) and on a single page (on top of it):
| Field | Means | Example |
|---|---|---|
| Keep free | never offered | Fri 12:00-18:00; Mon 08:00-10:00; Sat-Sun |
| Preferred times | proposed first, marked ⭐ | Tue-Thu 14:00-17:00 |
| At most per day | daily cap on bookings (0 = none) | 3 |
| Note (My scheduling) | anything else, in your words, for the Scheduler agent | favourite lunch places |
Rules are weekdays and times in your time zone, separated by ;. A rule on a booking page that
cannot be read is named on that page's Overview, never silently ignored. A rule on My scheduling
that cannot be read is skipped; the Scheduler checks the rules it writes. You can also tell the Scheduler agent in plain words
("keep Friday afternoons free") and it writes the rule.
Links with context
One booking page can be offered several ways. The 🔗 A link with context box on its Overview, or the Scheduler, makes a link that adds:
- kind:
lunch(only inside the page's lunch window, 11:30–14:00 by default, 60 min unless said otherwise),inperson,calloronline; - travel: minutes kept free before and after an in-person meeting or lunch. A link can raise the page's travel time but never lower it, and each booking remembers its travel time, so the next booking respects it too;
- duration (longer, never shorter, than the page's), location and a note the invitee reads.
The context is readable in the link:
/Scheduling/Public/Book/Book/{page}/~kind=lunch&duration=90&travel=20&location=Caf%C3%A9%20Central.
Anyone can edit a link, so a link can only make the page stricter. It can turn an online page
into an in-person meeting or a lunch, raise the travel time, or lengthen the meeting. It cannot turn
an in-person page or a lunch back into an online one, lower your travel time, shorten the meeting,
or widen your hours. For a shorter version of a meeting, make a second booking page.
What the invitee sees
- The meeting, its length and kind, the place and the host's note; free times by day in the invitee's time zone, with ⭐ on your preferred times.
- ✨ Let the assistant find a time: they say "next week, a morning, not Friday" (English or German), and it proposes up to three times, preferring yours. On the public page this reading is deterministic, with no model call. The visitor may be anonymous, and a model call made from here would not be charged to anyone's credit. Your own "find a time with Jane" runs through the Scheduler agent, which is metered.
- Signed in with Microsoft or Google (Google through the Google app), only the times free in both calendars. If their connected calendar cannot be read, the page says so.
- After booking: the invitation from your calendar (it carries the calendar file), Add to Google / Outlook / Outlook.com, the join link, and, if they are not signed in, Sign in with Google or Microsoft to get booking pages of their own. When no invitation was sent (no calendar, or the calendar refused), the page says so plainly.
When they confirm, the page and your rules are read again, the time is re-checked against fresh busy time, and the slot is reserved before your calendar is written, so two people cannot take the same start. Each page accepts at most 20 new bookings a day, and one address may hold at most 3 upcoming ones on it.
The Scheduler agent
Pick Scheduler in chat, or type /schedule …. It sets up pages, writes your preferences as
rules, makes links with context (estimating travel time with Swiss public transport where that
applies), finds times in your calendar, and drafts the mail with the link. You send it.
Where things are, and who sees them
- Booking pages and bookings live in your home. Only you (and whoever you grant) read them.
- The public page reads your page under the System identity only when it is Published, and shows only its name, description, length, kind, place, note and free times, never your events.
- The host of a page is the home it lives in, never a field, so nobody can point a page at someone else's calendar.
Limits
- Google booking needs calendar write access. The Google connection grants read-only calendar
access today. Free/busy works with it; writing the event needs the
calendar.eventsscope on the installation's Google connection, which is a deliberate step for the administrator (Google may require app verification for it). Until then, bookings on a Google page are recorded with the reason, and you send the invitation. - Google works through the installation's Google binding (the default Connect Google flow). A Google account connected with your own OAuth client and refresh token is read only by the Google app itself, so a booking page cannot use it; connect through the default flow instead.
- A booking page must live inside a person's home, not in a shared space.
- Travel time is kept free on your side by the page. It is not written into your calendar as separate travel events.
- Bookings that sent no invitation (no calendar, or a refused write) are listed under the page's Bookings. There is no separate notification yet.
- An anonymous visitor whose browser time zone is unknown sees the page's own time zone, and the page header names it.
- Cancelling and rescheduling from the invitee's side are not built yet. Use the calendar invitation's own Decline / Propose new time.