refactor: migrate workflow to v2 core and archive legacy modules
This commit is contained in:
45
legacy/websocket_customer_profile_flow.py
Normal file
45
legacy/websocket_customer_profile_flow.py
Normal file
@@ -0,0 +1,45 @@
|
||||
import re
|
||||
from datetime import datetime
|
||||
|
||||
|
||||
def extract_and_save_customer_info_flow(client, message: str, customer_id: str, db):
|
||||
"""从消息中提取客户信息并保存。"""
|
||||
if not message or not customer_id:
|
||||
return
|
||||
|
||||
email_pattern = r"[\w\.-]+@[\w\.-]+\.\w+"
|
||||
email_match = re.search(email_pattern, message)
|
||||
if email_match:
|
||||
db.update_email(customer_id, email_match.group())
|
||||
|
||||
phone_pattern = r"1[3-9]\d{9}"
|
||||
phone_match = re.search(phone_pattern, message)
|
||||
if phone_match:
|
||||
db.update_phone(customer_id, phone_match.group())
|
||||
|
||||
wechat_pattern = r"[Vv微信]+号[::]?\s*([\w-]+)"
|
||||
wechat_match = re.search(wechat_pattern, message)
|
||||
if wechat_match:
|
||||
db.update_wechat(customer_id, wechat_match.group(1))
|
||||
|
||||
budget_keywords = ["预算", "不超过", "最多", "便宜点", "便宜"]
|
||||
for keyword in budget_keywords:
|
||||
if keyword in message:
|
||||
db.add_personality_tag(customer_id, "关注价格")
|
||||
break
|
||||
|
||||
personality_keywords = {
|
||||
"爽快": "爽快",
|
||||
"干脆": "爽快",
|
||||
"纠结": "纠结",
|
||||
"墨迹": "纠结",
|
||||
"砍价": "砍价",
|
||||
"贵": "砍价",
|
||||
}
|
||||
for keyword, tag in personality_keywords.items():
|
||||
if keyword in message:
|
||||
db.add_personality_tag(customer_id, tag)
|
||||
|
||||
profile = db.get_customer(customer_id)
|
||||
profile.last_contact = datetime.now().isoformat()
|
||||
db.save_customer(profile)
|
||||
Reference in New Issue
Block a user