Assistant vocal - Système de réservation, de commande de repas et d'informations
Ceci est unSupport Chatbot, AI Chatbotworkflow d'automatisation du domainecontenant 10 nœuds.Utilise principalement des nœuds comme Wait, Webhook, Postgres, RespondToWebhook. Construire un assistant vocal pour restaurant avec VAPI et PostgreSQL pour les réservations et la prise de commande
- •Point de terminaison HTTP Webhook (généré automatiquement par n8n)
- •Informations de connexion à la base de données PostgreSQL
Nœuds utilisés (10)
Catégorie
{
"id": "FBguDlbJmbBGngKf",
"meta": {
"instanceId": "dd69efaf8212c74ad206700d104739d3329588a6f3f8381a46a481f34c9cc281",
"templateCredsSetupCompleted": true
},
"name": "Voice Assistant – Restaurant Booking, Orders & Info System",
"tags": [],
"nodes": [
{
"id": "ca6c5397-c47e-4fde-b08a-c996fc5b242b",
"name": "Déclencheur : Demande Vocale (VAPI)",
"type": "n8n-nodes-base.webhook",
"position": [
-20,
-380
],
"webhookId": "9f6b9125-0b75-41c2-87a9-1b6746c89e2e",
"parameters": {
"path": "9f6b9125-0b75-41c2-87a9-1b6746c89e2e",
"options": {},
"httpMethod": "POST",
"responseMode": "responseNode"
},
"typeVersion": 2
},
{
"id": "bbb963c4-1fc3-4dbc-84c5-ed818197fc8a",
"name": "Mettre à Jour les Données (Réservation de Table / Commandes)",
"type": "n8n-nodes-base.postgres",
"position": [
420,
-380
],
"parameters": {
"table": {
"__rl": true,
"mode": "name",
"value": "id"
},
"schema": {
"__rl": true,
"mode": "list",
"value": "public"
},
"columns": {
"value": {},
"schema": [],
"mappingMode": "autoMapInputData",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "upsert"
},
"credentials": {
"postgres": {
"id": "4Y4qEFGqF2krfRHZ",
"name": "Postgres-test"
}
},
"typeVersion": 2.6
},
{
"id": "97376776-cc21-434b-89b3-e373d4fcc0fe",
"name": "Réponse : Confirmation de Réservation/Commande (VAPI)",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
640,
-380
],
"parameters": {
"options": {},
"respondWith": "json",
"responseBody": "={\n \"results\": [\n {\n \"toolCallId\": \"{{ $('Trigger: Voice Request (VAPI)').item.json.body.message.toolCalls[0].id }}\",\n \"result\": \"{{ $json.status }}\"\n }\n ]\n}"
},
"typeVersion": 1.2
},
{
"id": "7cdb8cb3-94fd-4784-9b79-c9ae26fd7ae6",
"name": "Attendre une Réponse",
"type": "n8n-nodes-base.wait",
"position": [
200,
-380
],
"webhookId": "70ef62ba-b15e-48d6-b6ea-031f1ad02176",
"parameters": {},
"typeVersion": 1.1
},
{
"id": "f715f043-661b-4118-9763-642128d936ce",
"name": "Attendre une Réponse1",
"type": "n8n-nodes-base.wait",
"position": [
420,
-120
],
"webhookId": "5282819f-e54d-415e-a2a2-384df4b9f71d",
"parameters": {},
"typeVersion": 1.1
},
{
"id": "4a2f8aee-6e5a-44d5-873c-8b8c28aeff3b",
"name": "Déclencheur : Demande d'Information (VAPI)",
"type": "n8n-nodes-base.webhook",
"position": [
-20,
-120
],
"webhookId": "efe2c13f-1ba5-46e1-9996-57bdc6041973",
"parameters": {
"path": "efe2c13f-1ba5-46e1-9996-57bdc6041973",
"options": {},
"httpMethod": "POST",
"responseMode": "responseNode"
},
"typeVersion": 2
},
{
"id": "33a7e434-5228-4475-9b21-a5afb7c8656b",
"name": "Obtenir les Informations du Restaurant (Postgres)",
"type": "n8n-nodes-base.postgres",
"position": [
200,
-120
],
"parameters": {
"table": {
"__rl": true,
"mode": "name",
"value": "id"
},
"schema": {
"__rl": true,
"mode": "list",
"value": "public"
},
"options": {},
"operation": "select"
},
"credentials": {
"postgres": {
"id": "4Y4qEFGqF2krfRHZ",
"name": "Postgres-test"
}
},
"typeVersion": 2.6
},
{
"id": "09058c8d-e3f4-4caa-898a-123ef4ec3eba",
"name": "Réponse : Détails du Restaurant (VAPI)",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
640,
-120
],
"parameters": {
"options": {},
"respondWith": "json",
"responseBody": "={\n \"results\": [\n {\n \"toolCallId\": \"{{ $('Trigger: Info Request (VAPI)').item.json.body.message.toolCalls[0].id }}\",\n \"result\": \"{{ $json.available }}\"\n }\n ]\n}"
},
"typeVersion": 1.2
},
{
"id": "e5c43fa2-68c9-4303-bd74-6662cf95a05f",
"name": "Note Adhésive",
"type": "n8n-nodes-base.stickyNote",
"position": [
-480,
-620
],
"parameters": {
"color": 4,
"width": 440,
"height": 340,
"content": "## Table Booking & Order Handling\n\n- Use this workflow to let the voice assistant take table reservations and food orders from customers.\n\n- It saves booking and order details into the database and confirms them back to the customer instantly.\n\n\n"
},
"typeVersion": 1
},
{
"id": "4ec14fb4-e367-4b3f-bba4-50cc70c008d2",
"name": "Note Adhésive1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-500,
-220
],
"parameters": {
"width": 480,
"height": 340,
"content": "## Restaurant Info Provider\n\n- Use this workflow to let the voice assistant take table reservations and food orders from customers.\n\n- It saves booking and order details into the database and confirms them back to the customer instantly.\n\n\n"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"timezone": "Asia/Kolkata",
"callerPolicy": "workflowsFromSameOwner",
"executionOrder": "v1"
},
"versionId": "01e81376-112a-42ae-bb2f-5037a2d5da94",
"connections": {
"7cdb8cb3-94fd-4784-9b79-c9ae26fd7ae6": {
"main": [
[
{
"node": "bbb963c4-1fc3-4dbc-84c5-ed818197fc8a",
"type": "main",
"index": 0
}
]
]
},
"f715f043-661b-4118-9763-642128d936ce": {
"main": [
[
{
"node": "09058c8d-e3f4-4caa-898a-123ef4ec3eba",
"type": "main",
"index": 0
}
]
]
},
"4a2f8aee-6e5a-44d5-873c-8b8c28aeff3b": {
"main": [
[
{
"node": "33a7e434-5228-4475-9b21-a5afb7c8656b",
"type": "main",
"index": 0
}
]
]
},
"ca6c5397-c47e-4fde-b08a-c996fc5b242b": {
"main": [
[
{
"node": "7cdb8cb3-94fd-4784-9b79-c9ae26fd7ae6",
"type": "main",
"index": 0
}
]
]
},
"33a7e434-5228-4475-9b21-a5afb7c8656b": {
"main": [
[
{
"node": "f715f043-661b-4118-9763-642128d936ce",
"type": "main",
"index": 0
}
]
]
},
"bbb963c4-1fc3-4dbc-84c5-ed818197fc8a": {
"main": [
[
{
"node": "97376776-cc21-434b-89b3-e373d4fcc0fe",
"type": "main",
"index": 0
}
]
]
}
}
}Comment utiliser ce workflow ?
Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.
Dans quelles scénarios ce workflow est-il adapté ?
Intermédiaire - Chatbot de support, Chatbot IA
Est-ce payant ?
Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.
Workflows recommandés
Oneclick AI Squad
@oneclick-aiThe AI Squad Initiative is a pioneering effort to build, automate and scale AI-powered workflows using n8n.io. Our mission is to help individuals and businesses integrate AI agents seamlessly into their daily operations from automating tasks and enhancing productivity to creating innovative, intelligent solutions. We design modular, reusable AI workflow templates that empower creators, developers and teams to supercharge their automation with minimal effort and maximum impact.
Partager ce workflow