落地私聊附件询价:发卡走 H5 收 Excel/PDF,认成口播再复用三线文字流程,避免附件卡在识别或退成纯文本。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-09-18 17:25:38 +08:00
co-authored by Cursor
parent 8219dce84b
commit 65ef75f1ef
19 changed files with 2420 additions and 8 deletions
+20
View File
@@ -320,6 +320,26 @@ class LandCopyTest(unittest.TestCase):
self.assertTrue(merged.startswith(copy.IMAGE_UNREADABLE))
self.assertIn(copy.ASK_TRANSPORT, merged)
def test_attachment_copy_and_card(self):
self.assertEqual(copy.ATTACH_RECOGNIZING, "正在识别附件")
self.assertIn("没看清", copy.ATTACH_UNREADABLE)
self.assertIn("暂时没认出来", copy.ATTACH_TECH_FAIL)
payload = copy.attachment_upload_card("https://ai.ytd-scm.com/inquiry-form/upload/tok")
card = payload["template_card"]
self.assertEqual(payload["msgtype"], "template_card")
# 现网上传卡是 text_notice。news_notice 必须带 card_image,企微会 42044 后退成纯文本。
self.assertEqual(card["card_type"], "text_notice")
self.assertNotIn("card_image", card)
self.assertEqual(card["source"]["desc"], "附件询价")
self.assertEqual(card["main_title"]["title"], "上传询价附件")
self.assertIn("Excel", card["main_title"]["desc"])
self.assertIn("图片请直接在企微聊天窗口发送", card["main_title"]["desc"])
self.assertIn("图片请直接在当前企微会话发送", card["sub_title_text"])
self.assertEqual(card["jump_list"][0]["title"], "上传询价附件")
self.assertIn("/upload/tok", card["card_action"]["url"])
self.assertEqual(card["card_action"]["type"], 1)
self.assertNotIn("userid", card["card_action"]["url"])
if __name__ == "__main__":
unittest.main()