smartpush 1.4.1__tar.gz → 1.4.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {smartpush-1.4.1 → smartpush-1.4.2}/PKG-INFO +1 -1
- {smartpush-1.4.1 → smartpush-1.4.2}/setup.py +1 -1
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/flow/MockFlow.py +8 -6
- smartpush-1.4.2/smartpush/test.py +207 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush.egg-info/PKG-INFO +1 -1
- smartpush-1.4.1/smartpush/test.py +0 -356
- {smartpush-1.4.1 → smartpush-1.4.2}/README.md +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/setup.cfg +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/__init__.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/export/__init__.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/export/basic/ExcelExportChecker.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/export/basic/GetOssUrl.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/export/basic/ReadExcel.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/export/basic/__init__.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/flow/__init__.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/get_jira_info.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/utils/DataTypeUtils.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/utils/EmailUtlis.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/utils/ListDictUtils.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/utils/StringUtils.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush/utils/__init__.py +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush.egg-info/SOURCES.txt +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush.egg-info/dependency_links.txt +0 -0
- {smartpush-1.4.1 → smartpush-1.4.2}/smartpush.egg-info/top_level.txt +0 -0
@@ -57,7 +57,7 @@ def get_current_flow(host_domain, cookies, flow_id, splits=None, **kwargs):
|
|
57
57
|
# 处理所有顶层节点
|
58
58
|
for node in result['resultData']['nodes']:
|
59
59
|
process_node(node=node)
|
60
|
-
return node_counts, result["resultData"]["version"]
|
60
|
+
return node_counts, result["resultData"]["version"], email_contents if get_email_content else None
|
61
61
|
|
62
62
|
|
63
63
|
def update_flow(host_domain, cookies, **kwargs):
|
@@ -120,10 +120,11 @@ def check_flow(host_domain, cookies, mock_domain="", **kwargs):
|
|
120
120
|
cookies:必填,sp登录态
|
121
121
|
flow_id:必填
|
122
122
|
pulsar:必填,模拟的触发数据
|
123
|
-
|
123
|
+
split_steps: 默认为all,需拆分步骤时填写,枚举:all、one、two;
|
124
124
|
one:获取旧节点数据和触发;
|
125
125
|
two:获取触发后数据和断言节点数据
|
126
126
|
|
127
|
+
old_flow_counts: 拆分两步时步骤二必填,内容为步骤一的返回值
|
127
128
|
limit:非必填,默认为1 - mock_pulsar函数用于控制模拟触发的次数
|
128
129
|
sleep_time: 非必填, 默认60s, 等待时间,用于触发后等待各节点计数后获取新数据
|
129
130
|
update_flow_params: 非必填,dict格式,需更新flow时传参,参数结构为sp的saveFlow接口内容
|
@@ -137,7 +138,7 @@ def check_flow(host_domain, cookies, mock_domain="", **kwargs):
|
|
137
138
|
# 步骤1 - 所需字段:split_steps、host_domain、cookies、flow_id、pulsar
|
138
139
|
if is_split_steps == "one" or is_split_steps == "all":
|
139
140
|
# 触发前提取flow数据,后续做对比
|
140
|
-
old_flow_counts, old_versions = get_current_flow(host_domain=host_domain, cookies=cookies,
|
141
|
+
old_flow_counts, old_versions, _ = get_current_flow(host_domain=host_domain, cookies=cookies,
|
141
142
|
flow_id=kwargs["flow_id"],
|
142
143
|
splits=kwargs.get("split_node", None))
|
143
144
|
kwargs["old_flow_counts"] = old_flow_counts
|
@@ -157,12 +158,13 @@ def check_flow(host_domain, cookies, mock_domain="", **kwargs):
|
|
157
158
|
if is_split_steps == "all":
|
158
159
|
time.sleep(kwargs.get("sleep_time", 60))
|
159
160
|
# 触发后提取flow数据,做断言
|
160
|
-
new_flow_counts, new_versions = get_current_flow(host_domain=host_domain, cookies=cookies,
|
161
|
+
new_flow_counts, new_versions, email_contents = get_current_flow(host_domain=host_domain, cookies=cookies,
|
161
162
|
flow_id=kwargs["flow_id"],
|
162
|
-
splits=kwargs.get("split_node", None)
|
163
|
+
splits=kwargs.get("split_node", None),
|
164
|
+
get_email_content=kwargs.get("get_email_content", False))
|
163
165
|
# 断言
|
164
166
|
result = ListDictUtils.compare_lists(temp1=kwargs.get("old_flow_counts"),
|
165
167
|
temp2=new_flow_counts, num=kwargs.get("num", 1),
|
166
168
|
check_key=kwargs.get("check_key", ["completedCount"]),
|
167
169
|
all_key=kwargs.get("all_key", False))
|
168
|
-
return [True, "断言成功"] if len(result) == 0 else [False, result]
|
170
|
+
return [True, "断言成功"] if len(result) == 0 else [False, result], email_contents
|
@@ -0,0 +1,207 @@
|
|
1
|
+
# -*- codeing = utf-8 -*-
|
2
|
+
# @Time :2025/2/20 00:27
|
3
|
+
# @Author :luzebin
|
4
|
+
import json
|
5
|
+
import re
|
6
|
+
import time
|
7
|
+
|
8
|
+
import pandas as pd
|
9
|
+
|
10
|
+
from smartpush.export.basic import ExcelExportChecker
|
11
|
+
from smartpush.export.basic.ReadExcel import read_excel_from_oss
|
12
|
+
from smartpush.export.basic.ReadExcel import read_excel_and_write_to_dict
|
13
|
+
from smartpush.export.basic.GetOssUrl import get_oss_address_with_retry
|
14
|
+
from smartpush.utils.DataTypeUtils import DataTypeUtils
|
15
|
+
from smartpush.flow import MockFlow
|
16
|
+
from smartpush.utils import EmailUtlis
|
17
|
+
|
18
|
+
if __name__ == '__main__':
|
19
|
+
# 导出流程
|
20
|
+
oss1 = "https://cdn.smartpushedm.com/material_ec2/2025-02-26/31c1a577af244c65ab9f9a984c64f3d9/ab%E5%BC%B9%E7%AA%97%E6%B5%8B%E8%AF%952.10%E5%88%9B%E5%BB%BA-%E6%9C%89%E5%85%A8%E9%83%A8%E6%95%B0%E6%8D%AE%E9%94%80%E5%94%AE%E9%A2%9D%E6%98%8E%E7%BB%86%E6%95%B0%E6%8D%AE.xlsx"
|
21
|
+
oss2 = "https://cdn.smartpushedm.com/material_ec2/2025-02-26/31c1a577af244c65ab9f9a984c64f3d9/ab%E5%BC%B9%E7%AA%97%E6%B5%8B%E8%AF%952.10%E5%88%9B%E5%BB%BA-%E6%9C%89%E5%85%A8%E9%83%A8%E6%95%B0%E6%8D%AE%E9%94%80%E5%94%AE%E9%A2%9D%E6%98%8E%E7%BB%86%E6%95%B0%E6%8D%AE.xlsx"
|
22
|
+
# # print(check_excel_all(oss1, oss1))
|
23
|
+
oss3 = "https://cdn.smartpushedm.com/material_ec2/2025-03-07/dca03e35cb074ac2a46935c85de9f510/导出全部客户.csv"
|
24
|
+
oss4 = "https://cdn.smartpushedm.com/material_ec2/2025-03-07/c5fa0cc24d05416e93579266910fbd3e/%E5%AF%BC%E5%87%BA%E5%85%A8%E9%83%A8%E5%AE%A2%E6%88%B7.csv"
|
25
|
+
expected_oss = "https://cdn.smartpushedm.com/material_ec2/2025-02-26/757df7e77ce544e193257c0da35a4983/%E3%80%90%E8%87%AA%E5%8A%A8%E5%8C%96%E5%AF%BC%E5%87%BA%E3%80%91%E8%90%A5%E9%94%80%E6%B4%BB%E5%8A%A8%E6%95%B0%E6%8D%AE%E6%A6%82%E8%A7%88.xlsx"
|
26
|
+
# actual_oss = "https://cdn.smartpushedm.com/material_ec2/2025-02-26/757df7e77ce544e193257c0da35a4983/%E3%80%90%E8%87%AA%E5%8A%A8%E5%8C%96%E5%AF%BC%E5%87%BA%E3%80%91%E8%90%A5%E9%94%80%E6%B4%BB%E5%8A%A8%E6%95%B0%E6%8D%AE%E6%A6%82%E8%A7%88.xlsx"
|
27
|
+
url = "https://cdn.smartpushedm.com/material_ec2_prod/2025-03-06/fe6f042f50884466979155c5ef825736/copy%20of%202025-01-16%20%E5%88%9B%E5%BB%BA%E7%9A%84%20A%2FB%20%E6%B5%8B%E8%AF%95%20copy%20of%202025-01-16%20app-%E6%99%AE%E9%80%9A%E6%A8%A1%E6%9D%BF%201%E6%95%B0%E6%8D%AE%E6%80%BB%E8%A7%88.xlsx"
|
28
|
+
|
29
|
+
# e_person_oss1 = "https://cdn.smartpushedm.com/material_ec2/2025-02-27/b48f34b3e88045d189631ec1f0f23d51/%E5%AF%BC%E5%87%BA%E5%85%A8%E9%83%A8%E5%AE%A2%E6%88%B7.csv"
|
30
|
+
# a_person_oss2 = "https://cdn.smartpushedm.com/material_ec2/2025-02-27/c50519d803c04e3b9b52d9f625fed413/%E5%AF%BC%E5%87%BA%E5%85%A8%E9%83%A8%E5%AE%A2%E6%88%B7.csv"
|
31
|
+
|
32
|
+
# # #actual_oss= get_oss_address_with_retry("23161","https://cdn.smartpushedm.com/material_ec2_prod/2025-02-20/dae941ec20964ca5b106407858676f89/%E7%BE%A4%E7%BB%84%E6%95%B0%E6%8D%AE%E6%A6%82%E8%A7%88.xlsx","",'{"page":1,"pageSize":10,"type":null,"status":null,"startTime":null,"endTime":null}')
|
33
|
+
# # res=read_excel_and_write_to_dict(read_excel_from_oss(actual_oss))
|
34
|
+
# # print(res)
|
35
|
+
# # print(read_excel_and_write_to_dict(read_excel_from_oss(oss1), type=".xlsx"))
|
36
|
+
# print(check_excel(check_type="all", actual_oss=actual_oss, expected_oss=expected_oss))
|
37
|
+
# print(check_excel_all(actual_oss=oss1, expected_oss=oss2,skiprows =1))
|
38
|
+
# print(check_excel_all(actual_oss=oss1, expected_oss=oss2,ignore_sort=True))
|
39
|
+
# print(check_excel_all(actual_oss=a_person_oss2, expected_oss=e_person_oss1, check_type="including"))
|
40
|
+
# print(ExcelExportChecker.check_excel_all(actual_oss=oss3, expected_oss=oss4, check_type="including"))
|
41
|
+
# read_excel_csv_data(type=)
|
42
|
+
# print(DataTypeUtils().check_email_format())
|
43
|
+
# errors = ExcelExportChecker.check_field_format(actual_oss=oss1, fileds={0: {5: "time"}}, skiprows=1)
|
44
|
+
# ExcelExportChecker.check_excel_name(actual_oss=oss1, expected_oss=url)
|
45
|
+
|
46
|
+
# flow触发流程 ------------------------------------------------------------------------------------------------------------------------
|
47
|
+
_url = "http://sp-go-flow-test.inshopline.com"
|
48
|
+
host_domain = "https://test.smartpushedm.com/api-em-ec2"
|
49
|
+
cookies = "_ga=GA1.1.88071637.1717860341; _ga_NE61JB8ZM6=GS1.1.1718954972.32.1.1718954972.0.0.0; _ga_Z8N3C69PPP=GS1.1.1723104149.2.0.1723104149.0.0.0; _ga_D2KXR23WN3=GS1.1.1735096783.3.1.1735096812.0.0.0; osudb_lang=; osudb_oar=#01#SID0000127BMP3Os96/37rp7Et7tYy+s7TyyN/AaKNkLtst/Ks9rPF/Co/OjyNJYL+Y4lPf+p9rzrSk9uJnxx4BFXI04BoU/fxhnvaMH2ac1DoeYo7Ll0eizFs+CGNscHjBENqjUacTEcDHSprmyG4TrNfYJkB; osudb_appid=SMARTPUSH; osudb_subappid=1; osudb_uid=4213785247; a_lang=zh-hant-tw; ecom_http_token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NDkyNjM1NzgsImp0aSI6IjIyYmQwNmE3LTVkYTItNDA4OS05NGViLThlNThlNzdhM2MyOSIsInVzZXJJbmZvIjp7ImlkIjowLCJ1c2VySWQiOiI0MjEzNzg1MjQ3IiwidXNlcm5hbWUiOiIiLCJlbWFpbCI6ImZlbGl4LnNoYW9Ac2hvcGxpbmVhcHAuY29tIiwidXNlclJvbGUiOiJvd25lciIsInBsYXRmb3JtVHlwZSI6Nywic3ViUGxhdGZvcm0iOjEsInBob25lIjoiIiwibGFuZ3VhZ2UiOiJ6aC1oYW50LXR3IiwiYXV0aFR5cGUiOiIiLCJhdHRyaWJ1dGVzIjp7ImNvdW50cnlDb2RlIjoiQ04iLCJjdXJyZW5jeSI6IkpQWSIsImN1cnJlbmN5U3ltYm9sIjoiSlDCpSIsImRvbWFpbiI6InNtYXJ0cHVzaDQubXlzaG9wbGluZXN0Zy5jb20iLCJsYW5ndWFnZSI6ImVuIiwibWVyY2hhbnRFbWFpbCI6ImZlbGl4LnNoYW9Ac2hvcGxpbmUuY29tIiwibWVyY2hhbnROYW1lIjoiU21hcnRQdXNoNF9lYzJf6Ieq5Yqo5YyW5bqX6ZO6IiwicGhvbmUiOiIiLCJzY29wZUNoYW5nZWQiOnRydWUsInN0YWZmTGFuZ3VhZ2UiOiJ6aC1oYW5zLWNuIiwic3RhdHVzIjowLCJ0aW1lem9uZSI6IkFzaWEvTWFjYW8ifSwic3RvcmVJZCI6IjE2NDQzOTU5MjA0NDQiLCJoYW5kbGUiOiJzbWFydHB1c2g0IiwiZW52IjoiQ04iLCJzdGUiOiIiLCJ2ZXJpZnkiOiIifSwibG9naW5UaW1lIjoxNzQ2NjcxNTc4OTU4LCJzY29wZSI6WyJlbWFpbC1tYXJrZXQiLCJjb29raWUiLCJzbC1lY29tLWVtYWlsLW1hcmtldC1uZXctdGVzdCIsImVtYWlsLW1hcmtldC1uZXctZGV2LWZzIiwiYXBpLXVjLWVjMiIsImFwaS1zdS1lYzIiLCJhcGktZW0tZWMyIiwiZmxvdy1wbHVnaW4iLCJhcGktc3AtbWFya2V0LWVjMiJdLCJjbGllbnRfaWQiOiJlbWFpbC1tYXJrZXQifQ.Ym_w8ftfdP3zxVXpK_ZlPbWRI-S3ie46_zMCVJZln_Y; JSESSIONID=00A6B90F793A7392A2398A80CA278359"
|
50
|
+
|
51
|
+
params = {
|
52
|
+
"abandonedOrderId": "c2c4a695a36373f56899b370d0f1b6f2",
|
53
|
+
"areaCode": "",
|
54
|
+
"context": {
|
55
|
+
"order": {
|
56
|
+
"buyerSubscribeEmail": True,
|
57
|
+
"checkoutId": "c2c4a695a36373f56899b370d0f1b6f2",
|
58
|
+
"discountCodes": [],
|
59
|
+
"orderAmountSet": {
|
60
|
+
"amount": 3,
|
61
|
+
"currency": "JPY"
|
62
|
+
},
|
63
|
+
"orderDetails": [
|
64
|
+
{
|
65
|
+
"productId": "16060724900402692190790343",
|
66
|
+
"title": "测试2.0-商品同步AutoSync-2023-08-17 20:52:00",
|
67
|
+
"titleTranslations": []
|
68
|
+
}
|
69
|
+
],
|
70
|
+
"receiverCountryCode": "HK"
|
71
|
+
},
|
72
|
+
"user": {
|
73
|
+
"addresses": [],
|
74
|
+
"areaCode": "",
|
75
|
+
"email": "testsmart200+10@gmail.com",
|
76
|
+
"firstName": "testsmart200+10",
|
77
|
+
"gender": "others",
|
78
|
+
"id": "1911625831177650177",
|
79
|
+
"lastName": "",
|
80
|
+
"phone": "",
|
81
|
+
"tags": [],
|
82
|
+
"uid": "4603296300",
|
83
|
+
"userName": "testsmart200+10"
|
84
|
+
}
|
85
|
+
},
|
86
|
+
"controlObjectId": "c2c4a695a36373f56899b370d0f1b6f2",
|
87
|
+
"controlObjectType": 4,
|
88
|
+
"email": "testsmart200+10@gmail.com",
|
89
|
+
"handle": "smartpush4",
|
90
|
+
"language": "en",
|
91
|
+
"messageId": "1911625832100397058",
|
92
|
+
"phone": "",
|
93
|
+
"platform": 4,
|
94
|
+
"storeId": "1644395920444",
|
95
|
+
"timezone": "Asia/Macao",
|
96
|
+
"triggerId": "c1001",
|
97
|
+
"uid": "4603296300",
|
98
|
+
"userId": "1911625831177650177"
|
99
|
+
}
|
100
|
+
update_flow_params = {"id": "FLOW6941975456855532553", "version": "10", "triggerId": "c1001",
|
101
|
+
"templateId": "TEMP6911595896571704333", "showData": False, "flowChange": True, "nodes": [
|
102
|
+
{"type": "trigger", "data": {
|
103
|
+
"trigger": {"trigger": "c1001", "group": "", "suggestionGroupId": "", "triggerStock": False,
|
104
|
+
"completedCount": 4, "skippedCount": 0}, "completedCount": 4, "skippedCount": 0},
|
105
|
+
"id": "92d115e7-8a86-439a-8cfb-1aa3ef075edf"}, {"type": "delay", "data": {
|
106
|
+
"delay": {"type": "relative", "relativeTime": 0, "relativeUnit": "HOURS", "designatedTime": ""},
|
107
|
+
"completedCount": 4}, "id": "e0fc258b-fcfc-421c-b215-8e41638072ca"}, {"type": "sendLetter", "data": {
|
108
|
+
"sendLetter": {"id": 367462, "activityTemplateId": 367462, "activityName": "flowActivity_EwEi3d",
|
109
|
+
"activityImage": "http://cdn.smartpushedm.com/frontend/smart-push/staging/1644395920444/1744102089665/1744102093754_f99e3703.jpeg",
|
110
|
+
"emailName": "A Message from Your Cart", "merchantId": "1644395920444",
|
111
|
+
"merchantName": "SmartPush4_ec2_自动化店铺",
|
112
|
+
"brandName": "SmartPush4_ec2_自动化店铺 AutoTestName", "currency": "JP¥",
|
113
|
+
"activityType": "NORMAL", "activityStatus": "ACTIVE", "createTime": 1745201732286,
|
114
|
+
"updateTime": 1745201825819, "createDate": "2025-04-21 10:15:32",
|
115
|
+
"updateDate": "2025-04-21 10:17:05", "pickContactPacks": [], "excludeContactPacks": [],
|
116
|
+
"customerGroupIds": [], "excludeCustomerGroupIds": [], "pickContactInfos": [],
|
117
|
+
"excludeContactInfos": [], "customerGroupInfos": [], "excludeCustomerGroupInfos": [],
|
118
|
+
"sender": "SmartPush4_ec2_自动化店铺", "senderDomain": "DEFAULT_DOMAIN", "domainType": 3,
|
119
|
+
"receiveAddress": "", "originTemplate": 33,
|
120
|
+
"currentJsonSchema": "{\"id\":\"a4a9fba2a\",\"type\":\"Stage\",\"props\":{\"backgroundColor\":\"#EAEDF1\",\"width\":\"600px\",\"fullWidth\":\"normal-width\"},\"children\":[{\"id\":\"84ba788da\",\"type\":\"Header\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"98d909a48\",\"type\":\"Column\",\"props\":{},\"children\":[]}]},{\"id\":\"84ba7bbda\",\"type\":\"Section\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"8cab9aa48\",\"type\":\"Column\",\"props\":{},\"children\":[]}]},{\"id\":\"b8bbabad9\",\"type\":\"Footer\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"b3bcabad7\",\"type\":\"Column\",\"props\":{},\"children\":[{\"id\":\"b39b6a94a\",\"type\":\"Subscribe\",\"props\":{\"content\":\"<p style=\\\"text-align:center;\\\"><span style=\\\"font-size:12px\\\"><span style=\\\"font-family:Arial, Helvetica, sans-serif\\\">在此處輸入聯繫地址,可以讓你的顧客更加信任這封郵件</span></span></p>\"},\"children\":[]}]}]}],\"extend\":{\"version\":\"1.0.0\",\"updateTime\":\"2025-03-18T09:57:40.953Z\"}}",
|
121
|
+
"currentHtml": "<!doctype html>\n<html xmlns=\"http://www.w3.org/1999/xhtml\" xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\">\n <head>\n <title></title>\n <!--[if !mso]><!-->\n <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n <!--<![endif]-->\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n <style type=\"text/css\">\n #outlook a { padding:0; }\n body { margin:0;padding:0;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%; }\n table, td { border-collapse:collapse;mso-table-lspace:0pt;mso-table-rspace:0pt; }\n img { border:0;line-height:100%; outline:none;text-decoration:none;-ms-interpolation-mode:bicubic; }\n pre{margin: 0;}p{ display: block;margin:0;}\n </style>\n <!--[if mso]>\n <noscript>\n <xml>\n <o:OfficeDocumentSettings>\n <o:AllowPNG/>\n <o:PixelsPerInch>96</o:PixelsPerInch>\n </o:OfficeDocumentSettings>\n </xml>\n </noscript>\n <![endif]-->\n <!--[if lte mso 11]>\n <style type=\"text/css\">\n .mj-outlook-group-fix { width:100% !important; }\n </style>\n <![endif]-->\n \n <!--[if !mso]><!-->\n <link href=\"https://fonts.googleapis.com/css?family=Ubuntu:300,400,500,700\" rel=\"stylesheet\" type=\"text/css\">\n <style type=\"text/css\">\n @import url(https://fonts.googleapis.com/css?family=Ubuntu:300,400,500,700);\n </style>\n <!--<![endif]-->\n\n \n \n <style type=\"text/css\">\n @media only screen and (min-width:480px) {\n .mj-column-per-100 { width:100% !important; max-width: 100%; }\n }\n </style>\n <style media=\"screen and (min-width:480px)\">\n .moz-text-html .mj-column-per-100 { width:100% !important; max-width: 100%; }\n </style>\n \n \n <style type=\"text/css\">\n \n \n </style>\n <style type=\"text/css\">\n @import url(https://fonts.googleapis.com/css?family=Arvo:400|Bodoni+Moda:400|DM+Sans:400|Poppins:400|Hammersmith+One:400|Libre+Baskerville:400|Lexend+Giga:400|Ubuntu:400|Montserrat:400|Nunito:400|News+Cycle:400|Roboto:400|Oswald:400);@import url(https://fonts.googleapis.com/css?family=Asar:400|Bruno+Ace:400|Cantata+One:400|League+Gothic:400|Long+Cang:400|Lovers+Quarrel:400|Nanum+Gothic+Coding:400|Nanum+Myeongjo:400|Noto+Sans+Kaithi:400|Noto+Sans+Kannada:400|Noto+Sans+Math:400|Noto+Sans+Syloti+Nagri:400|Noto+Serif+JP:400|Playwrite+AT+Guides:400|Saira+Extra+Condensed:400|Tsukimi+Rounded:400|Waiting+for+the+Sunrise:400);h1,\nh2,\nh3,\nh4,\nh5 {\n font-weight: bold;\n margin-bottom: 0;\n}\np {\n margin-top: 0;\n margin-bottom: 0;\n min-height: 1em;\n}\n\nul {\n margin-bottom: 0;\n}\n\nth {\n font-weight: bold;\n}\n\na {\n text-decoration: none;\n}\n\na::-webkit-scrollbar {\n -webkit-appearance: none;\n}\n\na::-webkit-scrollbar:horizontal {\n max-height: 8px;\n}\n\na::-webkit-scrollbar-thumb {\n border-radius: 8px;\n background-color: rgba(0, 0, 0, 0.5);\n}\n\nul,\nol,\ndl {\n margin-top: 16px !important;\n}\n\npre {\n word-break: break-word;\n padding: 0;\n margin: 0;\n white-space: inherit !important;\n}\n\npre p {\n word-break: break-word;\n padding: 0;\n margin: 0;\n color: #000000;\n}\n\nspan[style*='color'] a {\n color: inherit;\n}\n\n.mj-column-no-meida-100{\n width: 100% !important;\n}\n.mj-column-no-meida-50{\n width: 50% !important;\n}\n.mj-column-no-meida-33-333333333333336{\n width: 33.333333333333336% !important;\n}\n.mj-column-no-meida-25{\n width: 25% !important;\n}\n\n.white-nowrap {\n white-space: nowrap !important;\n}\n\n/* 间距 */\n.sp-m-p-0 {\n margin: 0;\n padding: 0;\n}\n\n.nps-content-span a {\n color: inherit !important;\n}.sp-font-12 {\n font-size: 12px !important;\n}\n\n.sp-font-14 {\n font-size: 14px !important;\n}\n\n.sp-font-16 {\n font-size: 16px !important;\n}\n\n.sp-font-18 {\n font-size: 18px !important;\n}\n\n.sp-font-20 {\n font-size: 20px !important;\n}\n\n.sp-font-22 {\n font-size: 22px !important;\n}\n\n.sp-font-24 {\n font-size: 24px !important;\n}\n\n.sp-font-26 {\n font-size: 26px !important;\n}\n\n.sp-font-28 {\n font-size: 28px !important;\n}\n\n.sp-font-30 {\n font-size: 30px !important;\n}\n\n.sp-font-32 {\n font-size: 32px !important;\n}\n\n.sp-font-34 {\n font-size: 34px !important;\n}\n\n.sp-font-36 {\n font-size: 36px !important;\n}\n\n.sp-font-38 {\n font-size: 38px !important;\n}\n\n.sp-font-40 {\n font-size: 40px !important;\n}\n\n.sp-font-42 {\n font-size: 42px !important;\n}\n\n.sp-font-44 {\n font-size: 44px !important;\n}\n\n.sp-font-46 {\n font-size: 46px !important;\n}\n\n.sp-font-48 {\n font-size: 48px !important;\n}\n\n.sp-font-50 {\n font-size: 50px !important;\n}\n\n.sp-font-52 {\n font-size: 52px !important;\n}\n\n.sp-font-54 {\n font-size: 54px !important;\n}\n\n.sp-font-56 {\n font-size: 56px !important;\n}\n\n.sp-font-58 {\n font-size: 58px !important;\n}\n\n.sp-font-60 {\n font-size: 60px !important;\n}\n\n.sp-image-icon {\n width: 50px;\n}\n\n@media only screen and (max-width:600px) {\n\n .sp-font-12 {\n font-size: 12px !important;\n }\n\n .sp-font-14 {\n font-size: 12px !important;\n }\n\n .sp-font-16 {\n font-size: 12px !important;\n }\n\n .sp-font-18 {\n font-size: 13px !important;\n }\n\n .sp-font-20 {\n font-size: 15px !important;\n }\n\n .sp-font-22 {\n font-size: 16px !important;\n }\n\n .sp-font-24 {\n font-size: 18px !important;\n }\n\n .sp-font-26 {\n font-size: 19px !important;\n }\n\n .sp-font-28 {\n font-size: 21px !important;\n }\n\n .sp-font-30 {\n font-size: 22px !important;\n }\n\n .sp-font-32 {\n font-size: 24px !important;\n }\n\n .sp-font-34 {\n font-size: 25px !important;\n }\n\n .sp-font-36 {\n font-size: 27px !important;\n }\n\n .sp-font-38 {\n font-size: 28px !important;\n }\n\n .sp-font-40 {\n font-size: 30px !important;\n }\n\n .sp-font-42 {\n font-size: 31px !important;\n }\n\n .sp-font-44 {\n font-size: 32px !important;\n }\n\n .sp-font-46 {\n font-size: 33px !important;\n }\n\n .sp-font-48 {\n font-size: 34px !important;\n }\n\n .sp-font-50 {\n font-size: 35px !important;\n }\n\n .sp-font-52 {\n font-size: 36px !important;\n }\n\n .sp-font-54 {\n font-size: 37px !important;\n }\n\n .sp-font-56 {\n font-size: 38px !important;\n }\n\n .sp-font-58 {\n font-size: 39px !important;\n }\n\n .sp-font-60 {\n font-size: 40px !important;\n }\n\n .sp-image-icon {\n width: 28px !important;\n }\n\n}@media only screen and (max-width:480px) {\n\n .sp-img-h-1-TwoVertical-11,\n .sp-img-h-1-TwoHorizontalColumns-11 {\n height: 170px !important;\n }\n\n .sp-img-h-1-TwoVertical-23,\n .sp-img-h-1-TwoHorizontalColumns-23 {\n height: 243px !important;\n }\n\n .sp-img-h-1-TwoVertical-34,\n .sp-img-h-1-TwoHorizontalColumns-34 {\n height: 227px !important;\n }\n\n .sp-img-h-1-TwoVertical-43,\n .sp-img-h-1-TwoHorizontalColumns-43 {\n height: 127px !important;\n }\n\n .sp-img-h-1-ThreeHorizontalColumns-11 {\n height: 109px !important;\n }\n\n .sp-img-h-1-ThreeHorizontalColumns-23 {\n height: 163px !important;\n }\n\n .sp-img-h-1-ThreeHorizontalColumns-34 {\n height: 145px !important;\n }\n\n .sp-img-h-1-ThreeHorizontalColumns-43 {\n height: 81px !important;\n }\n\n .sp-img-h-2-TwoVertical-11 {\n height: 164px !important;\n }\n\n .sp-img-h-2-TwoVertical-23 {\n height: 246px !important;\n }\n\n .sp-img-h-2-TwoVertical-34 {\n height: 218px !important;\n }\n\n .sp-img-h-2-TwoVertical-43 {\n height: 123px !important;\n }\n\n .sp-img-h-2-ThreeHorizontalColumns-11,\n .sp-img-h-2-TwoHorizontalColumns-11 {\n height: 76px !important;\n }\n\n .sp-img-h-2-ThreeHorizontalColumns-23,\n .sp-img-h-2-TwoHorizontalColumns-23 {\n height: 113px !important;\n }\n\n .sp-img-h-2-ThreeHorizontalColumns-34,\n .sp-img-h-2-TwoHorizontalColumns-34 {\n height: 101px !important;\n }\n\n .sp-img-h-2-ThreeHorizontalColumns-43,\n .sp-img-h-2-TwoHorizontalColumns-43 {\n height: 57px !important;\n }\n}@media only screen and (min-width: 320px) and (max-width: 599px) {\n .mj-w-50 {\n width: 50% !important;\n max-width: 50%;\n }\n}\n\n@media only screen and (max-width: 480px) {\n .shop-white-mobile {\n width: 100% !important;\n }\n .mj-td-force-100{\n display: inline-block;\n width: 100% !important;\n }\n\n .mj-ImageText-screen {\n width: 100% !important;\n }\n .mj-ImageText-img {\n margin: 0 auto;\n }\n\n .mj-ImageText-margin {\n margin: 0 !important;\n }\n\n .mj-ImageText-margin-zero {\n margin: 0 5px 0 0 !important;\n }\n\n .mj-ImageText-margin-one {\n margin: 0 0 0 5px !important;\n }\n .mj-column-per-50-force {\n width: 50% !important;\n max-width: 50%;\n }\n}\n\n@media only screen and (min-width: 480px) {\n .mj-imagetext-force-100{\n display: inline-block;\n width: 100% !important;\n }\n .mj-column-per-100 {\n width: 100% !important;\n max-width: 100%;\n }\n\n .mj-column-per-50 {\n width: 50% !important;\n max-width: 50%;\n }\n\n .mj-column-per-33-333333333333336 {\n width: 33.333333333333336% !important;\n max-width: 33.333333333333336%;\n }\n\n .mj-column-per-25 {\n width: 25% !important;\n max-width: 25%;\n }\n\n\n .mg-column-per-46-5 {\n width: 46.5% !important;\n max-width: 46.5%;\n }\n\n .mj-AbandonProduct-cloum-align-center {\n align-items: flex-start !important;\n }\n\n\n .mj-OrderInformation-padding-top-220 {\n padding-top: 20px !important;\n }\n\n .mj-OrderInformation-float-left {\n float: left !important;\n }\n}@media only screen and (max-width: 480px) {\n .mt-1{\n margin-top: 1px;\n }\n .mt-2{\n margin-top: 2px;\n }\n .mt-3{\n margin-top: 3px;\n }\n .mt-4{\n margin-top: 4px;\n }\n .mt-5{\n margin-top: 5px;\n }\n .mt-6{\n margin-top: 7px;\n }\n .mt-8{\n margin-top: 9px;\n }\n .mt-10{\n margin-top: 10px;\n }\n\n}\n </style>\n \n </head>\n <body style=\"word-spacing:normal;background-color:#EAEDF1;\">\n \n \n <div\n style=\"background-color:#EAEDF1;\"\n >\n <table className=\"pv-stage\">\n <tbody>\n <tr>\n <td style=\"display:table-column;\"><div style=\"width:1px; height:1px;\"><img style=\"width:1px; height:1px;\" width=\"1\" src=\"${SP_OPEN_EMAIL_URL}\" />\n </div></td>\n </tr>\n </tbody>\n </table><div mso-hide: all; position: fixed; height: 0; max-height: 0; overflow: hidden; font-size: 0; style=\"display:none;\">${emailSubtitle}</div>\n \n <!--[if mso | IE]><table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"\" role=\"presentation\" style=\"width:600px;\" width=\"600\" bgcolor=\"#ffffff\" ><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]-->\n \n \n <div style=\"background:#ffffff;background-color:#ffffff;margin:0px auto;max-width:600px;\">\n \n <table\n align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"background:#ffffff;background-color:#ffffff;width:100%;\"\n >\n <tbody>\n <tr>\n <td\n style=\"border-bottom:1px none #ffffff;border-left:1px none #ffffff;border-right:1px none #ffffff;border-top:1px none #ffffff;direction:ltr;font-size:0px;padding:20px 0;padding-bottom:0px;padding-left:0px;padding-right:0px;padding-top:0px;text-align:center;\"\n >\n <!--[if mso | IE]><table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td class=\"\" style=\"vertical-align:top;width:598px;\" ><![endif]-->\n \n <div\n class=\"mj-column-per-100 mj-outlook-group-fix\" style=\"font-size:0px;text-align:left;direction:ltr;display:inline-block;vertical-align:top;width:100%;\"\n >\n \n <table\n border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"vertical-align:top;\" width=\"100%\"\n >\n <tbody>\n \n <tr>\n <td\n align=\"left\" style=\"font-size:0px;padding:0;word-break:break-word;\"\n >\n \n <table\n cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" border=\"0\" style=\"color:#000000;font-family:Ubuntu, Helvetica, Arial, sans-serif;font-size:13px;line-height:22px;table-layout:fixed;width:100%;border:none;\"\n >\n <table style=\"margin:0;padding:0;width:100%;table-layout:fixed\" class=\"\" sp-id=\"subscribe-area-b39b6a94a\"><tbody><tr style=\"width:100%\"><td style=\"margin:0;padding:0;width:100%;text-align:center;padding-top:20px;padding-left:20px;padding-right:20px;padding-bottom:20px;background-color:transparent;font-family:arial,helvetica,sans-serif,Arial, Helvetica, sans-serif\" class=\"Subscribe\"><table cellPadding=\"0\" cellSpacing=\"0\" style=\"width:100%\"><tbody><tr><td align=\"center\" class=\"sp-font-16\" valign=\"middle\" style=\"padding-left:10px;padding-right:10px;padding-top:10px;text-align:left;font-size:16px\"><div><p style=\"text-align:center;\"><span style=\"font-size:12px\"><span style=\"font-family:Arial, Helvetica, sans-serif\">在此處輸入聯繫地址,可以讓你的顧客更加信任這封郵件</span></span></p></div></td></tr><tr><td align=\"center\" valign=\"middle\" height=\"20\" style=\"font-size:12px;font-family:arial,helvetica,sans-serif,Arial, Helvetica, sans-serif;padding-left:10px;padding-right:10px;padding-bottom:20px\"></td></tr><div><tr style=\"${hide_logo}\" sp-id=\"subscribe-dom-b39b6a94a\">\n <td class='sp-font-16' style=\"padding-left:20px;padding-right:20px;padding-top:20px;text-align:center;font-size:16px\" >\n <div style=\"border-top: 1px solid #EEF1F6\">\n <img src=\"https://cdn.smartpushedm.com/frontend/smart-push/product/image/1731577171577_83853d55.png\" style=\"padding: 10px;vertical-align: middle;width: 158px;\"alt=\"\" />\n </div>\n <p style=\"color:#343434;font-size:12px\">Providing content services for [[shopName]]</p>\n </td>\n </tr></div></tbody></table></td></tr></tbody></table>\n </table>\n \n </td>\n </tr>\n \n </tbody>\n </table>\n \n </div>\n \n <!--[if mso | IE]></td></tr></table><![endif]-->\n </td>\n </tr>\n </tbody>\n </table>\n \n </div>\n \n \n <!--[if mso | IE]></td></tr></table><![endif]-->\n \n \n </div>\n \n </body>\n</html>\n ",
|
122
|
+
"previewJsonSchema": "{\"id\":\"a4a9fba2a\",\"type\":\"Stage\",\"props\":{\"backgroundColor\":\"#EAEDF1\",\"width\":\"600px\",\"fullWidth\":\"normal-width\"},\"children\":[{\"id\":\"84ba788da\",\"type\":\"Header\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"98d909a48\",\"type\":\"Column\",\"props\":{},\"children\":[]}]},{\"id\":\"84ba7bbda\",\"type\":\"Section\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"8cab9aa48\",\"type\":\"Column\",\"props\":{},\"children\":[]}]},{\"id\":\"b8bbabad9\",\"type\":\"Footer\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"b3bcabad7\",\"type\":\"Column\",\"props\":{},\"children\":[{\"id\":\"b39b6a94a\",\"type\":\"Subscribe\",\"props\":{\"content\":\"<p style=\\\"text-align:center;\\\"><span style=\\\"font-size:12px\\\"><span style=\\\"font-family:Arial, Helvetica, sans-serif\\\">在此處輸入聯繫地址,可以讓你的顧客更加信任這封郵件</span></span></p>\"},\"children\":[]}]}]}],\"extend\":{\"version\":\"1.0.0\",\"updateTime\":\"2025-03-18T09:57:40.953Z\"}}",
|
123
|
+
"generatedHtml": False,
|
124
|
+
"templateUrl": "https://cdn2.smartpushedm.com/material/2021-11-29/d4f96fc873e942a397be708c932bbbe4-自定义排版.png",
|
125
|
+
"sendStrategy": "NOW", "totalReceiver": 0, "utmConfigEnable": False,
|
126
|
+
"subtitle": "Items in your cart are selling out fast!", "language": "en",
|
127
|
+
"languageName": "英语", "timezone": "Asia/Shanghai", "timezoneGmt": "GMT+08:00",
|
128
|
+
"type": "FLOW", "relId": "FLOW6941975456855532553",
|
129
|
+
"parentId": "TEMP6911595896571704333", "nodeId": "2503b475-ce3e-4906-ab04-0ebc387f0d7e",
|
130
|
+
"version": "10", "nodeOrder": 0, "sendType": "EMAIL", "productInfos": [], "blocks": [
|
131
|
+
{"domId": "subscribe-dom-b39b6a94a", "blockId": "", "areaId": "", "type": "SP_LOGO",
|
132
|
+
"column": 1, "fillStyle": 0, "ratio": ""}], "discountCodes": [], "reviews": [], "awards": [],
|
133
|
+
"selectProducts": [], "createSource": "BUILD_ACTIVITY", "contentChange": True,
|
134
|
+
"activityChange": False, "imageVersion": "1744102089665", "subActivityList": [],
|
135
|
+
"warmupPack": 0, "boosterEnabled": False, "smartSending": False, "boosterCreated": False,
|
136
|
+
"gmailPromotion": False, "sendTimeType": "FIXED", "sendTimezone": "B_TIMEZONE",
|
137
|
+
"sendTimeDelay": False, "sendOption": 1, "hasUserBlock": False, "hasAutoBlock": False,
|
138
|
+
"smsSendDelay": True, "payFunctionList": [], "minSendTime": "2025-04-21 10:15:32",
|
139
|
+
"completedCount": 4, "skippedCount": 0, "openRate": 1, "clickRate": 0, "orderIncome": 0,
|
140
|
+
"openDistinctUserRate": 1, "clickDistinctUserRate": 0}, "completedCount": 4,
|
141
|
+
"skippedCount": 0, "openRate": 1, "clickRate": 0, "orderIncome": 0, "openDistinctUserRate": 1,
|
142
|
+
"clickDistinctUserRate": 0}, "id": "2503b475-ce3e-4906-ab04-0ebc387f0d7e"}],
|
143
|
+
"showDataStartTime": 1745164800000, "showDataEndTime": 1745251199000}
|
144
|
+
# mock_pulsar = MockFlow.check_flow(mock_domain=_url, host_domain=host_domain, cookies=cookies,
|
145
|
+
# flow_id="FLOW6966717528141252274", pulsar=params,
|
146
|
+
# split_node=["true"])
|
147
|
+
# print(mock_pulsar)
|
148
|
+
|
149
|
+
# old_flow_counts, old_versions, email_contents = MockFlow.get_current_flow(host_domain=host_domain, cookies=cookies,
|
150
|
+
# flow_id="FLOW6966717528141252274",
|
151
|
+
# splits=["false", "false"], get_email_content=True)
|
152
|
+
# print(old_flow_counts, old_versions, email_contents)
|
153
|
+
mock_pulsar_step1, _ = MockFlow.check_flow(mock_domain=_url, host_domain=host_domain, cookies=cookies,
|
154
|
+
flow_id="FLOW6966717528141252274", pulsar=params,
|
155
|
+
split_steps="one", split_node=["true"])
|
156
|
+
# time.sleep(60)
|
157
|
+
mock_pulsar_step2, email_contents = MockFlow.check_flow(mock_domain=_url, host_domain=host_domain, cookies=cookies,
|
158
|
+
flow_id="FLOW6966717528141252274",
|
159
|
+
old_flow_counts=mock_pulsar_step1,
|
160
|
+
split_steps="two", split_node=["true"],
|
161
|
+
get_email_content=True)
|
162
|
+
print(mock_pulsar_step1)
|
163
|
+
print(mock_pulsar_step2)
|
164
|
+
print(email_contents)
|
165
|
+
|
166
|
+
# split_steps="two")
|
167
|
+
# # node_counts, versions = MockFlow.get_current_flow(host_domain=host_domain, cookies=cookies,
|
168
|
+
# flow_id="FLOW6749144046546626518")
|
169
|
+
|
170
|
+
# 调试
|
171
|
+
# # 示例字典
|
172
|
+
# my_dict = {'name': 'Alice', 'age': 25, 'city': 'New York'}
|
173
|
+
# # 提取所有键到列表
|
174
|
+
# key_list = list(my_dict)
|
175
|
+
# print(key_list)
|
176
|
+
a = ["1", "3", "5"]
|
177
|
+
# b = ["3", "1", "5"]
|
178
|
+
# if a.sort() == b.sort():
|
179
|
+
# print(1)
|
180
|
+
# else:
|
181
|
+
# print(2)
|
182
|
+
|
183
|
+
# 断言邮件
|
184
|
+
loginEmail, password = 'lulu9600000@gmail.com', 'evvurakhttndwspx'
|
185
|
+
email_property = [{'1AutoTest-固定B-营销-生产2.0-2025-04-24 10:19:47.341333-🔥🔥': {'activityId': 408764,
|
186
|
+
'utmConfigInfo': {
|
187
|
+
'utmSource': '1',
|
188
|
+
'utmMedium': '2',
|
189
|
+
'utmCampaign': '3'},
|
190
|
+
'receiveAddress': 'autotest-smartpushpro5@smartpush.com',
|
191
|
+
'sender': 'SmartPush_Pro5_ec2自动化店铺 AutoTestName',
|
192
|
+
'subtitle': 'AutoTest-2025-04-24 10:19:47.341333-subtitle-[[contact.name]]-🔥🔥'}},
|
193
|
+
{'AutoTest-固定B-营销-生产2.0-2025-04-24 10:19:59.023150-🔥🔥': {'activityId': 408765,
|
194
|
+
'utmConfigInfo': {'utmSource': '1',
|
195
|
+
'utmMedium': '2',
|
196
|
+
'utmCampaign': '3'},
|
197
|
+
'receiveAddress': '1autotest-smartpushpro5@smartpush.com',
|
198
|
+
'sender': 'SmartPush_Pro5_ec2自动化店铺 AutoTestName',
|
199
|
+
'subtitle': 'AutoTest-2025-04-24 10:19:59.023150-subtitle-[[contact.name]]-🔥🔥'}},
|
200
|
+
{'测试邮件-AutoTest_营销_生产2.0_2025_04_24 10:20:28.529290_🔥🔥-😈': {'activityId': None,
|
201
|
+
'utmConfigInfo': None,
|
202
|
+
'receiveAddress': 'autotest-smartpushpro5@smartpush.com',
|
203
|
+
'sender': '1SmartPush_Pro5_ec2自动化店铺 AutoTestName',
|
204
|
+
'subtitle': '营销测试邮件-2025-04-24 10:20:29.560357-😈'}}]
|
205
|
+
|
206
|
+
# result = EmailUtlis.check_email_content(emailProperty=email_property, loginEmail=loginEmail, password=password)
|
207
|
+
# print(result)
|
@@ -1,356 +0,0 @@
|
|
1
|
-
# -*- codeing = utf-8 -*-
|
2
|
-
# @Time :2025/2/20 00:27
|
3
|
-
# @Author :luzebin
|
4
|
-
import json
|
5
|
-
import time
|
6
|
-
|
7
|
-
import pandas as pd
|
8
|
-
|
9
|
-
from smartpush.export.basic import ExcelExportChecker
|
10
|
-
from smartpush.export.basic.ReadExcel import read_excel_from_oss
|
11
|
-
from smartpush.export.basic.ReadExcel import read_excel_and_write_to_dict
|
12
|
-
from smartpush.export.basic.GetOssUrl import get_oss_address_with_retry
|
13
|
-
from smartpush.utils.DataTypeUtils import DataTypeUtils
|
14
|
-
from smartpush.flow import MockFlow
|
15
|
-
from smartpush.utils import EmailUtlis
|
16
|
-
|
17
|
-
if __name__ == '__main__':
|
18
|
-
# 导出流程
|
19
|
-
oss1 = "https://cdn.smartpushedm.com/material_ec2/2025-02-26/31c1a577af244c65ab9f9a984c64f3d9/ab%E5%BC%B9%E7%AA%97%E6%B5%8B%E8%AF%952.10%E5%88%9B%E5%BB%BA-%E6%9C%89%E5%85%A8%E9%83%A8%E6%95%B0%E6%8D%AE%E9%94%80%E5%94%AE%E9%A2%9D%E6%98%8E%E7%BB%86%E6%95%B0%E6%8D%AE.xlsx"
|
20
|
-
oss2 = "https://cdn.smartpushedm.com/material_ec2/2025-02-26/31c1a577af244c65ab9f9a984c64f3d9/ab%E5%BC%B9%E7%AA%97%E6%B5%8B%E8%AF%952.10%E5%88%9B%E5%BB%BA-%E6%9C%89%E5%85%A8%E9%83%A8%E6%95%B0%E6%8D%AE%E9%94%80%E5%94%AE%E9%A2%9D%E6%98%8E%E7%BB%86%E6%95%B0%E6%8D%AE.xlsx"
|
21
|
-
# # print(check_excel_all(oss1, oss1))
|
22
|
-
oss3 = "https://cdn.smartpushedm.com/material_ec2/2025-03-07/dca03e35cb074ac2a46935c85de9f510/导出全部客户.csv"
|
23
|
-
oss4 = "https://cdn.smartpushedm.com/material_ec2/2025-03-07/c5fa0cc24d05416e93579266910fbd3e/%E5%AF%BC%E5%87%BA%E5%85%A8%E9%83%A8%E5%AE%A2%E6%88%B7.csv"
|
24
|
-
expected_oss = "https://cdn.smartpushedm.com/material_ec2/2025-02-26/757df7e77ce544e193257c0da35a4983/%E3%80%90%E8%87%AA%E5%8A%A8%E5%8C%96%E5%AF%BC%E5%87%BA%E3%80%91%E8%90%A5%E9%94%80%E6%B4%BB%E5%8A%A8%E6%95%B0%E6%8D%AE%E6%A6%82%E8%A7%88.xlsx"
|
25
|
-
# actual_oss = "https://cdn.smartpushedm.com/material_ec2/2025-02-26/757df7e77ce544e193257c0da35a4983/%E3%80%90%E8%87%AA%E5%8A%A8%E5%8C%96%E5%AF%BC%E5%87%BA%E3%80%91%E8%90%A5%E9%94%80%E6%B4%BB%E5%8A%A8%E6%95%B0%E6%8D%AE%E6%A6%82%E8%A7%88.xlsx"
|
26
|
-
url = "https://cdn.smartpushedm.com/material_ec2_prod/2025-03-06/fe6f042f50884466979155c5ef825736/copy%20of%202025-01-16%20%E5%88%9B%E5%BB%BA%E7%9A%84%20A%2FB%20%E6%B5%8B%E8%AF%95%20copy%20of%202025-01-16%20app-%E6%99%AE%E9%80%9A%E6%A8%A1%E6%9D%BF%201%E6%95%B0%E6%8D%AE%E6%80%BB%E8%A7%88.xlsx"
|
27
|
-
|
28
|
-
# e_person_oss1 = "https://cdn.smartpushedm.com/material_ec2/2025-02-27/b48f34b3e88045d189631ec1f0f23d51/%E5%AF%BC%E5%87%BA%E5%85%A8%E9%83%A8%E5%AE%A2%E6%88%B7.csv"
|
29
|
-
# a_person_oss2 = "https://cdn.smartpushedm.com/material_ec2/2025-02-27/c50519d803c04e3b9b52d9f625fed413/%E5%AF%BC%E5%87%BA%E5%85%A8%E9%83%A8%E5%AE%A2%E6%88%B7.csv"
|
30
|
-
|
31
|
-
# # #actual_oss= get_oss_address_with_retry("23161","https://cdn.smartpushedm.com/material_ec2_prod/2025-02-20/dae941ec20964ca5b106407858676f89/%E7%BE%A4%E7%BB%84%E6%95%B0%E6%8D%AE%E6%A6%82%E8%A7%88.xlsx","",'{"page":1,"pageSize":10,"type":null,"status":null,"startTime":null,"endTime":null}')
|
32
|
-
# # res=read_excel_and_write_to_dict(read_excel_from_oss(actual_oss))
|
33
|
-
# # print(res)
|
34
|
-
# # print(read_excel_and_write_to_dict(read_excel_from_oss(oss1), type=".xlsx"))
|
35
|
-
# print(check_excel(check_type="all", actual_oss=actual_oss, expected_oss=expected_oss))
|
36
|
-
# print(check_excel_all(actual_oss=oss1, expected_oss=oss2,skiprows =1))
|
37
|
-
# print(check_excel_all(actual_oss=oss1, expected_oss=oss2,ignore_sort=True))
|
38
|
-
# print(check_excel_all(actual_oss=a_person_oss2, expected_oss=e_person_oss1, check_type="including"))
|
39
|
-
# print(ExcelExportChecker.check_excel_all(actual_oss=oss3, expected_oss=oss4, check_type="including"))
|
40
|
-
# read_excel_csv_data(type=)
|
41
|
-
# print(DataTypeUtils().check_email_format())
|
42
|
-
# errors = ExcelExportChecker.check_field_format(actual_oss=oss1, fileds={0: {5: "time"}}, skiprows=1)
|
43
|
-
# ExcelExportChecker.check_excel_name(actual_oss=oss1, expected_oss=url)
|
44
|
-
|
45
|
-
# flow触发流程 ------------------------------------------------------------------------------------------------------------------------
|
46
|
-
_url = "http://sp-go-flow-test.inshopline.com"
|
47
|
-
host_domain = "https://test.smartpushedm.com/api-em-ec2"
|
48
|
-
cookies = "_ga=GA1.1.88071637.1717860341; _ga_NE61JB8ZM6=GS1.1.1718954972.32.1.1718954972.0.0.0; _ga_Z8N3C69PPP=GS1.1.1723104149.2.0.1723104149.0.0.0; _ga_D2KXR23WN3=GS1.1.1735096783.3.1.1735096812.0.0.0; osudb_lang=; osudb_oar=#01#SID0000127BMP3Os96/37rp7Et7tYy+s7TyyN/AaKNkLtst/Ks9rPF/Co/OjyNJYL+Y4lPf+p9rzrSk9uJnxx4BFXI04BoU/fxhnvaMH2ac1DoeYo7Ll0eizFs+CGNscHjBENqjUacTEcDHSprmyG4TrNfYJkB; osudb_appid=SMARTPUSH; osudb_subappid=1; osudb_uid=4213785247; a_lang=zh-hant-tw; ecom_http_token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NDkyNjM1NzgsImp0aSI6IjIyYmQwNmE3LTVkYTItNDA4OS05NGViLThlNThlNzdhM2MyOSIsInVzZXJJbmZvIjp7ImlkIjowLCJ1c2VySWQiOiI0MjEzNzg1MjQ3IiwidXNlcm5hbWUiOiIiLCJlbWFpbCI6ImZlbGl4LnNoYW9Ac2hvcGxpbmVhcHAuY29tIiwidXNlclJvbGUiOiJvd25lciIsInBsYXRmb3JtVHlwZSI6Nywic3ViUGxhdGZvcm0iOjEsInBob25lIjoiIiwibGFuZ3VhZ2UiOiJ6aC1oYW50LXR3IiwiYXV0aFR5cGUiOiIiLCJhdHRyaWJ1dGVzIjp7ImNvdW50cnlDb2RlIjoiQ04iLCJjdXJyZW5jeSI6IkpQWSIsImN1cnJlbmN5U3ltYm9sIjoiSlDCpSIsImRvbWFpbiI6InNtYXJ0cHVzaDQubXlzaG9wbGluZXN0Zy5jb20iLCJsYW5ndWFnZSI6ImVuIiwibWVyY2hhbnRFbWFpbCI6ImZlbGl4LnNoYW9Ac2hvcGxpbmUuY29tIiwibWVyY2hhbnROYW1lIjoiU21hcnRQdXNoNF9lYzJf6Ieq5Yqo5YyW5bqX6ZO6IiwicGhvbmUiOiIiLCJzY29wZUNoYW5nZWQiOnRydWUsInN0YWZmTGFuZ3VhZ2UiOiJ6aC1oYW5zLWNuIiwic3RhdHVzIjowLCJ0aW1lem9uZSI6IkFzaWEvTWFjYW8ifSwic3RvcmVJZCI6IjE2NDQzOTU5MjA0NDQiLCJoYW5kbGUiOiJzbWFydHB1c2g0IiwiZW52IjoiQ04iLCJzdGUiOiIiLCJ2ZXJpZnkiOiIifSwibG9naW5UaW1lIjoxNzQ2NjcxNTc4OTU4LCJzY29wZSI6WyJlbWFpbC1tYXJrZXQiLCJjb29raWUiLCJzbC1lY29tLWVtYWlsLW1hcmtldC1uZXctdGVzdCIsImVtYWlsLW1hcmtldC1uZXctZGV2LWZzIiwiYXBpLXVjLWVjMiIsImFwaS1zdS1lYzIiLCJhcGktZW0tZWMyIiwiZmxvdy1wbHVnaW4iLCJhcGktc3AtbWFya2V0LWVjMiJdLCJjbGllbnRfaWQiOiJlbWFpbC1tYXJrZXQifQ.Ym_w8ftfdP3zxVXpK_ZlPbWRI-S3ie46_zMCVJZln_Y; JSESSIONID=00A6B90F793A7392A2398A80CA278359"
|
49
|
-
|
50
|
-
params = {
|
51
|
-
"abandonedOrderId": "c2c4a695a36373f56899b370d0f1b6f2",
|
52
|
-
"areaCode": "",
|
53
|
-
"context": {
|
54
|
-
"order": {
|
55
|
-
"buyerSubscribeEmail": True,
|
56
|
-
"checkoutId": "c2c4a695a36373f56899b370d0f1b6f2",
|
57
|
-
"discountCodes": [],
|
58
|
-
"orderAmountSet": {
|
59
|
-
"amount": 3,
|
60
|
-
"currency": "JPY"
|
61
|
-
},
|
62
|
-
"orderDetails": [
|
63
|
-
{
|
64
|
-
"productId": "16060724900402692190790343",
|
65
|
-
"title": "测试2.0-商品同步AutoSync-2023-08-17 20:52:00",
|
66
|
-
"titleTranslations": []
|
67
|
-
}
|
68
|
-
],
|
69
|
-
"receiverCountryCode": "HK"
|
70
|
-
},
|
71
|
-
"user": {
|
72
|
-
"addresses": [],
|
73
|
-
"areaCode": "",
|
74
|
-
"email": "testsmart200+10@gmail.com",
|
75
|
-
"firstName": "testsmart200+10",
|
76
|
-
"gender": "others",
|
77
|
-
"id": "1911625831177650177",
|
78
|
-
"lastName": "",
|
79
|
-
"phone": "",
|
80
|
-
"tags": [],
|
81
|
-
"uid": "4603296300",
|
82
|
-
"userName": "testsmart200+10"
|
83
|
-
}
|
84
|
-
},
|
85
|
-
"controlObjectId": "c2c4a695a36373f56899b370d0f1b6f2",
|
86
|
-
"controlObjectType": 4,
|
87
|
-
"email": "testsmart200+10@gmail.com",
|
88
|
-
"handle": "smartpush4",
|
89
|
-
"language": "en",
|
90
|
-
"messageId": "1911625832100397058",
|
91
|
-
"phone": "",
|
92
|
-
"platform": 4,
|
93
|
-
"storeId": "1644395920444",
|
94
|
-
"timezone": "Asia/Macao",
|
95
|
-
"triggerId": "c1001",
|
96
|
-
"uid": "4603296300",
|
97
|
-
"userId": "1911625831177650177"
|
98
|
-
}
|
99
|
-
update_flow_params = {"id": "FLOW6941975456855532553", "version": "10", "triggerId": "c1001",
|
100
|
-
"templateId": "TEMP6911595896571704333", "showData": False, "flowChange": True, "nodes": [
|
101
|
-
{"type": "trigger", "data": {
|
102
|
-
"trigger": {"trigger": "c1001", "group": "", "suggestionGroupId": "", "triggerStock": False,
|
103
|
-
"completedCount": 4, "skippedCount": 0}, "completedCount": 4, "skippedCount": 0},
|
104
|
-
"id": "92d115e7-8a86-439a-8cfb-1aa3ef075edf"}, {"type": "delay", "data": {
|
105
|
-
"delay": {"type": "relative", "relativeTime": 0, "relativeUnit": "HOURS", "designatedTime": ""},
|
106
|
-
"completedCount": 4}, "id": "e0fc258b-fcfc-421c-b215-8e41638072ca"}, {"type": "sendLetter", "data": {
|
107
|
-
"sendLetter": {"id": 367462, "activityTemplateId": 367462, "activityName": "flowActivity_EwEi3d",
|
108
|
-
"activityImage": "http://cdn.smartpushedm.com/frontend/smart-push/staging/1644395920444/1744102089665/1744102093754_f99e3703.jpeg",
|
109
|
-
"emailName": "A Message from Your Cart", "merchantId": "1644395920444",
|
110
|
-
"merchantName": "SmartPush4_ec2_自动化店铺",
|
111
|
-
"brandName": "SmartPush4_ec2_自动化店铺 AutoTestName", "currency": "JP¥",
|
112
|
-
"activityType": "NORMAL", "activityStatus": "ACTIVE", "createTime": 1745201732286,
|
113
|
-
"updateTime": 1745201825819, "createDate": "2025-04-21 10:15:32",
|
114
|
-
"updateDate": "2025-04-21 10:17:05", "pickContactPacks": [], "excludeContactPacks": [],
|
115
|
-
"customerGroupIds": [], "excludeCustomerGroupIds": [], "pickContactInfos": [],
|
116
|
-
"excludeContactInfos": [], "customerGroupInfos": [], "excludeCustomerGroupInfos": [],
|
117
|
-
"sender": "SmartPush4_ec2_自动化店铺", "senderDomain": "DEFAULT_DOMAIN", "domainType": 3,
|
118
|
-
"receiveAddress": "", "originTemplate": 33,
|
119
|
-
"currentJsonSchema": "{\"id\":\"a4a9fba2a\",\"type\":\"Stage\",\"props\":{\"backgroundColor\":\"#EAEDF1\",\"width\":\"600px\",\"fullWidth\":\"normal-width\"},\"children\":[{\"id\":\"84ba788da\",\"type\":\"Header\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"98d909a48\",\"type\":\"Column\",\"props\":{},\"children\":[]}]},{\"id\":\"84ba7bbda\",\"type\":\"Section\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"8cab9aa48\",\"type\":\"Column\",\"props\":{},\"children\":[]}]},{\"id\":\"b8bbabad9\",\"type\":\"Footer\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"b3bcabad7\",\"type\":\"Column\",\"props\":{},\"children\":[{\"id\":\"b39b6a94a\",\"type\":\"Subscribe\",\"props\":{\"content\":\"<p style=\\\"text-align:center;\\\"><span style=\\\"font-size:12px\\\"><span style=\\\"font-family:Arial, Helvetica, sans-serif\\\">在此處輸入聯繫地址,可以讓你的顧客更加信任這封郵件</span></span></p>\"},\"children\":[]}]}]}],\"extend\":{\"version\":\"1.0.0\",\"updateTime\":\"2025-03-18T09:57:40.953Z\"}}",
|
120
|
-
"currentHtml": "<!doctype html>\n<html xmlns=\"http://www.w3.org/1999/xhtml\" xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\">\n <head>\n <title></title>\n <!--[if !mso]><!-->\n <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n <!--<![endif]-->\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n <style type=\"text/css\">\n #outlook a { padding:0; }\n body { margin:0;padding:0;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%; }\n table, td { border-collapse:collapse;mso-table-lspace:0pt;mso-table-rspace:0pt; }\n img { border:0;line-height:100%; outline:none;text-decoration:none;-ms-interpolation-mode:bicubic; }\n pre{margin: 0;}p{ display: block;margin:0;}\n </style>\n <!--[if mso]>\n <noscript>\n <xml>\n <o:OfficeDocumentSettings>\n <o:AllowPNG/>\n <o:PixelsPerInch>96</o:PixelsPerInch>\n </o:OfficeDocumentSettings>\n </xml>\n </noscript>\n <![endif]-->\n <!--[if lte mso 11]>\n <style type=\"text/css\">\n .mj-outlook-group-fix { width:100% !important; }\n </style>\n <![endif]-->\n \n <!--[if !mso]><!-->\n <link href=\"https://fonts.googleapis.com/css?family=Ubuntu:300,400,500,700\" rel=\"stylesheet\" type=\"text/css\">\n <style type=\"text/css\">\n @import url(https://fonts.googleapis.com/css?family=Ubuntu:300,400,500,700);\n </style>\n <!--<![endif]-->\n\n \n \n <style type=\"text/css\">\n @media only screen and (min-width:480px) {\n .mj-column-per-100 { width:100% !important; max-width: 100%; }\n }\n </style>\n <style media=\"screen and (min-width:480px)\">\n .moz-text-html .mj-column-per-100 { width:100% !important; max-width: 100%; }\n </style>\n \n \n <style type=\"text/css\">\n \n \n </style>\n <style type=\"text/css\">\n @import url(https://fonts.googleapis.com/css?family=Arvo:400|Bodoni+Moda:400|DM+Sans:400|Poppins:400|Hammersmith+One:400|Libre+Baskerville:400|Lexend+Giga:400|Ubuntu:400|Montserrat:400|Nunito:400|News+Cycle:400|Roboto:400|Oswald:400);@import url(https://fonts.googleapis.com/css?family=Asar:400|Bruno+Ace:400|Cantata+One:400|League+Gothic:400|Long+Cang:400|Lovers+Quarrel:400|Nanum+Gothic+Coding:400|Nanum+Myeongjo:400|Noto+Sans+Kaithi:400|Noto+Sans+Kannada:400|Noto+Sans+Math:400|Noto+Sans+Syloti+Nagri:400|Noto+Serif+JP:400|Playwrite+AT+Guides:400|Saira+Extra+Condensed:400|Tsukimi+Rounded:400|Waiting+for+the+Sunrise:400);h1,\nh2,\nh3,\nh4,\nh5 {\n font-weight: bold;\n margin-bottom: 0;\n}\np {\n margin-top: 0;\n margin-bottom: 0;\n min-height: 1em;\n}\n\nul {\n margin-bottom: 0;\n}\n\nth {\n font-weight: bold;\n}\n\na {\n text-decoration: none;\n}\n\na::-webkit-scrollbar {\n -webkit-appearance: none;\n}\n\na::-webkit-scrollbar:horizontal {\n max-height: 8px;\n}\n\na::-webkit-scrollbar-thumb {\n border-radius: 8px;\n background-color: rgba(0, 0, 0, 0.5);\n}\n\nul,\nol,\ndl {\n margin-top: 16px !important;\n}\n\npre {\n word-break: break-word;\n padding: 0;\n margin: 0;\n white-space: inherit !important;\n}\n\npre p {\n word-break: break-word;\n padding: 0;\n margin: 0;\n color: #000000;\n}\n\nspan[style*='color'] a {\n color: inherit;\n}\n\n.mj-column-no-meida-100{\n width: 100% !important;\n}\n.mj-column-no-meida-50{\n width: 50% !important;\n}\n.mj-column-no-meida-33-333333333333336{\n width: 33.333333333333336% !important;\n}\n.mj-column-no-meida-25{\n width: 25% !important;\n}\n\n.white-nowrap {\n white-space: nowrap !important;\n}\n\n/* 间距 */\n.sp-m-p-0 {\n margin: 0;\n padding: 0;\n}\n\n.nps-content-span a {\n color: inherit !important;\n}.sp-font-12 {\n font-size: 12px !important;\n}\n\n.sp-font-14 {\n font-size: 14px !important;\n}\n\n.sp-font-16 {\n font-size: 16px !important;\n}\n\n.sp-font-18 {\n font-size: 18px !important;\n}\n\n.sp-font-20 {\n font-size: 20px !important;\n}\n\n.sp-font-22 {\n font-size: 22px !important;\n}\n\n.sp-font-24 {\n font-size: 24px !important;\n}\n\n.sp-font-26 {\n font-size: 26px !important;\n}\n\n.sp-font-28 {\n font-size: 28px !important;\n}\n\n.sp-font-30 {\n font-size: 30px !important;\n}\n\n.sp-font-32 {\n font-size: 32px !important;\n}\n\n.sp-font-34 {\n font-size: 34px !important;\n}\n\n.sp-font-36 {\n font-size: 36px !important;\n}\n\n.sp-font-38 {\n font-size: 38px !important;\n}\n\n.sp-font-40 {\n font-size: 40px !important;\n}\n\n.sp-font-42 {\n font-size: 42px !important;\n}\n\n.sp-font-44 {\n font-size: 44px !important;\n}\n\n.sp-font-46 {\n font-size: 46px !important;\n}\n\n.sp-font-48 {\n font-size: 48px !important;\n}\n\n.sp-font-50 {\n font-size: 50px !important;\n}\n\n.sp-font-52 {\n font-size: 52px !important;\n}\n\n.sp-font-54 {\n font-size: 54px !important;\n}\n\n.sp-font-56 {\n font-size: 56px !important;\n}\n\n.sp-font-58 {\n font-size: 58px !important;\n}\n\n.sp-font-60 {\n font-size: 60px !important;\n}\n\n.sp-image-icon {\n width: 50px;\n}\n\n@media only screen and (max-width:600px) {\n\n .sp-font-12 {\n font-size: 12px !important;\n }\n\n .sp-font-14 {\n font-size: 12px !important;\n }\n\n .sp-font-16 {\n font-size: 12px !important;\n }\n\n .sp-font-18 {\n font-size: 13px !important;\n }\n\n .sp-font-20 {\n font-size: 15px !important;\n }\n\n .sp-font-22 {\n font-size: 16px !important;\n }\n\n .sp-font-24 {\n font-size: 18px !important;\n }\n\n .sp-font-26 {\n font-size: 19px !important;\n }\n\n .sp-font-28 {\n font-size: 21px !important;\n }\n\n .sp-font-30 {\n font-size: 22px !important;\n }\n\n .sp-font-32 {\n font-size: 24px !important;\n }\n\n .sp-font-34 {\n font-size: 25px !important;\n }\n\n .sp-font-36 {\n font-size: 27px !important;\n }\n\n .sp-font-38 {\n font-size: 28px !important;\n }\n\n .sp-font-40 {\n font-size: 30px !important;\n }\n\n .sp-font-42 {\n font-size: 31px !important;\n }\n\n .sp-font-44 {\n font-size: 32px !important;\n }\n\n .sp-font-46 {\n font-size: 33px !important;\n }\n\n .sp-font-48 {\n font-size: 34px !important;\n }\n\n .sp-font-50 {\n font-size: 35px !important;\n }\n\n .sp-font-52 {\n font-size: 36px !important;\n }\n\n .sp-font-54 {\n font-size: 37px !important;\n }\n\n .sp-font-56 {\n font-size: 38px !important;\n }\n\n .sp-font-58 {\n font-size: 39px !important;\n }\n\n .sp-font-60 {\n font-size: 40px !important;\n }\n\n .sp-image-icon {\n width: 28px !important;\n }\n\n}@media only screen and (max-width:480px) {\n\n .sp-img-h-1-TwoVertical-11,\n .sp-img-h-1-TwoHorizontalColumns-11 {\n height: 170px !important;\n }\n\n .sp-img-h-1-TwoVertical-23,\n .sp-img-h-1-TwoHorizontalColumns-23 {\n height: 243px !important;\n }\n\n .sp-img-h-1-TwoVertical-34,\n .sp-img-h-1-TwoHorizontalColumns-34 {\n height: 227px !important;\n }\n\n .sp-img-h-1-TwoVertical-43,\n .sp-img-h-1-TwoHorizontalColumns-43 {\n height: 127px !important;\n }\n\n .sp-img-h-1-ThreeHorizontalColumns-11 {\n height: 109px !important;\n }\n\n .sp-img-h-1-ThreeHorizontalColumns-23 {\n height: 163px !important;\n }\n\n .sp-img-h-1-ThreeHorizontalColumns-34 {\n height: 145px !important;\n }\n\n .sp-img-h-1-ThreeHorizontalColumns-43 {\n height: 81px !important;\n }\n\n .sp-img-h-2-TwoVertical-11 {\n height: 164px !important;\n }\n\n .sp-img-h-2-TwoVertical-23 {\n height: 246px !important;\n }\n\n .sp-img-h-2-TwoVertical-34 {\n height: 218px !important;\n }\n\n .sp-img-h-2-TwoVertical-43 {\n height: 123px !important;\n }\n\n .sp-img-h-2-ThreeHorizontalColumns-11,\n .sp-img-h-2-TwoHorizontalColumns-11 {\n height: 76px !important;\n }\n\n .sp-img-h-2-ThreeHorizontalColumns-23,\n .sp-img-h-2-TwoHorizontalColumns-23 {\n height: 113px !important;\n }\n\n .sp-img-h-2-ThreeHorizontalColumns-34,\n .sp-img-h-2-TwoHorizontalColumns-34 {\n height: 101px !important;\n }\n\n .sp-img-h-2-ThreeHorizontalColumns-43,\n .sp-img-h-2-TwoHorizontalColumns-43 {\n height: 57px !important;\n }\n}@media only screen and (min-width: 320px) and (max-width: 599px) {\n .mj-w-50 {\n width: 50% !important;\n max-width: 50%;\n }\n}\n\n@media only screen and (max-width: 480px) {\n .shop-white-mobile {\n width: 100% !important;\n }\n .mj-td-force-100{\n display: inline-block;\n width: 100% !important;\n }\n\n .mj-ImageText-screen {\n width: 100% !important;\n }\n .mj-ImageText-img {\n margin: 0 auto;\n }\n\n .mj-ImageText-margin {\n margin: 0 !important;\n }\n\n .mj-ImageText-margin-zero {\n margin: 0 5px 0 0 !important;\n }\n\n .mj-ImageText-margin-one {\n margin: 0 0 0 5px !important;\n }\n .mj-column-per-50-force {\n width: 50% !important;\n max-width: 50%;\n }\n}\n\n@media only screen and (min-width: 480px) {\n .mj-imagetext-force-100{\n display: inline-block;\n width: 100% !important;\n }\n .mj-column-per-100 {\n width: 100% !important;\n max-width: 100%;\n }\n\n .mj-column-per-50 {\n width: 50% !important;\n max-width: 50%;\n }\n\n .mj-column-per-33-333333333333336 {\n width: 33.333333333333336% !important;\n max-width: 33.333333333333336%;\n }\n\n .mj-column-per-25 {\n width: 25% !important;\n max-width: 25%;\n }\n\n\n .mg-column-per-46-5 {\n width: 46.5% !important;\n max-width: 46.5%;\n }\n\n .mj-AbandonProduct-cloum-align-center {\n align-items: flex-start !important;\n }\n\n\n .mj-OrderInformation-padding-top-220 {\n padding-top: 20px !important;\n }\n\n .mj-OrderInformation-float-left {\n float: left !important;\n }\n}@media only screen and (max-width: 480px) {\n .mt-1{\n margin-top: 1px;\n }\n .mt-2{\n margin-top: 2px;\n }\n .mt-3{\n margin-top: 3px;\n }\n .mt-4{\n margin-top: 4px;\n }\n .mt-5{\n margin-top: 5px;\n }\n .mt-6{\n margin-top: 7px;\n }\n .mt-8{\n margin-top: 9px;\n }\n .mt-10{\n margin-top: 10px;\n }\n\n}\n </style>\n \n </head>\n <body style=\"word-spacing:normal;background-color:#EAEDF1;\">\n \n \n <div\n style=\"background-color:#EAEDF1;\"\n >\n <table className=\"pv-stage\">\n <tbody>\n <tr>\n <td style=\"display:table-column;\"><div style=\"width:1px; height:1px;\"><img style=\"width:1px; height:1px;\" width=\"1\" src=\"${SP_OPEN_EMAIL_URL}\" />\n </div></td>\n </tr>\n </tbody>\n </table><div mso-hide: all; position: fixed; height: 0; max-height: 0; overflow: hidden; font-size: 0; style=\"display:none;\">${emailSubtitle}</div>\n \n <!--[if mso | IE]><table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"\" role=\"presentation\" style=\"width:600px;\" width=\"600\" bgcolor=\"#ffffff\" ><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]-->\n \n \n <div style=\"background:#ffffff;background-color:#ffffff;margin:0px auto;max-width:600px;\">\n \n <table\n align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"background:#ffffff;background-color:#ffffff;width:100%;\"\n >\n <tbody>\n <tr>\n <td\n style=\"border-bottom:1px none #ffffff;border-left:1px none #ffffff;border-right:1px none #ffffff;border-top:1px none #ffffff;direction:ltr;font-size:0px;padding:20px 0;padding-bottom:0px;padding-left:0px;padding-right:0px;padding-top:0px;text-align:center;\"\n >\n <!--[if mso | IE]><table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td class=\"\" style=\"vertical-align:top;width:598px;\" ><![endif]-->\n \n <div\n class=\"mj-column-per-100 mj-outlook-group-fix\" style=\"font-size:0px;text-align:left;direction:ltr;display:inline-block;vertical-align:top;width:100%;\"\n >\n \n <table\n border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"vertical-align:top;\" width=\"100%\"\n >\n <tbody>\n \n <tr>\n <td\n align=\"left\" style=\"font-size:0px;padding:0;word-break:break-word;\"\n >\n \n <table\n cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" border=\"0\" style=\"color:#000000;font-family:Ubuntu, Helvetica, Arial, sans-serif;font-size:13px;line-height:22px;table-layout:fixed;width:100%;border:none;\"\n >\n <table style=\"margin:0;padding:0;width:100%;table-layout:fixed\" class=\"\" sp-id=\"subscribe-area-b39b6a94a\"><tbody><tr style=\"width:100%\"><td style=\"margin:0;padding:0;width:100%;text-align:center;padding-top:20px;padding-left:20px;padding-right:20px;padding-bottom:20px;background-color:transparent;font-family:arial,helvetica,sans-serif,Arial, Helvetica, sans-serif\" class=\"Subscribe\"><table cellPadding=\"0\" cellSpacing=\"0\" style=\"width:100%\"><tbody><tr><td align=\"center\" class=\"sp-font-16\" valign=\"middle\" style=\"padding-left:10px;padding-right:10px;padding-top:10px;text-align:left;font-size:16px\"><div><p style=\"text-align:center;\"><span style=\"font-size:12px\"><span style=\"font-family:Arial, Helvetica, sans-serif\">在此處輸入聯繫地址,可以讓你的顧客更加信任這封郵件</span></span></p></div></td></tr><tr><td align=\"center\" valign=\"middle\" height=\"20\" style=\"font-size:12px;font-family:arial,helvetica,sans-serif,Arial, Helvetica, sans-serif;padding-left:10px;padding-right:10px;padding-bottom:20px\"></td></tr><div><tr style=\"${hide_logo}\" sp-id=\"subscribe-dom-b39b6a94a\">\n <td class='sp-font-16' style=\"padding-left:20px;padding-right:20px;padding-top:20px;text-align:center;font-size:16px\" >\n <div style=\"border-top: 1px solid #EEF1F6\">\n <img src=\"https://cdn.smartpushedm.com/frontend/smart-push/product/image/1731577171577_83853d55.png\" style=\"padding: 10px;vertical-align: middle;width: 158px;\"alt=\"\" />\n </div>\n <p style=\"color:#343434;font-size:12px\">Providing content services for [[shopName]]</p>\n </td>\n </tr></div></tbody></table></td></tr></tbody></table>\n </table>\n \n </td>\n </tr>\n \n </tbody>\n </table>\n \n </div>\n \n <!--[if mso | IE]></td></tr></table><![endif]-->\n </td>\n </tr>\n </tbody>\n </table>\n \n </div>\n \n \n <!--[if mso | IE]></td></tr></table><![endif]-->\n \n \n </div>\n \n </body>\n</html>\n ",
|
121
|
-
"previewJsonSchema": "{\"id\":\"a4a9fba2a\",\"type\":\"Stage\",\"props\":{\"backgroundColor\":\"#EAEDF1\",\"width\":\"600px\",\"fullWidth\":\"normal-width\"},\"children\":[{\"id\":\"84ba788da\",\"type\":\"Header\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"98d909a48\",\"type\":\"Column\",\"props\":{},\"children\":[]}]},{\"id\":\"84ba7bbda\",\"type\":\"Section\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"8cab9aa48\",\"type\":\"Column\",\"props\":{},\"children\":[]}]},{\"id\":\"b8bbabad9\",\"type\":\"Footer\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"b3bcabad7\",\"type\":\"Column\",\"props\":{},\"children\":[{\"id\":\"b39b6a94a\",\"type\":\"Subscribe\",\"props\":{\"content\":\"<p style=\\\"text-align:center;\\\"><span style=\\\"font-size:12px\\\"><span style=\\\"font-family:Arial, Helvetica, sans-serif\\\">在此處輸入聯繫地址,可以讓你的顧客更加信任這封郵件</span></span></p>\"},\"children\":[]}]}]}],\"extend\":{\"version\":\"1.0.0\",\"updateTime\":\"2025-03-18T09:57:40.953Z\"}}",
|
122
|
-
"generatedHtml": False,
|
123
|
-
"templateUrl": "https://cdn2.smartpushedm.com/material/2021-11-29/d4f96fc873e942a397be708c932bbbe4-自定义排版.png",
|
124
|
-
"sendStrategy": "NOW", "totalReceiver": 0, "utmConfigEnable": False,
|
125
|
-
"subtitle": "Items in your cart are selling out fast!", "language": "en",
|
126
|
-
"languageName": "英语", "timezone": "Asia/Shanghai", "timezoneGmt": "GMT+08:00",
|
127
|
-
"type": "FLOW", "relId": "FLOW6941975456855532553",
|
128
|
-
"parentId": "TEMP6911595896571704333", "nodeId": "2503b475-ce3e-4906-ab04-0ebc387f0d7e",
|
129
|
-
"version": "10", "nodeOrder": 0, "sendType": "EMAIL", "productInfos": [], "blocks": [
|
130
|
-
{"domId": "subscribe-dom-b39b6a94a", "blockId": "", "areaId": "", "type": "SP_LOGO",
|
131
|
-
"column": 1, "fillStyle": 0, "ratio": ""}], "discountCodes": [], "reviews": [], "awards": [],
|
132
|
-
"selectProducts": [], "createSource": "BUILD_ACTIVITY", "contentChange": True,
|
133
|
-
"activityChange": False, "imageVersion": "1744102089665", "subActivityList": [],
|
134
|
-
"warmupPack": 0, "boosterEnabled": False, "smartSending": False, "boosterCreated": False,
|
135
|
-
"gmailPromotion": False, "sendTimeType": "FIXED", "sendTimezone": "B_TIMEZONE",
|
136
|
-
"sendTimeDelay": False, "sendOption": 1, "hasUserBlock": False, "hasAutoBlock": False,
|
137
|
-
"smsSendDelay": True, "payFunctionList": [], "minSendTime": "2025-04-21 10:15:32",
|
138
|
-
"completedCount": 4, "skippedCount": 0, "openRate": 1, "clickRate": 0, "orderIncome": 0,
|
139
|
-
"openDistinctUserRate": 1, "clickDistinctUserRate": 0}, "completedCount": 4,
|
140
|
-
"skippedCount": 0, "openRate": 1, "clickRate": 0, "orderIncome": 0, "openDistinctUserRate": 1,
|
141
|
-
"clickDistinctUserRate": 0}, "id": "2503b475-ce3e-4906-ab04-0ebc387f0d7e"}],
|
142
|
-
"showDataStartTime": 1745164800000, "showDataEndTime": 1745251199000}
|
143
|
-
# mock_pulsar = MockFlow.check_flow(mock_domain=_url, host_domain=host_domain, cookies=cookies,
|
144
|
-
# flow_id="FLOW6966717528141252274", pulsar=params,
|
145
|
-
# split_node=["true"])
|
146
|
-
# print(mock_pulsar)
|
147
|
-
|
148
|
-
# old_flow_counts, old_versions, email_contents = MockFlow.get_current_flow(host_domain=host_domain, cookies=cookies,
|
149
|
-
# flow_id="FLOW6966717528141252274",
|
150
|
-
# splits=["false", "false"], get_email_content=True)
|
151
|
-
# print(old_flow_counts, old_versions, email_contents)
|
152
|
-
mock_pulsar_step1, _ = MockFlow.check_flow(mock_domain=_url, host_domain=host_domain, cookies=cookies,
|
153
|
-
flow_id="FLOW6966717528141252274", pulsar=params,
|
154
|
-
split_steps="one", split_node=["true"])
|
155
|
-
time.sleep(60)
|
156
|
-
mock_pulsar_step2 = MockFlow.check_flow(mock_domain=_url, host_domain=host_domain, cookies=cookies,
|
157
|
-
flow_id="FLOW6966717528141252274", old_flow_counts=mock_pulsar_step1,
|
158
|
-
split_steps="two", split_node=["true"])
|
159
|
-
print(mock_pulsar_step1)
|
160
|
-
print(mock_pulsar_step2)
|
161
|
-
|
162
|
-
# split_steps="two")
|
163
|
-
# # node_counts, versions = MockFlow.get_current_flow(host_domain=host_domain, cookies=cookies,
|
164
|
-
# flow_id="FLOW6749144046546626518")
|
165
|
-
|
166
|
-
# 调试
|
167
|
-
# # 示例字典
|
168
|
-
# my_dict = {'name': 'Alice', 'age': 25, 'city': 'New York'}
|
169
|
-
# # 提取所有键到列表
|
170
|
-
# key_list = list(my_dict)
|
171
|
-
# print(key_list)
|
172
|
-
a = ["1", "3", "5"]
|
173
|
-
# b = ["3", "1", "5"]
|
174
|
-
# if a.sort() == b.sort():
|
175
|
-
# print(1)
|
176
|
-
# else:
|
177
|
-
# print(2)
|
178
|
-
|
179
|
-
# 断言邮件
|
180
|
-
loginEmail, password = 'lulu9600000@gmail.com', 'evvurakhttndwspx'
|
181
|
-
email_property = [{'1AutoTest-固定B-营销-生产2.0-2025-04-24 10:19:47.341333-🔥🔥': {'activityId': 408764,
|
182
|
-
'utmConfigInfo': {
|
183
|
-
'utmSource': '1',
|
184
|
-
'utmMedium': '2',
|
185
|
-
'utmCampaign': '3'},
|
186
|
-
'receiveAddress': 'autotest-smartpushpro5@smartpush.com',
|
187
|
-
'sender': 'SmartPush_Pro5_ec2自动化店铺 AutoTestName',
|
188
|
-
'subtitle': 'AutoTest-2025-04-24 10:19:47.341333-subtitle-[[contact.name]]-🔥🔥'}},
|
189
|
-
{'AutoTest-固定B-营销-生产2.0-2025-04-24 10:19:59.023150-🔥🔥': {'activityId': 408765,
|
190
|
-
'utmConfigInfo': {'utmSource': '1',
|
191
|
-
'utmMedium': '2',
|
192
|
-
'utmCampaign': '3'},
|
193
|
-
'receiveAddress': '1autotest-smartpushpro5@smartpush.com',
|
194
|
-
'sender': 'SmartPush_Pro5_ec2自动化店铺 AutoTestName',
|
195
|
-
'subtitle': 'AutoTest-2025-04-24 10:19:59.023150-subtitle-[[contact.name]]-🔥🔥'}},
|
196
|
-
{'测试邮件-AutoTest_营销_生产2.0_2025_04_24 10:20:28.529290_🔥🔥-😈': {'activityId': None,
|
197
|
-
'utmConfigInfo': None,
|
198
|
-
'receiveAddress': 'autotest-smartpushpro5@smartpush.com',
|
199
|
-
'sender': '1SmartPush_Pro5_ec2自动化店铺 AutoTestName',
|
200
|
-
'subtitle': '营销测试邮件-2025-04-24 10:20:29.560357-😈'}}]
|
201
|
-
|
202
|
-
# result = EmailUtlis.check_email_content(emailProperty=email_property, loginEmail=loginEmail, password=password)
|
203
|
-
# print(result)
|
204
|
-
|
205
|
-
ccc = {
|
206
|
-
"id": "FLOW6966717528141252274",
|
207
|
-
"version": "2",
|
208
|
-
"triggerId": "c1001",
|
209
|
-
"templateId": "",
|
210
|
-
"showData": False,
|
211
|
-
"flowChange": True,
|
212
|
-
"nodes": [
|
213
|
-
{
|
214
|
-
"type": "trigger",
|
215
|
-
"data": {
|
216
|
-
"trigger": {
|
217
|
-
"trigger": "c1001",
|
218
|
-
"group": "",
|
219
|
-
"suggestionGroupId": "",
|
220
|
-
"triggerStock": False,
|
221
|
-
"completedCount": 1,
|
222
|
-
"skippedCount": 0
|
223
|
-
},
|
224
|
-
"completedCount": 1,
|
225
|
-
"skippedCount": 0
|
226
|
-
},
|
227
|
-
"id": "049fd321-5a22-4f92-9692-a3da9507ee4b"
|
228
|
-
},
|
229
|
-
{
|
230
|
-
"type": "delay",
|
231
|
-
"data": {
|
232
|
-
"delay": {
|
233
|
-
"type": "relative",
|
234
|
-
"relativeTime": 0,
|
235
|
-
"relativeUnit": "MINUTES",
|
236
|
-
"designatedTime": ""
|
237
|
-
},
|
238
|
-
"completedCount": 1
|
239
|
-
},
|
240
|
-
"id": "09ff19db-33a3-41d8-88e9-12e6017ddfd3"
|
241
|
-
},
|
242
|
-
{
|
243
|
-
"type": "sendLetter",
|
244
|
-
"data": {
|
245
|
-
"sendLetter": {
|
246
|
-
"id": 373090,
|
247
|
-
"activityTemplateId": 373090,
|
248
|
-
"activityName": "flowActivity_0aGnZ9",
|
249
|
-
"activityImage": "http://cdn.smartpushedm.com/frontend/smart-push/staging/1644395920444/1745576879501/1745576881592_c412cc2e.jpeg",
|
250
|
-
"emailName": "邮件发送",
|
251
|
-
"merchantId": "1644395920444",
|
252
|
-
"merchantName": "SmartPush4_ec2_自动化店铺",
|
253
|
-
"brandName": "SmartPush4_ec2_自动化店铺 AutoTestName",
|
254
|
-
"currency": "JP¥",
|
255
|
-
"activityType": "NORMAL",
|
256
|
-
"activityStatus": "ACTIVE",
|
257
|
-
"createTime": 1745576857268,
|
258
|
-
"updateTime": 1745576973175,
|
259
|
-
"createDate": "2025-04-25 18:27:37",
|
260
|
-
"updateDate": "2025-04-25 18:29:33",
|
261
|
-
"pickContactPacks": [],
|
262
|
-
"excludeContactPacks": [],
|
263
|
-
"customerGroupIds": [],
|
264
|
-
"excludeCustomerGroupIds": [],
|
265
|
-
"schemaAnalysis": "{\"schema\":{\"Stage\":[\"a4a9fba2a\"],\"Header\":[\"84ba788da\"],\"Column\":[\"98d909a48\",\"8cab9aa48\",\"b3bcabad7\"],\"TextSet\":[\"8298cb99a\"],\"Section\":[\"84ba7bbda\"],\"Logo\":[\"b98abb998\",\"8a9b4bafa\"],\"Footer\":[\"b8bbabad9\"],\"Subscribe\":[\"b39b6a94a\"]}}",
|
266
|
-
"pickContactInfos": [],
|
267
|
-
"excludeContactInfos": [],
|
268
|
-
"customerGroupInfos": [],
|
269
|
-
"excludeCustomerGroupInfos": [],
|
270
|
-
"sender": "SmartPush4_ec2_自动化店铺 AutoTestName",
|
271
|
-
"senderDomain": "DEFAULT_DOMAIN",
|
272
|
-
"domainType": 3,
|
273
|
-
"receiveAddress": "autotest-smartpush4@smartpush.com",
|
274
|
-
"originTemplate": 887,
|
275
|
-
"collectTemplate": 0,
|
276
|
-
"currentJsonSchema": "{\"id\":\"a4a9fba2a\",\"type\":\"Stage\",\"props\":{\"backgroundColor\":\"#EAEDF1\",\"width\":\"600px\",\"fullWidth\":\"normal-width\"},\"children\":[{\"id\":\"84ba788da\",\"type\":\"Header\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"98d909a48\",\"type\":\"Column\",\"props\":{},\"children\":[{\"id\":\"8298cb99a\",\"type\":\"TextSet\",\"props\":{\"list\":[{\"borderWidth\":\"1px\",\"borderStyle\":\"none\",\"content\":\"<p style=\\\"line-height: 3; text-align: right;\\\"><span style=\\\"color: #000000; font-size: 12px; font-family: arial, sans-serif;\\\"><a style=\\\"color: #000000;\\\" href=\\\"${viewInWebApiUrl}\\\">Can't see the email? Please <span style=\\\"color: #3598db;\\\">click here</span></a></span></p>\",\"paddingLeft\":\"10px\",\"paddingRight\":\"10px\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"borderColor\":\"#ffffff\"}],\"containerBackgroundColor\":\"transparent\",\"paddingLeft\":\"10px\",\"paddingRight\":\"10px\",\"paddingTop\":\"10px\",\"paddingBottom\":\"10px\"},\"children\":[]}]}]},{\"id\":\"84ba7bbda\",\"type\":\"Section\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"8cab9aa48\",\"type\":\"Column\",\"props\":{},\"children\":[{\"id\":\"b98abb998\",\"type\":\"Logo\",\"props\":{\"width\":120,\"height\":120,\"imgRatio\":1,\"src\":\"https://cdn.smartpushedm.com/frontend/smart-push/staging/1644395920444/1705904366610_253772e1.png?width=120&height=120\",\"href\":\"https://smartpush4.myshoplinestg.com\",\"align\":\"center\",\"containerBackgroundColor\":\"transparent\",\"paddingLeft\":\"20px\",\"paddingRight\":\"20px\",\"paddingTop\":\"20px\",\"paddingBottom\":\"20px\",\"paddingCondition\":true,\"segmentTypeConfig\":1},\"children\":[]},{\"id\":\"8a9b4bafa\",\"type\":\"Logo\",\"props\":{\"width\":120,\"height\":120,\"imgRatio\":1,\"src\":\"https://cdn.smartpushedm.com/frontend/smart-push/staging/1644395920444/1705904366610_253772e1.png?width=120&height=120\",\"href\":\"https://smartpush4.myshoplinestg.com\",\"align\":\"center\",\"containerBackgroundColor\":\"transparent\",\"paddingLeft\":\"20px\",\"paddingRight\":\"20px\",\"paddingTop\":\"20px\",\"paddingBottom\":\"20px\",\"paddingCondition\":true,\"segmentTypeConfig\":1},\"children\":[]}]}]},{\"id\":\"b8bbabad9\",\"type\":\"Footer\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"b3bcabad7\",\"type\":\"Column\",\"props\":{},\"children\":[{\"id\":\"b39b6a94a\",\"type\":\"Subscribe\",\"props\":{\"content\":\"<div class='sp-font-12'><p style=\\\"text-align: center; \\\" data-mce-style=\\\"text-align: center; \\\"><em><span class='sp-font-12' style=\\\"font-size: 12px; color: rgb(122, 132, 153);\\\" data-mce-style=\\\"font-size: 12px; color: #7a8499;\\\">Please add us to your email contacts list to receive exclusive recommendations!</span></em></p><p style=\\\"text-align: center; \\\" data-mce-style=\\\"text-align: center; \\\"><em><span class='sp-font-12' style=\\\"font-size: 12px; color: rgb(122, 132, 153);\\\" data-mce-style=\\\"font-size: 12px; color: #7a8499;\\\">You are receiving this message from [[shopName]] because you have signed up for subscriptions to receive information about products, services, and campaigns.</span></em></p></div><div class=\\\"sp-font-12\\\" style=\\\"color: rgb(122, 132, 153); font-family: arial, helvetica, sans-serif, Arial, Helvetica, sans-serif; font-size: 12px; text-align: center; margin-top: 12px;padding-left: 10px; padding-right: 10px; padding-bottom: 20px;\\\"><div>Questions? Please <span style=color:#479EEF;text-decoration:underline>contact us</span>, we are glad to help.</div><div>If you don't want to receive our message, just <span style=color:#479EEF;text-decoration:underline>click here</span> to cancel the subscription.</div></div><div class=\\\"sp-font-12\\\" style=\\\"color: rgb(122, 132, 153); font-size: 12px; text-align: center; font-style: oblique;\\\">Questions? Please <a href=[[customerEmail]] style=\\\"color:#479EEF;text-decoration:underline\\\" rel=\\\"noreferrer\\\">contact us</a>, we are glad to help.</div><div class=\\\"sp-font-12\\\" style=\\\"color: rgb(122, 132, 153); font-size: 12px; text-align: center; font-style: oblique;\\\">If you don't want to receive our message, just <a href=[[unsubscribe.url]] target=\\\"_blank\\\" style=\\\"color:#479EEF;text-decoration:underline\\\" rel=\\\"noreferrer\\\">click here</a> to cancel the subscription.</div>\",\"containerBackgroundColor\":\"transparent\"},\"children\":[]}]}]}],\"extend\":{\"version\":\"1.0.0\",\"updateTime\":\"2025-04-25T10:27:59.497Z\"}}",
|
277
|
-
"currentHtml": "<!doctype html>\n<html xmlns=\"http://www.w3.org/1999/xhtml\" xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\">\n <head>\n <title></title>\n <!--[if !mso]><!-->\n <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n <!--<![endif]-->\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n <style type=\"text/css\">\n #outlook a { padding:0; }\n body { margin:0;padding:0;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%; }\n table, td { border-collapse:collapse;mso-table-lspace:0pt;mso-table-rspace:0pt; }\n img { border:0;line-height:100%; outline:none;text-decoration:none;-ms-interpolation-mode:bicubic; }\n pre{margin: 0;}p{ display: block;margin:0;}\n </style>\n <!--[if mso]>\n <noscript>\n <xml>\n <o:OfficeDocumentSettings>\n <o:AllowPNG/>\n <o:PixelsPerInch>96</o:PixelsPerInch>\n </o:OfficeDocumentSettings>\n </xml>\n </noscript>\n <![endif]-->\n <!--[if lte mso 11]>\n <style type=\"text/css\">\n .mj-outlook-group-fix { width:100% !important; }\n </style>\n <![endif]-->\n \n <!--[if !mso]><!-->\n <link href=\"https://fonts.googleapis.com/css?family=Ubuntu:300,400,500,700\" rel=\"stylesheet\" type=\"text/css\">\n <style type=\"text/css\">\n @import url(https://fonts.googleapis.com/css?family=Ubuntu:300,400,500,700);\n </style>\n <!--<![endif]-->\n\n \n \n <style type=\"text/css\">\n @media only screen and (min-width:480px) {\n .mj-column-per-100 { width:100% !important; max-width: 100%; }\n }\n </style>\n <style media=\"screen and (min-width:480px)\">\n .moz-text-html .mj-column-per-100 { width:100% !important; max-width: 100%; }\n </style>\n \n \n <style type=\"text/css\">\n \n \n </style>\n <style type=\"text/css\">\n @import url(https://fonts.googleapis.com/css?family=Arvo:400|Bodoni+Moda:400|DM+Sans:400|Poppins:400|Hammersmith+One:400|Libre+Baskerville:400|Lexend+Giga:400|Ubuntu:400|Montserrat:400|Nunito:400|News+Cycle:400|Roboto:400|Oswald:400);@import url(https://fonts.googleapis.com/css?family=Asar:400|Bruno+Ace:400|Cantata+One:400|League+Gothic:400|Long+Cang:400|Lovers+Quarrel:400|Nanum+Gothic+Coding:400|Nanum+Myeongjo:400|Noto+Sans+Kaithi:400|Noto+Sans+Kannada:400|Noto+Sans+Math:400|Noto+Sans+Syloti+Nagri:400|Noto+Serif+JP:400|Playwrite+AT+Guides:400|Saira+Extra+Condensed:400|Tsukimi+Rounded:400|Waiting+for+the+Sunrise:400);h1,\nh2,\nh3,\nh4,\nh5 {\n font-weight: bold;\n margin-bottom: 0;\n}\np {\n margin-top: 0;\n margin-bottom: 0;\n min-height: 1em;\n}\n\nul {\n margin-bottom: 0;\n}\n\nth {\n font-weight: bold;\n}\n\na {\n text-decoration: none;\n}\n\na::-webkit-scrollbar {\n -webkit-appearance: none;\n}\n\na::-webkit-scrollbar:horizontal {\n max-height: 8px;\n}\n\na::-webkit-scrollbar-thumb {\n border-radius: 8px;\n background-color: rgba(0, 0, 0, 0.5);\n}\n\nul,\nol,\ndl {\n margin-top: 16px !important;\n}\n\npre {\n word-break: break-word;\n padding: 0;\n margin: 0;\n white-space: inherit !important;\n}\n\npre p {\n word-break: break-word;\n padding: 0;\n margin: 0;\n color: #000000;\n}\n\nspan[style*='color'] a {\n color: inherit;\n}\n\n.mj-column-no-meida-100{\n width: 100% !important;\n}\n.mj-column-no-meida-50{\n width: 50% !important;\n}\n.mj-column-no-meida-33-333333333333336{\n width: 33.333333333333336% !important;\n}\n.mj-column-no-meida-25{\n width: 25% !important;\n}\n\n.white-nowrap {\n white-space: nowrap !important;\n}\n\n/* 间距 */\n.sp-m-p-0 {\n margin: 0;\n padding: 0;\n}\n\n.nps-content-span a {\n color: inherit !important;\n}.sp-font-12 {\n font-size: 12px !important;\n}\n\n.sp-font-14 {\n font-size: 14px !important;\n}\n\n.sp-font-16 {\n font-size: 16px !important;\n}\n\n.sp-font-18 {\n font-size: 18px !important;\n}\n\n.sp-font-20 {\n font-size: 20px !important;\n}\n\n.sp-font-22 {\n font-size: 22px !important;\n}\n\n.sp-font-24 {\n font-size: 24px !important;\n}\n\n.sp-font-26 {\n font-size: 26px !important;\n}\n\n.sp-font-28 {\n font-size: 28px !important;\n}\n\n.sp-font-30 {\n font-size: 30px !important;\n}\n\n.sp-font-32 {\n font-size: 32px !important;\n}\n\n.sp-font-34 {\n font-size: 34px !important;\n}\n\n.sp-font-36 {\n font-size: 36px !important;\n}\n\n.sp-font-38 {\n font-size: 38px !important;\n}\n\n.sp-font-40 {\n font-size: 40px !important;\n}\n\n.sp-font-42 {\n font-size: 42px !important;\n}\n\n.sp-font-44 {\n font-size: 44px !important;\n}\n\n.sp-font-46 {\n font-size: 46px !important;\n}\n\n.sp-font-48 {\n font-size: 48px !important;\n}\n\n.sp-font-50 {\n font-size: 50px !important;\n}\n\n.sp-font-52 {\n font-size: 52px !important;\n}\n\n.sp-font-54 {\n font-size: 54px !important;\n}\n\n.sp-font-56 {\n font-size: 56px !important;\n}\n\n.sp-font-58 {\n font-size: 58px !important;\n}\n\n.sp-font-60 {\n font-size: 60px !important;\n}\n\n.sp-image-icon {\n width: 50px;\n}\n\n@media only screen and (max-width:600px) {\n\n .sp-font-12 {\n font-size: 12px !important;\n }\n\n .sp-font-14 {\n font-size: 12px !important;\n }\n\n .sp-font-16 {\n font-size: 12px !important;\n }\n\n .sp-font-18 {\n font-size: 13px !important;\n }\n\n .sp-font-20 {\n font-size: 15px !important;\n }\n\n .sp-font-22 {\n font-size: 16px !important;\n }\n\n .sp-font-24 {\n font-size: 18px !important;\n }\n\n .sp-font-26 {\n font-size: 19px !important;\n }\n\n .sp-font-28 {\n font-size: 21px !important;\n }\n\n .sp-font-30 {\n font-size: 22px !important;\n }\n\n .sp-font-32 {\n font-size: 24px !important;\n }\n\n .sp-font-34 {\n font-size: 25px !important;\n }\n\n .sp-font-36 {\n font-size: 27px !important;\n }\n\n .sp-font-38 {\n font-size: 28px !important;\n }\n\n .sp-font-40 {\n font-size: 30px !important;\n }\n\n .sp-font-42 {\n font-size: 31px !important;\n }\n\n .sp-font-44 {\n font-size: 32px !important;\n }\n\n .sp-font-46 {\n font-size: 33px !important;\n }\n\n .sp-font-48 {\n font-size: 34px !important;\n }\n\n .sp-font-50 {\n font-size: 35px !important;\n }\n\n .sp-font-52 {\n font-size: 36px !important;\n }\n\n .sp-font-54 {\n font-size: 37px !important;\n }\n\n .sp-font-56 {\n font-size: 38px !important;\n }\n\n .sp-font-58 {\n font-size: 39px !important;\n }\n\n .sp-font-60 {\n font-size: 40px !important;\n }\n\n .sp-image-icon {\n width: 28px !important;\n }\n\n}@media only screen and (max-width:480px) {\n\n .sp-img-h-1-TwoVertical-11,\n .sp-img-h-1-TwoHorizontalColumns-11 {\n height: 170px !important;\n }\n\n .sp-img-h-1-TwoVertical-23,\n .sp-img-h-1-TwoHorizontalColumns-23 {\n height: 243px !important;\n }\n\n .sp-img-h-1-TwoVertical-34,\n .sp-img-h-1-TwoHorizontalColumns-34 {\n height: 227px !important;\n }\n\n .sp-img-h-1-TwoVertical-43,\n .sp-img-h-1-TwoHorizontalColumns-43 {\n height: 127px !important;\n }\n\n .sp-img-h-1-ThreeHorizontalColumns-11 {\n height: 109px !important;\n }\n\n .sp-img-h-1-ThreeHorizontalColumns-23 {\n height: 163px !important;\n }\n\n .sp-img-h-1-ThreeHorizontalColumns-34 {\n height: 145px !important;\n }\n\n .sp-img-h-1-ThreeHorizontalColumns-43 {\n height: 81px !important;\n }\n\n .sp-img-h-2-TwoVertical-11 {\n height: 164px !important;\n }\n\n .sp-img-h-2-TwoVertical-23 {\n height: 246px !important;\n }\n\n .sp-img-h-2-TwoVertical-34 {\n height: 218px !important;\n }\n\n .sp-img-h-2-TwoVertical-43 {\n height: 123px !important;\n }\n\n .sp-img-h-2-ThreeHorizontalColumns-11,\n .sp-img-h-2-TwoHorizontalColumns-11 {\n height: 76px !important;\n }\n\n .sp-img-h-2-ThreeHorizontalColumns-23,\n .sp-img-h-2-TwoHorizontalColumns-23 {\n height: 113px !important;\n }\n\n .sp-img-h-2-ThreeHorizontalColumns-34,\n .sp-img-h-2-TwoHorizontalColumns-34 {\n height: 101px !important;\n }\n\n .sp-img-h-2-ThreeHorizontalColumns-43,\n .sp-img-h-2-TwoHorizontalColumns-43 {\n height: 57px !important;\n }\n}@media only screen and (min-width: 320px) and (max-width: 599px) {\n .mj-w-50 {\n width: 50% !important;\n max-width: 50%;\n }\n}\n\n@media only screen and (max-width: 480px) {\n .shop-white-mobile {\n width: 100% !important;\n }\n .mj-td-force-100{\n display: inline-block;\n width: 100% !important;\n }\n\n .mj-ImageText-screen {\n width: 100% !important;\n }\n .mj-ImageText-img {\n margin: 0 auto;\n }\n\n .mj-ImageText-margin {\n margin: 0 !important;\n }\n\n .mj-ImageText-margin-zero {\n margin: 0 5px 0 0 !important;\n }\n\n .mj-ImageText-margin-one {\n margin: 0 0 0 5px !important;\n }\n .mj-column-per-50-force {\n width: 50% !important;\n max-width: 50%;\n }\n}\n\n@media only screen and (min-width: 480px) {\n .mj-imagetext-force-100{\n display: inline-block;\n width: 100% !important;\n }\n .mj-column-per-100 {\n width: 100% !important;\n max-width: 100%;\n }\n\n .mj-column-per-50 {\n width: 50% !important;\n max-width: 50%;\n }\n\n .mj-column-per-33-333333333333336 {\n width: 33.333333333333336% !important;\n max-width: 33.333333333333336%;\n }\n\n .mj-column-per-25 {\n width: 25% !important;\n max-width: 25%;\n }\n\n\n .mg-column-per-46-5 {\n width: 46.5% !important;\n max-width: 46.5%;\n }\n\n .mj-AbandonProduct-cloum-align-center {\n align-items: flex-start !important;\n }\n\n\n .mj-OrderInformation-padding-top-220 {\n padding-top: 20px !important;\n }\n\n .mj-OrderInformation-float-left {\n float: left !important;\n }\n}@media only screen and (max-width: 480px) {\n .mt-1{\n margin-top: 1px;\n }\n .mt-2{\n margin-top: 2px;\n }\n .mt-3{\n margin-top: 3px;\n }\n .mt-4{\n margin-top: 4px;\n }\n .mt-5{\n margin-top: 5px;\n }\n .mt-6{\n margin-top: 7px;\n }\n .mt-8{\n margin-top: 9px;\n }\n .mt-10{\n margin-top: 10px;\n }\n\n}\n </style>\n \n </head>\n <body style=\"word-spacing:normal;background-color:#EAEDF1;\">\n \n \n <div\n style=\"background-color:#EAEDF1;\"\n >\n <table className=\"pv-stage\">\n <tbody>\n <tr>\n <td style=\"display:table-column;\"><div style=\"width:1px; height:1px;\"><img style=\"width:1px; height:1px;\" width=\"1\" src=\"${SP_OPEN_EMAIL_URL}\" />\n </div></td>\n </tr>\n </tbody>\n </table><div mso-hide: all; position: fixed; height: 0; max-height: 0; overflow: hidden; font-size: 0; style=\"display:none;\">${emailSubtitle}</div>\n \n <!--[if mso | IE]><table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"\" role=\"presentation\" style=\"width:600px;\" width=\"600\" bgcolor=\"#ffffff\" ><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]-->\n \n \n <div style=\"background:#ffffff;background-color:#ffffff;margin:0px auto;max-width:600px;\">\n \n <table\n align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"background:#ffffff;background-color:#ffffff;width:100%;\"\n >\n <tbody>\n <tr>\n <td\n style=\"border-bottom:1px none #ffffff;border-left:1px none #ffffff;border-right:1px none #ffffff;border-top:1px none #ffffff;direction:ltr;font-size:0px;padding:20px 0;padding-bottom:0px;padding-left:0px;padding-right:0px;padding-top:0px;text-align:center;\"\n >\n <!--[if mso | IE]><table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td class=\"\" style=\"vertical-align:top;width:598px;\" ><![endif]-->\n \n <div\n class=\"mj-column-per-100 mj-outlook-group-fix\" style=\"font-size:0px;text-align:left;direction:ltr;display:inline-block;vertical-align:top;width:100%;\"\n >\n \n <table\n border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"vertical-align:top;\" width=\"100%\"\n >\n <tbody>\n \n <tr>\n <td\n align=\"left\" style=\"font-size:0px;padding:10px 25px;padding-top:10px;padding-right:10px;padding-bottom:10px;padding-left:10px;word-break:break-word;\"\n >\n \n <table\n cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" border=\"0\" style=\"color:#000000;font-family:Ubuntu, Helvetica, Arial, sans-serif;font-size:13px;line-height:1.5;table-layout:fixed;width:100%;border:none;\"\n >\n <tr style=\"background-color:transparent;\"><td style=\"vertical-align:top;\" valign=\"top\"><table style=\"border-collapse: collapse;width:100%; table-layout: fixed;\"><tbody ><tr><td class=\"sp-font-16\" style=\"text-align:left;background-color:transparent;padding-left:10px;padding-right:10px;padding-top:0px;padding-bottom:0px;font-size:16px;border-style:none;border-color:#ffffff;border-width:1px;\"><pre class=\"mq_AS\" style=\"white-space: inherit;word-break: break-word;\"><p style=\"line-height: 3; text-align: right;\"><span style=\"color: #000000; font-size: 12px; font-family: arial, sans-serif;\"><a style=\"color: #000000;\" href=\"${viewInWebApiUrl}\">Can't see the email? Please <span style=\"color: #3598db;\">click here</span></a></span></p></pre></td></tr></tbody></table></td></tr>\n </table>\n \n </td>\n </tr>\n \n </tbody>\n </table>\n \n </div>\n \n <!--[if mso | IE]></td></tr></table><![endif]-->\n </td>\n </tr>\n </tbody>\n </table>\n \n </div>\n \n \n <!--[if mso | IE]></td></tr></table><table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"\" role=\"presentation\" style=\"width:600px;\" width=\"600\" bgcolor=\"#ffffff\" ><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]-->\n \n \n <div style=\"background:#ffffff;background-color:#ffffff;margin:0px auto;max-width:600px;\">\n \n <table\n align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"background:#ffffff;background-color:#ffffff;width:100%;\"\n >\n <tbody>\n <tr>\n <td\n style=\"border-bottom:1px none #ffffff;border-left:1px none #ffffff;border-right:1px none #ffffff;border-top:1px none #ffffff;direction:ltr;font-size:0px;padding:20px 0;padding-bottom:0px;padding-left:0px;padding-right:0px;padding-top:0px;text-align:center;\"\n >\n <!--[if mso | IE]><table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td class=\"\" style=\"vertical-align:top;width:598px;\" ><![endif]-->\n \n <div\n class=\"mj-column-per-100 mj-outlook-group-fix\" style=\"font-size:0px;text-align:left;direction:ltr;display:inline-block;vertical-align:top;width:100%;\"\n >\n \n <table\n border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"vertical-align:top;\" width=\"100%\"\n >\n <tbody>\n \n <tr>\n <td\n align=\"left\" style=\"background:transparent;font-size:0px;padding:0;word-break:break-word;\"\n >\n \n <table\n cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" border=\"0\" style=\"color:#000000;font-family:Ubuntu, Helvetica, Arial, sans-serif;font-size:13px;line-height:22px;table-layout:auto;width:100%;border:0;\"\n >\n <tr>\n <td align=\"center\">\n <table style=\"padding:0;margin:0;clear:both;\">\n <tbody style=\"padding:0;margin:0;clear:both;\">\n <tr style=\"padding:0;margin:0;clear:both;\">\n <td style=\"padding:0;margin:0;clear:both;width:120;padding-bottom:20px;padding-left:20px;padding-right:20px;padding-top:20px;\">\n <a href=\"https://smartpush4.myshoplinestg.com\" style=\"padding:0;margin:0;clear:both;\"><img src=\"https://cdn.smartpushedm.com/frontend/smart-push/staging/1644395920444/1705904366610_253772e1.png?width=120&height=120\" style=\"width:120px;max-width:100%;display:block;outline:none;text-decoration:none;height:auto;font-size:0px;object-fit:cover;\" width=\"120\" /></a>\n </td>\n </tr>\n </tbody>\n </table>\n </td>\n </tr>\n </table>\n \n </td>\n </tr>\n \n <tr>\n <td\n align=\"left\" style=\"background:transparent;font-size:0px;padding:0;word-break:break-word;\"\n >\n \n <table\n cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" border=\"0\" style=\"color:#000000;font-family:Ubuntu, Helvetica, Arial, sans-serif;font-size:13px;line-height:22px;table-layout:auto;width:100%;border:0;\"\n >\n <tr>\n <td align=\"center\">\n <table style=\"padding:0;margin:0;clear:both;\">\n <tbody style=\"padding:0;margin:0;clear:both;\">\n <tr style=\"padding:0;margin:0;clear:both;\">\n <td style=\"padding:0;margin:0;clear:both;width:120;padding-bottom:20px;padding-left:20px;padding-right:20px;padding-top:20px;\">\n <a href=\"https://smartpush4.myshoplinestg.com\" style=\"padding:0;margin:0;clear:both;\"><img src=\"https://cdn.smartpushedm.com/frontend/smart-push/staging/1644395920444/1705904366610_253772e1.png?width=120&height=120\" style=\"width:120px;max-width:100%;display:block;outline:none;text-decoration:none;height:auto;font-size:0px;object-fit:cover;\" width=\"120\" /></a>\n </td>\n </tr>\n </tbody>\n </table>\n </td>\n </tr>\n </table>\n \n </td>\n </tr>\n \n </tbody>\n </table>\n \n </div>\n \n <!--[if mso | IE]></td></tr></table><![endif]-->\n </td>\n </tr>\n </tbody>\n </table>\n \n </div>\n \n \n <!--[if mso | IE]></td></tr></table><table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"\" role=\"presentation\" style=\"width:600px;\" width=\"600\" bgcolor=\"#ffffff\" ><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]-->\n \n \n <div style=\"background:#ffffff;background-color:#ffffff;margin:0px auto;max-width:600px;\">\n \n <table\n align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"background:#ffffff;background-color:#ffffff;width:100%;\"\n >\n <tbody>\n <tr>\n <td\n style=\"border-bottom:1px none #ffffff;border-left:1px none #ffffff;border-right:1px none #ffffff;border-top:1px none #ffffff;direction:ltr;font-size:0px;padding:20px 0;padding-bottom:0px;padding-left:0px;padding-right:0px;padding-top:0px;text-align:center;\"\n >\n <!--[if mso | IE]><table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td class=\"\" style=\"vertical-align:top;width:598px;\" ><![endif]-->\n \n <div\n class=\"mj-column-per-100 mj-outlook-group-fix\" style=\"font-size:0px;text-align:left;direction:ltr;display:inline-block;vertical-align:top;width:100%;\"\n >\n \n <table\n border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"vertical-align:top;\" width=\"100%\"\n >\n <tbody>\n \n <tr>\n <td\n align=\"left\" style=\"font-size:0px;padding:0;word-break:break-word;\"\n >\n \n <table\n cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" border=\"0\" style=\"color:#000000;font-family:Ubuntu, Helvetica, Arial, sans-serif;font-size:13px;line-height:22px;table-layout:fixed;width:100%;border:none;\"\n >\n <table style=\"margin:0;padding:0;width:100%;table-layout:fixed\" class=\"\" sp-id=\"subscribe-area-b39b6a94a\"><tbody><tr style=\"width:100%\"><td style=\"margin:0;padding:0;width:100%;text-align:center;padding-top:20px;padding-left:20px;padding-right:20px;padding-bottom:20px;background-color:transparent;font-family:arial,helvetica,sans-serif,Arial, Helvetica, sans-serif\" class=\"Subscribe\"><table cellPadding=\"0\" cellSpacing=\"0\" style=\"width:100%\"><tbody><tr><td align=\"center\" class=\"sp-font-16\" valign=\"middle\" style=\"padding-left:10px;padding-right:10px;padding-top:10px;text-align:left;font-size:16px\"><div><div class='sp-font-12'><p style=\"text-align: center; \" data-mce-style=\"text-align: center; \"><em><span class='sp-font-12' style=\"font-size: 12px; color: rgb(122, 132, 153);\" data-mce-style=\"font-size: 12px; color: #7a8499;\">Please add us to your email contacts list to receive exclusive recommendations!</span></em></p><p style=\"text-align: center; \" data-mce-style=\"text-align: center; \"><em><span class='sp-font-12' style=\"font-size: 12px; color: rgb(122, 132, 153);\" data-mce-style=\"font-size: 12px; color: #7a8499;\">You are receiving this message from [[shopName]] because you have signed up for subscriptions to receive information about products, services, and campaigns.</span></em></p></div><div class=\"sp-font-12\" style=\"color: rgb(122, 132, 153); font-family: arial, helvetica, sans-serif, Arial, Helvetica, sans-serif; font-size: 12px; text-align: center; margin-top: 12px;padding-left: 10px; padding-right: 10px; padding-bottom: 20px;\"><div>Questions? Please <span style=color:#479EEF;text-decoration:underline>contact us</span>, we are glad to help.</div><div>If you don't want to receive our message, just <span style=color:#479EEF;text-decoration:underline>click here</span> to cancel the subscription.</div></div><div class=\"sp-font-12\" style=\"color: rgb(122, 132, 153); font-size: 12px; text-align: center; font-style: oblique;\">Questions? Please <html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body><a href=\"mailto:[[customerEmail]]\" style=\"color:#479EEF;text-decoration:underline\" rel=\"noreferrer\">contact us</a></body></html>, we are glad to help.</div><div class=\"sp-font-12\" style=\"color: rgb(122, 132, 153); font-size: 12px; text-align: center; font-style: oblique;\">If you don't want to receive our message, just <html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body><a href=\"[[unsubscribe.url]]\" target=\"_blank\" style=\"color:#479EEF;text-decoration:underline\" rel=\"noreferrer\">click here</a></body></html> to cancel the subscription.</div></div></td></tr><tr><td align=\"center\" valign=\"middle\" height=\"20\" style=\"font-size:12px;font-family:arial,helvetica,sans-serif,Arial, Helvetica, sans-serif;padding-left:10px;padding-right:10px;padding-bottom:20px\"></td></tr><div><tr style=\"${hide_logo}\" sp-id=\"subscribe-dom-b39b6a94a\">\n <td class='sp-font-16' style=\"padding-left:20px;padding-right:20px;padding-top:20px;text-align:center;font-size:16px\" >\n <div style=\"border-top: 1px solid #EEF1F6\">\n <img src=\"https://cdn.smartpushedm.com/frontend/smart-push/product/image/1731577171577_83853d55.png\" style=\"padding: 10px;vertical-align: middle;width: 158px;\"alt=\"\" />\n </div>\n <p style=\"color:#343434;font-size:12px\">Providing content services for [[shopName]]</p>\n </td>\n </tr></div></tbody></table></td></tr></tbody></table>\n </table>\n \n </td>\n </tr>\n \n </tbody>\n </table>\n \n </div>\n \n <!--[if mso | IE]></td></tr></table><![endif]-->\n </td>\n </tr>\n </tbody>\n </table>\n \n </div>\n \n \n <!--[if mso | IE]></td></tr></table><![endif]-->\n \n \n </div>\n \n </body>\n</html>\n ",
|
278
|
-
"previewJsonSchema": "{\"id\":\"a4a9fba2a\",\"type\":\"Stage\",\"props\":{\"backgroundColor\":\"#EAEDF1\",\"width\":\"600px\",\"fullWidth\":\"normal-width\"},\"children\":[{\"id\":\"84ba788da\",\"type\":\"Header\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"98d909a48\",\"type\":\"Column\",\"props\":{},\"children\":[{\"id\":\"8298cb99a\",\"type\":\"TextSet\",\"props\":{\"list\":[{\"borderWidth\":\"1px\",\"borderStyle\":\"none\",\"content\":\"<p style=\\\"line-height: 3; text-align: right;\\\"><span style=\\\"color: #000000; font-size: 12px; font-family: arial, sans-serif;\\\"><a style=\\\"color: #000000;\\\" href=\\\"${viewInWebApiUrl}\\\">Can't see the email? Please <span style=\\\"color: #3598db;\\\">click here</span></a></span></p>\",\"paddingLeft\":\"10px\",\"paddingRight\":\"10px\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"borderColor\":\"#ffffff\"}],\"containerBackgroundColor\":\"transparent\",\"paddingLeft\":\"10px\",\"paddingRight\":\"10px\",\"paddingTop\":\"10px\",\"paddingBottom\":\"10px\"},\"children\":[]}]}]},{\"id\":\"84ba7bbda\",\"type\":\"Section\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"8cab9aa48\",\"type\":\"Column\",\"props\":{},\"children\":[{\"id\":\"b98abb998\",\"type\":\"Logo\",\"props\":{\"width\":120,\"height\":120,\"imgRatio\":1,\"src\":\"https://cdn.smartpushedm.com/frontend/smart-push/staging/1644395920444/1705904366610_253772e1.png?width=120&height=120\",\"href\":\"https://smartpush4.myshoplinestg.com\",\"align\":\"center\",\"containerBackgroundColor\":\"transparent\",\"paddingLeft\":\"20px\",\"paddingRight\":\"20px\",\"paddingTop\":\"20px\",\"paddingBottom\":\"20px\",\"paddingCondition\":true,\"segmentTypeConfig\":1},\"children\":[]},{\"id\":\"8a9b4bafa\",\"type\":\"Logo\",\"props\":{\"width\":120,\"height\":120,\"imgRatio\":1,\"src\":\"https://cdn.smartpushedm.com/frontend/smart-push/staging/1644395920444/1705904366610_253772e1.png?width=120&height=120\",\"href\":\"https://smartpush4.myshoplinestg.com\",\"align\":\"center\",\"containerBackgroundColor\":\"transparent\",\"paddingLeft\":\"20px\",\"paddingRight\":\"20px\",\"paddingTop\":\"20px\",\"paddingBottom\":\"20px\",\"paddingCondition\":true,\"segmentTypeConfig\":1},\"children\":[]}]}]},{\"id\":\"b8bbabad9\",\"type\":\"Footer\",\"props\":{\"backgroundColor\":\"#ffffff\",\"borderLeft\":\"1px none #ffffff\",\"borderRight\":\"1px none #ffffff\",\"borderTop\":\"1px none #ffffff\",\"borderBottom\":\"1px none #ffffff\",\"paddingTop\":\"0px\",\"paddingBottom\":\"0px\",\"paddingLeft\":\"0px\",\"paddingRight\":\"0px\",\"cols\":[12]},\"children\":[{\"id\":\"b3bcabad7\",\"type\":\"Column\",\"props\":{},\"children\":[{\"id\":\"b39b6a94a\",\"type\":\"Subscribe\",\"props\":{\"content\":\"<div class='sp-font-12'><p style=\\\"text-align: center; \\\" data-mce-style=\\\"text-align: center; \\\"><em><span class='sp-font-12' style=\\\"font-size: 12px; color: rgb(122, 132, 153);\\\" data-mce-style=\\\"font-size: 12px; color: #7a8499;\\\">Please add us to your email contacts list to receive exclusive recommendations!</span></em></p><p style=\\\"text-align: center; \\\" data-mce-style=\\\"text-align: center; \\\"><em><span class='sp-font-12' style=\\\"font-size: 12px; color: rgb(122, 132, 153);\\\" data-mce-style=\\\"font-size: 12px; color: #7a8499;\\\">You are receiving this message from [[shopName]] because you have signed up for subscriptions to receive information about products, services, and campaigns.</span></em></p></div><div class=\\\"sp-font-12\\\" style=\\\"color: rgb(122, 132, 153); font-family: arial, helvetica, sans-serif, Arial, Helvetica, sans-serif; font-size: 12px; text-align: center; margin-top: 12px;padding-left: 10px; padding-right: 10px; padding-bottom: 20px;\\\"><div>Questions? Please <span style=color:#479EEF;text-decoration:underline>contact us</span>, we are glad to help.</div><div>If you don't want to receive our message, just <span style=color:#479EEF;text-decoration:underline>click here</span> to cancel the subscription.</div></div><div class=\\\"sp-font-12\\\" style=\\\"color: rgb(122, 132, 153); font-size: 12px; text-align: center; font-style: oblique;\\\">Questions? Please <a href=[[customerEmail]] style=\\\"color:#479EEF;text-decoration:underline\\\" rel=\\\"noreferrer\\\">contact us</a>, we are glad to help.</div><div class=\\\"sp-font-12\\\" style=\\\"color: rgb(122, 132, 153); font-size: 12px; text-align: center; font-style: oblique;\\\">If you don't want to receive our message, just <a href=[[unsubscribe.url]] target=\\\"_blank\\\" style=\\\"color:#479EEF;text-decoration:underline\\\" rel=\\\"noreferrer\\\">click here</a> to cancel the subscription.</div>\",\"containerBackgroundColor\":\"transparent\"},\"children\":[]}]}]}],\"extend\":{\"version\":\"1.0.0\",\"updateTime\":\"2025-04-25T10:27:59.497Z\"}}",
|
279
|
-
"generatedHtml": False,
|
280
|
-
"templateUrl": "https://cdn2.smartpushedm.com/material_ec2/2024-07-08/c316faf4623d4638893a127e150377f0/v2-545b3673f3db07397babfb71755ecee0_720w.png",
|
281
|
-
"sendStrategy": "NOW",
|
282
|
-
"totalReceiver": 0,
|
283
|
-
"utmConfigEnable": False,
|
284
|
-
"subtitle": "",
|
285
|
-
"language": "en",
|
286
|
-
"languageName": "English",
|
287
|
-
"timezone": "Asia/Macao",
|
288
|
-
"timezoneGmt": "GMT+08:00",
|
289
|
-
"type": "FLOW",
|
290
|
-
"relId": "FLOW6966717528141252274",
|
291
|
-
"parentId": "0",
|
292
|
-
"nodeId": "15630c25-75fa-4456-a6ee-a2bd1e3e64a1",
|
293
|
-
"version": "2",
|
294
|
-
"nodeOrder": 0,
|
295
|
-
"sendType": "EMAIL",
|
296
|
-
"productInfos": [],
|
297
|
-
"blocks": [
|
298
|
-
{
|
299
|
-
"domId": "subscribe-dom-b39b6a94a",
|
300
|
-
"blockId": "",
|
301
|
-
"areaId": "",
|
302
|
-
"type": "SP_LOGO",
|
303
|
-
"column": 1,
|
304
|
-
"fillStyle": 0,
|
305
|
-
"ratio": "",
|
306
|
-
"currencySymbolShow": 1,
|
307
|
-
"thousandthSep": True,
|
308
|
-
"decimalPoint": 2
|
309
|
-
}
|
310
|
-
],
|
311
|
-
"discountCodes": [],
|
312
|
-
"reviews": [],
|
313
|
-
"awards": [],
|
314
|
-
"selectProducts": [],
|
315
|
-
"createSource": "BUILD_ACTIVITY",
|
316
|
-
"contentChange": True,
|
317
|
-
"activityChange": False,
|
318
|
-
"imageVersion": "1745576879501",
|
319
|
-
"subActivityList": [],
|
320
|
-
"warmupPack": 0,
|
321
|
-
"boosterEnabled": False,
|
322
|
-
"smartSending": True,
|
323
|
-
"boosterCreated": False,
|
324
|
-
"gmailPromotion": False,
|
325
|
-
"sendTimeType": "FIXED",
|
326
|
-
"sendTimezone": "B_TIMEZONE",
|
327
|
-
"sendTimeDelay": False,
|
328
|
-
"sendOption": 1,
|
329
|
-
"hasUserBlock": False,
|
330
|
-
"hasAutoBlock": False,
|
331
|
-
"smsSendDelay": True,
|
332
|
-
"payFunctionList": [],
|
333
|
-
"minSendTime": "2025-04-25 18:27:37",
|
334
|
-
"completedCount": 1,
|
335
|
-
"skippedCount": 0,
|
336
|
-
"openRate": 1,
|
337
|
-
"clickRate": 0,
|
338
|
-
"orderIncome": 0,
|
339
|
-
"openDistinctUserRate": 1,
|
340
|
-
"clickDistinctUserRate": 0
|
341
|
-
},
|
342
|
-
"completedCount": 1,
|
343
|
-
"skippedCount": 0,
|
344
|
-
"openRate": 1,
|
345
|
-
"clickRate": 0,
|
346
|
-
"orderIncome": 0,
|
347
|
-
"openDistinctUserRate": 1,
|
348
|
-
"clickDistinctUserRate": 0
|
349
|
-
},
|
350
|
-
"id": "15630c25-75fa-4456-a6ee-a2bd1e3e64a1"
|
351
|
-
}
|
352
|
-
],
|
353
|
-
"showDataStartTime": None,
|
354
|
-
"showDataEndTime": None
|
355
|
-
}
|
356
|
-
# print(ccc)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|