Spaces:
Sleeping
Sleeping
Ilke Ileri
commited on
Commit
·
0385f33
1
Parent(s):
260002e
Fix: properly extract user messages from Vapi conversation history
Browse files
app.py
CHANGED
|
@@ -77,19 +77,25 @@ def chat_completions():
|
|
| 77 |
data = request.get_json()
|
| 78 |
messages = data.get("messages", [])
|
| 79 |
|
| 80 |
-
|
|
|
|
|
|
|
|
|
|
| 81 |
prompt = data.get("prompt", "")
|
| 82 |
else:
|
| 83 |
-
|
| 84 |
-
prompt =
|
| 85 |
|
| 86 |
if not prompt:
|
| 87 |
return jsonify({"error": "No prompt provided"}), 400
|
| 88 |
|
|
|
|
|
|
|
| 89 |
# Sales-only keyword filter
|
| 90 |
sales_keywords = ['sale', 'price', 'objection', 'close', 'deal', 'customer', 'prospect',
|
| 91 |
'lead', 'pitch', 'negotiate', 'client', 'business', 'product', 'service',
|
| 92 |
-
'wisemate', 'revenue', 'quota', 'conversion', 'crm', 'follow up'
|
|
|
|
| 93 |
|
| 94 |
# Check if question is sales-related
|
| 95 |
prompt_lower = prompt.lower()
|
|
|
|
| 77 |
data = request.get_json()
|
| 78 |
messages = data.get("messages", [])
|
| 79 |
|
| 80 |
+
# Extract user messages (ignore system messages from Vapi)
|
| 81 |
+
user_messages = [msg for msg in messages if msg.get("role") == "user"]
|
| 82 |
+
|
| 83 |
+
if not user_messages:
|
| 84 |
prompt = data.get("prompt", "")
|
| 85 |
else:
|
| 86 |
+
# Get the last user message
|
| 87 |
+
prompt = user_messages[-1].get("content", "")
|
| 88 |
|
| 89 |
if not prompt:
|
| 90 |
return jsonify({"error": "No prompt provided"}), 400
|
| 91 |
|
| 92 |
+
print(f"User prompt: {prompt}")
|
| 93 |
+
|
| 94 |
# Sales-only keyword filter
|
| 95 |
sales_keywords = ['sale', 'price', 'objection', 'close', 'deal', 'customer', 'prospect',
|
| 96 |
'lead', 'pitch', 'negotiate', 'client', 'business', 'product', 'service',
|
| 97 |
+
'wisemate', 'revenue', 'quota', 'conversion', 'crm', 'follow up', 'meeting',
|
| 98 |
+
'appointment', 'schedule', 'calendar', 'demo', 'call', 'consultation']
|
| 99 |
|
| 100 |
# Check if question is sales-related
|
| 101 |
prompt_lower = prompt.lower()
|