メインコンテンツにスキップ

cleanhomes-ai-chatbot

Voice and text AI chatbot for house cleaning services built in Voiceflow. Handles customer inquiries, guides service selection, and completes bookings seamlessly. Integrated with React/TypeScript website.

AI Summary

CleanHomes AI Chatbot

Provides a Voiceflow-based voice/text chatbot that guides customers through cleaning services and stores booking data into Google Sheets.

Target Users

Intermediate web developers who want to embed a booking-capable chatbot into service-business websites using Voiceflow and React.

Problems Solved

Building a conversational UI that converts visitors to bookings and manages the data manually is time-consuming and complex.

Tags

Main Features

1
Automatic booking storage to Google Sheets

Receives customer data from Voiceflow via POST and appends it as a row to Google Sheets through a simple Apps Script Web API.

2
Voice and text enabled UI

Embedding the Voiceflow widget gives users both typed and spoken interaction without extra code.

3
Easy React website integration

Insert a small script tag and optional TypeScript typings to place the chatbot in any existing React site.

Usage Examples

Save booking data from Voiceflow to Google Sheets

/**
 * Google Apps Script that receives booking details from Voiceflow
 * and appends them to the first sheet. Deploy as a Web App
 * (Execute as: Me, Access: Anyone) and use the URL in Voiceflow's API tool.
 */
function doPost(e) {
  const data = JSON.parse(e.postData.contents); // Parse incoming JSON
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  sheet.appendRow([
    new Date(),                 // Timestamp
    data.first_name,
    data.last_name,
    data.phone_number,
    data.address,
    data.selected_service,
    data.preferred_datetime,
    'Pending'
  ]);
  return ContentService
    .createTextOutput(JSON.stringify({status: 'success'}))
    .setMimeType(ContentService.MimeType.JSON);
}

Deploy this script as a Web App, paste the URL into Voiceflow's API block, and every confirmed booking will be stored as a new row in your Google Sheet.