@extends('layouts.public') @section('title', 'AI Receptionist Settings') @section('content')

Administration

AI receptionist & site features

Configure the built-in OpenAI website chat for each store and the public business settings it can use. Provider credentials remain in Integrations; they are never entered or displayed here.

@if (session('status'))

{{ session('status') }}

@endif @if ($errors->any())

Please correct the highlighted settings.

@endif
@csrf @method('PUT')

AI Chat

Uses the existing OpenAI integration. Enable one store at a time; visitors can select an enabled location in chat.

Do not promise immediate live-agent availability. A handoff creates a new follow-up lead for staff.

AI Voice

Disabled: no voice-provider adapter is installed in this application. Voice calls cannot be activated from these settings.

@csrf @method('PUT')

Business & public features

Only non-sensitive, allowlisted values are available to public pages and the receptionist.

This is a business setting only; it does not process a charge or authorize payment.

@foreach ([ 'booking_enabled' => ['Online booking', $site['bookingEnabled']], 'allow_in_store' => ['In-store drop-off', $site['allowInStore']], 'allow_mail_in' => ['Mail-in repair', $site['allowMailIn']], 'allow_home_visit' => ['Home visits', $site['allowHomeVisit']], 'shop_enabled' => ['Shop feature', $site['shopEnabled']], 'ems_enabled' => ['Employee management (EMS)', $site['emsEnabled']], ] as $field => [$label, $value]) @endforeach

Saved store chat configurations

@if ($configurations->isEmpty())

No store has a saved AI chat configuration yet.

@else
@foreach ($configurations as $configuration) @php $storeName = $stores->firstWhere('id', $configuration->store_id)?->name ?? ($configuration->store_id ? 'Store #'.$configuration->store_id : 'Legacy global setting'); @endphp @endforeach
StoreChatVoiceStatus
{{ $storeName }}{{ $configuration->is_chat ? 'Enabled' : 'Disabled' }}Unavailable{{ $configuration->is_active ? 'Active' : 'Inactive' }}
@endif
@endsection