GOOGLE CLOUD / CONVERSATIONAL AI

Dialogflow CX
Virtual Agent.

I’m building a conversational assistant that turns a consultation request into structured project discovery. Dialogflow CX guides the conversation; Gemini on Vertex AI helps understand the need and ask a useful next question.

IN DEVELOPMENT · CORE FLOW API-TESTED

REQUEST → UNDERSTANDINGET / CX–02
EXAMPLE CUSTOMER REQUEST

“My website is unstable. I need to move from AWS to Google Cloud without downtime.”

VERTEX AI / GEMINI

Discover what matters.

Structured needs. One relevant follow-up.

PROJECT TYPE
Website migration
PLATFORMS
AWS → Google Cloud
CUSTOMER PROBLEM
Website instability
REQUIREMENT
No downtime
THE WORKING
CLOUD STACK
Dialogflow CX+Cloud Run+Vertex AI+Python / FastAPI+Docker

01 / THE CUSTOMER PROBLEM

The first conversation
should move the
project forward.

A customer knows the problem they want solved. Turning that first request into useful technical context often takes several rounds of questions.

I built this project to explore that first interaction: recognize a consultation request, collect the customer’s needs, extract relevant details, and ask a focused follow-up before offering a booking link.

The aim is better initial discovery: a clearer request for the person who helps next, and a useful next step for the customer.

02 / EXPLORE THE CONVERSATION

A request becomes
something actionable.

Step through a representative consultation. This walkthrough explains the implemented flow; it does not connect to the live agent or send information.

EXAMPLE CONVERSATION · ILLUSTRATIVE CONTENT · NO LIVE REQUESTS

CUSTOMERI would like to schedule a consultation.
VIRTUAL AGENTI can help you get started with a consultation. What would you like help with?

DIALOGFLOW CX / INTENT & STATE

Recognize the request.

The consultation intent routes the conversation to an intake page. A required form parameter collects the customer’s project needs.

intent
consultation.request
collect
project_needs
next
Project discovery

Example wording is illustrative. The underlying consultation → discovery → follow-up → booking-link flow was manually tested through the Dialogflow API.

Step 1 of 4: Request

03 / THE IMPLEMENTED ARCHITECTURE

Conversation in front.
Cloud engineering behind it.

Dialogflow owns the conversation state. The Python fulfillment service coordinates AI discovery behind an authenticated Cloud Run endpoint.

  1. 01 / CONVERSATION

    Dialogflow CX

    Recognizes intent, manages pages, and collects the initial project needs.

  2. 02 / FULFILLMENT

    Cloud Run + FastAPI

    Validates the webhook request and invokes the discovery logic.

  3. 03 / UNDERSTANDING

    Vertex AI + Gemini

    Extracts structured needs and generates a relevant follow-up question.

  4. 04 / CONTINUE

    Dialogflow CX

    Collects the follow-up, returns the Calendly link, and ends the session.

Authenticated service boundaries

Cloud Run requires authentication. Dialogflow invokes it using service-agent ID tokens; a dedicated runtime service account provides access to Vertex AI.

Containerized, bounded deployment

The Python service runs as a non-root user in Docker, exposes health and webhook endpoints, and is configured to scale from zero to two Cloud Run instances.

04 / BUILD STATUS

Working milestones.
A clear next phase.

This is an active development project. The core API conversation is tested; the phone experience and additional customer actions are still being developed.

BUILT & API-TESTED

Consultation discovery

  • Consultation intent, required intake, and a follow-up page.
  • Authenticated FastAPI webhook deployed to Cloud Run.
  • Gemini extraction and follow-up generation through Vertex AI.
  • Session parameter capture, an external Calendly link, and session ending.
  • Agent configuration exported and versioned; the latest welcome patch still needs re-export.

CONFIGURED / VALIDATION PENDING

Twilio voice channel

  • Native Twilio connector and Studio phone routing configured.
  • First-call testing identified a welcome-event issue; a Draft handler was added.
  • Promotion of the welcome fix and a complete successful phone conversation still need verification.
  • Voice selection, the company greeting, and caller contact intake are next.

PLANNED / NEXT MILESTONES

Connected customer actions

  • Merge follow-up answers and support corrections and retries.
  • Confirm customer details and persist requests in Firestore.
  • Send booking links through Twilio after explicit SMS permission.
  • Add confirmed customer messages and grounded service answers.
  • Expand discovery for marketing, website, and app requests.

Implementation checkpoint: October 27, 2026. Details are held in session parameters; the agent does not currently save requests to a database, send SMS, or create appointments. Read the project’s progress notes ↗

05 / VALIDATION & DESIGN DECISIONS

Show the behavior.
Respect the boundaries.

I’m validating the conversation and its cloud integrations together: what the customer says, which details are captured, and what actually happens next.

MANUAL API VALIDATION
Migration scenario · October 27, 2026

01

Discovery that follows the request

A migration scenario captured AWS-to-Google-Cloud context, website instability, a relative timeline, and a no-downtime requirement. The webhook returned HTTP 200 in approximately 4.4 seconds in that single manual test.

02

State that survives the next turn

The next response captured WordPress, EC2, and MySQL details in the follow-up parameter, returned the booking link, and reached the end of the session.

03

Actions need confirmed results

AI-generated text is not proof that an appointment was booked, a request was saved, or a text was delivered. Those outcomes require their own integrations and confirmed backend responses.

CONTINUE EXPLORING / AWS + GOOGLE CLOUD

Another side of customer experience.

Explore Enterprise Connect, my Amazon Connect contact center project with IVR routing, Lambda integrations, and call-data logging.