The link they book with is the room you meet in.
Publish your availability, let people pick a time that works in their own timezone, and meet them right there. The confirmation email carries a Meet Buddy join URL — minted the moment the booking is confirmed, before anyone has opened anything.
No downloads. No plugins. One link from booking to meeting.
- Invitee time
- 9:00 am · Thu 14 Aug · Bengaluru
- Host time
- 1:30 pm · Thu 14 Aug · Sydney
No second link to paste
Most teams run a scheduler and a video product side by side, and glue them with a field in a confirmation email. That glue is where meetings get lost — the link arrives late, points at the wrong account, or changes when the time does.
- 1
A booking is confirmed
The moment a slot is taken, Meet Buddy creates a secure meeting room with a human-readable code. Nothing has been joined yet — the room is simply ready when you are.
- 2
Everything carries the same URL
The confirmation email, the ICS attachment and the calendar event all quote that one join link. There is no step where somebody has to remember to add it.
- 3
It stays true afterwards
Rescheduling keeps the code, so the calendar entry someone already accepted still opens the right room. Cancelling closes it, so an old link never quietly lets a stranger in.
Scheduling that does the awkward parts
The interesting work in a scheduler is not the calendar grid. It is buffers, notice, caps, overrides and timezones — the rules that stop a day filling up wrongly.
Availability that survives a calendar
Named weekly schedules, date-specific overrides, and a rolling or fixed date range. Buffers either side, a minimum notice, start-time increments, and caps per day, week or month.
Four ways to share a slot
One-on-one, group with a capacity, collective where every host must be free, and round robin distributed by least-recently-booked, even split or priority. Plus single-use links for the one-off.
Right time in both countries
Invitees pick their zone or have it detected; hosts keep theirs. Every slot is generated per calendar day rather than per week, which is the only way a fixed 9:00 stays 9:00 across a daylight-saving change.
Ask before they book
Short text, long text, select, multi-select, phone and checkbox questions, required or not, alongside the built-in name, email and guest fields. Routing forms send a respondent to the right event type or straight out to a URL.
Reschedule without a new link
Cancel and reschedule run through signed links with a reason captured, and your notice policies are enforced on the server rather than suggested in the interface. A reschedule keeps the meeting code.
Reminders, follow-ups, webhooks
Confirmations, reminders at the offsets you choose, follow-ups after the end, and cancellation notices. An ICS attachment on every one, a calendar feed per member, and a webhook when you want to tell something else.
09:00 is a wall clock, not an instant
Availability is stored as a weekday, a number of minutes past midnight, and an IANA zone — never as a UTC instant. Slots are generated by converting per calendar day, because a fixed local 09:00 sits at a different UTC instant either side of a transition, and the day the clocks move is 23 or 25 hours long.
Every one of those conversions lives in a single module with its reasoning written down, and no date library is installed. That is a deliberate constraint: the bug where a Monday morning quietly shifts by an hour for six months of the year is the one nobody notices until a customer misses a call.
A real room, not an embed
Meet Buddy handles the video infrastructure. Access is granted securely on the server, hosts control who enters and what participants can do, and guests join from the same link already in their calendar.
A green room first
Pick a camera, a microphone and a speaker, watch your own level meter, and see a permission error explained rather than swallowed — before anyone in the meeting sees you at all.
A lobby with a door
Anyone who is not a host or a confirmed invitee knocks. Hosts admit or deny, lock the meeting once everyone is in, and can mute, remove or promote a participant to co-host.
Screen share that says who
A presenting indicator, and a takeover prompt when someone else already has the screen. Active-speaker detection with a speaking ring, and a connection-quality reading on every tile.
Grid, spotlight, sidebar
Three layouts and a pin, because a workshop and a one-on-one are not the same shape. Pinning is a property of your view, not an instruction to everyone else's.
Chat that outlives the room
In-meeting chat, raised hands and reactions. The chat is written to the booking's record, so the room closing is not the end of what was said in it.
Breakouts and polls
Split into rooms, assign people, broadcast a message and pull everyone back. Polls and Q&A run in the main room, and an attendance report says who joined, when, and for how long.
Inline, popup, or a link that opens one
A booking page is a page, so embedding it is an iframe rather than a script that rewrites your DOM. Nothing loads from us until someone actually opens it.
<iframe src="https://meetbuddy.radioworkflow.com/acme/intro-call?embed=inline" width="100%" height="720" frameborder="0" title="Book a call with Acme" ></iframe>
One link. Booked, confirmed, joined.
Set up a booking page in a few minutes. The first meeting you book on it already has a room waiting.