ADK-Bot / knowledge /intents.py
Mr-Help's picture
Upload 2 files
16ce4cf verified
def normalize_text(text: str) -> str:
return (text or "").strip().lower()
def contains_any(text: str, keywords: list) -> bool:
return any(k in text for k in keywords)
def is_greeting(text: str) -> bool:
t = normalize_text(text)
return contains_any(t, [
"اهلا", "أهلا", "مرحبا", "هاي", "hello", "hi",
"السلام عليكم", "سلام عليكم", "مساء الخير", "صباح الخير",
"مساء الفل", "صباح الفل"
])
def is_complaint(text: str) -> bool:
t = normalize_text(text)
return contains_any(t, [
"شكوى", "شكاوي", "اشتكي", "مشكلة", "مشكلتي", "تذمر", "زعلان",
"سيء", "خدمة سيئة", "عايز اشتكي", "عايزة اشتكي", "complaint"
])
def is_support_request(text: str) -> bool:
t = normalize_text(text)
return contains_any(t, [
"خدمة العملاء", "تواصل", "اكلم", "أكلم", "support",
"عايز حد يرد", "عايزة حد يرد", "محتاج مساعدة", "محتاجه مساعدة"
])
def is_sales_request(text: str) -> bool:
t = normalize_text(text)
return contains_any(t, [
"اشتراك", "اشترك", "احجز", "عايز احجز", "عايزة احجز",
"سعر", "الاسعار", "الأسعار", "بكام", "مبيعات"
])
def is_new_student(text: str) -> bool:
t = normalize_text(text)
return contains_any(t, [
"طالب جديد", "جديد", "عميل جديد", "اول مرة", "أول مرة",
"لسه جديد", "مشترك جديد"
])
def is_current_student(text: str) -> bool:
t = normalize_text(text)
return contains_any(t, [
"طالب حالي", "حالي", "عميل حالي", "مشترك", "مشترك حالي",
"انا طالب عندكم", "أنا طالب عندكم", "انا مشترك"
])