Update app.py
Browse files
app.py
CHANGED
|
@@ -282,16 +282,21 @@ def calculate_eta(destination: str) -> str:
|
|
| 282 |
|
| 283 |
def is_order_intent(message: str) -> bool:
|
| 284 |
order_keywords = ["order", "menu", "dish", "food", "deliver", "hungry"]
|
| 285 |
-
order_phrases = ["
|
| 286 |
-
|
| 287 |
message_lower = message.lower()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 288 |
for phrase in order_phrases:
|
| 289 |
if phrase in message_lower:
|
| 290 |
return True
|
| 291 |
for keyword in order_keywords:
|
| 292 |
-
if keyword
|
| 293 |
-
|
| 294 |
-
return True
|
| 295 |
return False
|
| 296 |
|
| 297 |
async def track_order(user_id: str, order_id: str) -> str:
|
|
|
|
| 282 |
|
| 283 |
def is_order_intent(message: str) -> bool:
|
| 284 |
order_keywords = ["order", "menu", "dish", "food", "deliver", "hungry"]
|
| 285 |
+
order_phrases = ["i want to order", "can i order", "i'd like to order", "get food", "place an order"]
|
|
|
|
| 286 |
message_lower = message.lower()
|
| 287 |
+
|
| 288 |
+
# Check if the message contains any dish from the menu
|
| 289 |
+
dish_candidates = [item["name"].lower() for item in menu_items]
|
| 290 |
+
for dish in dish_candidates:
|
| 291 |
+
if dish in message_lower:
|
| 292 |
+
return True
|
| 293 |
+
|
| 294 |
for phrase in order_phrases:
|
| 295 |
if phrase in message_lower:
|
| 296 |
return True
|
| 297 |
for keyword in order_keywords:
|
| 298 |
+
if re.search(rf"\b{keyword}\b", message_lower):
|
| 299 |
+
return True
|
|
|
|
| 300 |
return False
|
| 301 |
|
| 302 |
async def track_order(user_id: str, order_id: str) -> str:
|