Communications

Given-name greeting

← Back to Communications

Guest greetings now use the guest's given name (first name), not the full display name or the surname.

Before

Booking channels return the guest name in different formats:

  • Booking.com sometimes returns Petr Simun (given + family)
  • Hospitable sometimes returns SIMUN, PETR (LASTNAME, FIRSTNAME)
  • Airbnb sometimes returns just first name, sometimes full

Historical greeting logic picked whichever the first-word-in-name-field was — for SIMUN, PETR that meant greetings said "Hi SIMUN". For calendar labels, same issue.

After

At reservation ingest, the platform:

  1. Runs a deterministic given-name detector (regex + LASTNAME-FIRSTNAME pattern + comma splits + capitalization heuristic).
  2. Stores the resolved given name on guests.givenName.
  3. Every outbound greeting + calendar label + task overview uses guests.givenName, not the raw name field.

Where the given name is used

  • Welcome message — "Hi Petr" instead of "Hi Petr Simun" or "Hi SIMUN".
  • Send Check-in — same.
  • AI Suggest drafts — same greeting rules.
  • V28 calendar chips — display given name (concise).
  • Cleaner plán — same.
  • Pulse UNANSWERED tiles — same.

Guest displays vs internal fields

  • guests.name — the raw full name as it arrived from the channel (unchanged, for records).
  • guests.givenName — the parsed first-name for greetings.
  • V28 reservation drawer shows both when they differ.

Ratchet

A CI ratchet pins that the greeting resolver reads givenName, not name. If a future refactor accidentally reverts to the raw name field, CI fails.

Source: the FlatsBratislava operator manual.