Skip to content

Commit a2e1886

Browse files
committed
Move chatbot settings to dedicated sidebar section with submenu
- Add Chatbot submenu: Overview, Settings, Keywords, Flows, AI Contexts - Create ChatbotSettingsView with tabs for Chatbot, Business Hours, and AI - Add AllowAutomatedOutsideHours setting for 24/7 automated responses - Remove chatbot/AI tabs from general Settings (now only General/Notifications) - Update docs with new navigation structure and business hours documentation
1 parent 8afa94f commit a2e1886

File tree

9 files changed

+727
-535
lines changed

9 files changed

+727
-535
lines changed

docs/src/content/docs/features/chatbot.mdx

Lines changed: 85 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,22 @@ import { Card, CardGrid, Steps, Aside } from '@astrojs/starlight/components';
1111

1212
Whatomate's chatbot automation allows you to create intelligent, automated responses for your WhatsApp messages. From simple keyword-based replies to complex AI-powered conversations, you have full control over how your business responds to customers.
1313

14+
## Navigation
15+
16+
The Chatbot section in the sidebar provides access to all chatbot features:
17+
18+
- **Overview** - Dashboard with statistics and quick access to settings
19+
- **Settings** - Configure chatbot behavior, business hours, and AI
20+
- **Keywords** - Create keyword-based auto-responses
21+
- **Flows** - Design multi-step conversation flows
22+
- **AI Contexts** - Configure AI knowledge bases
23+
1424
## Chatbot Settings
1525

16-
Configure global chatbot behavior including greeting and fallback messages.
26+
Configure global chatbot behavior including greeting messages, fallback messages, and session settings.
1727

1828
### Greeting Message
19-
The greeting message is automatically sent to new contacts when they first message your business. You can optionally add interactive buttons (up to 10) to guide users to common actions.
29+
The greeting message is automatically sent to new contacts when they first message your business (or after the session timeout expires). You can optionally add interactive buttons (up to 10) to guide users to common actions.
2030

2131
### Fallback Message
2232
When no keyword rules, AI contexts, or conversation flows match an incoming message, the fallback message is sent. Like the greeting message, you can add interactive buttons to help users navigate.
@@ -26,10 +36,45 @@ Both greeting and fallback messages support WhatsApp interactive buttons:
2636
- **1-3 buttons**: Displayed as quick reply buttons
2737
- **4-10 buttons**: Displayed as a list menu
2838

39+
### Session Timeout
40+
Configure how long a session remains active. When a user messages again after the timeout, they receive the greeting message as if starting a new conversation.
41+
2942
<Aside type="tip">
3043
Use buttons to guide users to common topics like "Track Order", "Speak to Agent", or "View Products".
3144
</Aside>
3245

46+
## Business Hours
47+
48+
Configure when your chatbot is active and how it behaves outside business hours.
49+
50+
### Setting Up Business Hours
51+
52+
<Steps>
53+
54+
1. **Enable Business Hours**
55+
56+
Toggle the business hours feature on in the Business Hours tab.
57+
58+
2. **Configure Daily Schedule**
59+
60+
For each day of the week:
61+
- Enable or disable the day
62+
- Set opening and closing times
63+
64+
3. **Out of Hours Message**
65+
66+
Configure a message to send when customers contact you outside business hours.
67+
68+
4. **Automated Responses Outside Hours**
69+
70+
Choose whether to allow flows, keywords, and AI responses to work 24/7 (enabled by default) or restrict them to business hours only.
71+
72+
</Steps>
73+
74+
<Aside type="tip">
75+
Even with business hours enabled, you can allow automated flows and keyword responses to work around the clock. This is useful for handling common inquiries while still informing customers of your operating hours.
76+
</Aside>
77+
3378
## Keyword Rules
3479

3580
![Keyword Rules](/whatomate/images/03-keyword-rules.png)
@@ -68,21 +113,31 @@ Create automated responses triggered by specific keywords or phrases.
68113

