落地私聊空运询价与TMS报价回填,按后台模板出单。
查到价后把币种、单位、数量、单价、备注写入报价单,避免销售只看到光秃秃的金额。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -35,8 +35,13 @@ def parse_plain_xml(xml_text: str, *, default_agent_id: str = "") -> InboundMess
|
||||
create_time = int(create_time_raw) if create_time_raw.isdigit() else 0
|
||||
agent_id = _text(root, "AgentID") or _text(root, "AgentId") or default_agent_id
|
||||
content = _text(root, "Content") if msg_type == "text" else ""
|
||||
# 事件类可带 Event Key;骨架阶段仅记 raw,不进 Graph
|
||||
# 事件类可带 Event Key;模板卡点击要把按钮键收成可入询价流程的正文
|
||||
event = _text(root, "Event")
|
||||
event_key = _text(root, "EventKey")
|
||||
response_code = _text(root, "ResponseCode")
|
||||
task_id = _text(root, "TaskId") or _text(root, "TaskID")
|
||||
if not content and event.lower() in {"template_card_event", "click", "templatecardevent"}:
|
||||
content = event_key
|
||||
if not msg_id:
|
||||
# 无 MsgId(如部分事件)时用发送人+时间拼幂等键,避免空键撞车
|
||||
msg_id = f"{sender_id}:{create_time}:{msg_type}:{event}"
|
||||
@@ -58,7 +63,13 @@ def parse_plain_xml(xml_text: str, *, default_agent_id: str = "") -> InboundMess
|
||||
agent_id=agent_id,
|
||||
create_time=create_time,
|
||||
media={},
|
||||
raw={"event": event, "xml": xml_text},
|
||||
raw={
|
||||
"event": event,
|
||||
"event_key": event_key,
|
||||
"response_code": response_code,
|
||||
"task_id": task_id,
|
||||
"xml": xml_text,
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user