AI Guest Messaging Platform

Built OlivAI, a real-time AI guest-messaging platform combining a project-scoped inbox, AI and human handoff, booking and property context, conversation search, user management, and analytics inside one multi-tenant support dashboard.

Client
Aardvark Partners
Role
Full-stack
Scope
Inbox, real-time chat, AI handoff, analytics, properties, users, auth
Year
2025
Fig. 01 — MESSAGING OPS · AI
Multi-tenant
Project-scoped inboxes
Real-time
Live conversation updates
AI + human
Handoff workflow
Hospitality
Guest support at scale

Context

Hospitality teams needed a single live inbox for guest conversations where AI could handle or draft responses, agents could claim and escalate, and booking, property, and pre-check-in context sat right next to the message thread.

  • Real-time inbox

    Live conversation updates and counts scoped per project

  • AI and human handoff

    Claim, assign, review, interrupt, and close states

  • Booking-aware support

    Customer, booking, property, and pre-check-in context

Problem

Guest messaging, booking data, property records, agent assignment, and reporting were scattered across separate tools, making it slow to respond with context and hard to know which conversations were AI-handled, in review, or waiting on a human.

Architecture

Application

  • Real-time inbox

    Conversation list with live counts and updates via Supabase Realtime, refreshing on insert, update, and delete.

  • AI and human handoff workflow

    Claim, assign, interrupt, review, and close conversation states across AI and agent messages.

  • n8n AI workflows

    AI message generation, drafting, and automation orchestrated through n8n flows feeding back into the inbox.

  • Context panel

    Customer, booking, property, and pre-check-in data fetched alongside the active thread.

  • Analytics

    Aggregations for conversation volume, agent activity, ratings, and customer satisfaction.

  • Messaging server actions

    Insert messages, update conversation state, and trigger real-time list and count refreshes.

Platform

  • Auth middleware

    Resolves user, agent, and organization context on every protected API call.

  • Project-scoped subscriptions

    Realtime channels filtered by project_id so each org only receives its own updates.

  • Role-based access

    Admin vs agent surfaces across inbox, settings, and analytics.

Data

  • Supabase data model

    Conversations, messages, agents, organizations, properties, and bookings in a shared Postgres schema.

  • Backend booking and property APIs

    Reservation, contact, and property data sources powering the context panel.

Tech stack

  • Next.js 15 + React 19

    App Router with Server Components, Server Actions, and API routes.

  • TypeScript

    End-to-end typing across server actions, API routes, and UI.

  • Tailwind CSS 4 + Radix UI

    Shadcn-style components built on Radix primitives.

  • TanStack Query + Zustand

    Server-state caching with Zustand for local inbox state.

  • Supabase

    Postgres database, auth, and row-level security backing tenant isolation.

  • Authentication

    Supabase Auth with Google OAuth for agent sign-in.

  • Supabase Realtime

    Project-scoped subscriptions powering live conversation updates and counts.

  • next-safe-action + Zod

    Typed server actions with schema validation.

  • Recharts

    Charts behind the analytics surfaces.

  • n8n

    AI workflow automation orchestrating message generation, drafts, and handoff actions.

  • Vercel

    Hosting for the Next.js app, server actions, and API routes.

Product surface

  • 01

    Live inbox

    Real-time conversation list with mine, unassigned, and all views.

  • 02

    Conversation thread

    Threaded messaging across AI, guest, and human-agent messages with review and handoff states.

  • 03

    Booking context panel

    Customer, booking, property, and pre-check-in details next to the active thread.

  • 04

    Analytics dashboard

    Conversation volume, agent activity, ratings, and customer satisfaction reporting.

  • 05

    Properties and users

    Property records and agent or user management per organization.

  • 06

    Organization settings

    Project-level configuration and tenant settings.

Outcome

A faster, more context-aware support workflow: AI handles or drafts responses, agents claim escalations with full booking context, managers track performance, and conversations stay scoped to the right organization.

  • Built a real-time inbox with Supabase Realtime, scoped per project for tenant-isolated conversations
  • Designed an AI and human handoff workflow with claim, assign, review, interrupt, and close states
  • Surfaced customer, booking, property, and pre-check-in context next to every conversation thread