69114
</Steps>
70115

71-
## AI Contexts
116+
## AI Settings
72117

73-
![AI Contexts](/whatomate/images/05-ai-contexts.png)
118+
Configure AI-powered responses to handle queries that don't match keywords or flows.
74119

75-
Enhance your chatbot with AI-powered responses using contexts that provide relevant information to the AI.
120+
### Enabling AI Responses
76121

77-
### Creating an AI Context
122+
<Steps>
78123

79-
![AI Context Editor](/whatomate/images/06-ai-context-editor.png)
124+
1. **Choose an AI Provider**
80125

81-
AI Contexts allow you to:
82-
- Define static knowledge bases
83-
- Connect to external APIs for dynamic data
84-
- Set trigger keywords for context activation
85-
- Configure priority for multiple contexts
126+
Select from OpenAI, Anthropic, or Google AI.
127+
128+
2. **Select a Model**
129+
130+
Choose the model that best fits your needs and budget.
131+
132+
3. **Configure API Key**
133+
134+
Enter your API key from the provider (stored securely and encrypted).
135+
136+
4. **Set System Prompt**
137+
138+
Define how the AI should behave and what context it should use for responses.
139+
140+
</Steps>
86141

87142
### Supported AI Providers
88143

@@ -98,6 +153,22 @@ AI Contexts allow you to:
98153
</Card>
99154
</CardGrid>
100155

156+
## AI Contexts
157+
158+
![AI Contexts](/whatomate/images/05-ai-contexts.png)
159+
160+
Enhance your chatbot with AI-powered responses using contexts that provide relevant information to the AI.
161+
162+
### Creating an AI Context
163+
164+
![AI Context Editor](/whatomate/images/06-ai-context-editor.png)
165+
166+
AI Contexts allow you to:
167+
- Define static knowledge bases
168+
- Connect to external APIs for dynamic data
169+
- Set trigger keywords for context activation
170+
- Configure priority for multiple contexts
171+
101172
## Conversation Flows
102173

103174
![Conversation Flows](/whatomate/images/07-conversation-flows.png)
@@ -123,5 +194,7 @@ The visual flow builder allows you to:
123194
| **Variable Storage** | Store user inputs for later use in the conversation |
124195
| **Conditional Logic** | Branch based on user responses |
125196
| **API Integration** | Fetch data from external APIs during the flow |
197+
| **Webhook Headers** | Configure custom headers for API calls and completion webhooks |
126198
| **Agent Transfer** | Transfer to human agent when needed |
127199
| **WhatsApp Flows** | Integrate native WhatsApp Flows |
200+
| **Drag & Drop Ordering** | Reorder steps by dragging them to new positions |

frontend/src/components/layout/AppLayout.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ const allNavItems = [
5656
roles: ['admin', 'manager'],
5757
children: [
5858
{ name: 'Overview', path: '/chatbot', icon: Bot },
59+
{ name: 'Settings', path: '/chatbot/settings', icon: Settings },
5960
{ name: 'Keywords', path: '/chatbot/keywords', icon: Key },
6061
{ name: 'Flows', path: '/chatbot/flows', icon: Workflow },
6162
{ name: 'AI Contexts', path: '/chatbot/ai', icon: Sparkles }

frontend/src/router/index.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,12 @@ const router = createRouter({
7878
component: () => import('@/views/chatbot/ChatbotView.vue'),
7979
meta: { roles: ['admin', 'manager'] }
8080
},
81+
{
82+
path: 'chatbot/settings',
83+
name: 'chatbot-settings',
84+
component: () => import('@/views/chatbot/ChatbotSettingsView.vue'),
85+
meta: { roles: ['admin', 'manager'] }
86+
},
8187
{
8288
path: 'chatbot/keywords',
8389
name: 'chatbot-keywords',

0 commit comments

Comments
 (0)