文章目录
详细步骤
使用 WxPusher 进行消息推送的步骤:
1. 注册与登录
- 访问 WxPusher 官方网站。
- 点击“注册”并填写必要的信息完成注册。
- 注册完成后,用你的账户信息登录。
2. 创建应用
- 登录后,进入后台管理页面。
- 点击“应用管理”。
- 点击“创建应用”按钮,填写应用名称、应用描述等基本信息。
- 创建成功后,可以在应用列表中看到你创建的应用,点击进入应用详情页面。
3. 获取 AppToken
- 在应用详情页面,你会看到
AppToken
,这是你进行消息推送的重要凭证。 - 复制
AppToken
,后续发送消息时会用到它。
4. 获取用户 UID
4.1 生成二维码
- 在应用详情页面,点击“用户管理”。
- 点击“生成二维码”,生成一个用户关注二维码。
- 用户扫描该二维码后,会关注你的应用,并生成他们的 UID。
4.2 通过 API 获取 UID
如果你需要通过程序自动获取用户 UID,可以参考官方文档提供的接口。
5. 使用 API 进行消息推送
WxPusher 提供了 RESTful API 接口,你可以通过这些接口向用户发送消息。以下是详细的 API 使用方法:
5.1 API Endpoint
发送消息的 API URL 是 https://wxpusher.zjiecode.com/api/send/message
。
5.2 请求参数
参数名 | 类型 | 是否必需 | 描述 |
---|---|---|---|
appToken | String | 必需 | 在应用详情页面获取到的 AppToken |
content | String | 必需 | 要发送的消息内容 |
contentType | Int | 必需 | 消息类型:1-文本,2-HTML,3-Markdown |
uids | List | 必需 | 用户 UID 列表 |
topicIds | List | 可选 | 话题 ID 列表(如果不使用 UID,可以使用话题 ID 推送) |
url | String | 可选 | 点击消息后跳转的链接 |
verifyPayload | String | 可选 | 验证消息有效性的随机字符串(增强安全性) |
5.3 使用示例
以下是一个使用 curl
命令发送消息的详细示例:
curl -X POST 'https://wxpusher.zjiecode.com/api/send/message' \
-H 'Content-Type: application/json' \
-d '{
"appToken":"你的AppToken",
"content":"这是测试消息内容",
"contentType":1,
"uids":[
"用户UID1",
"用户UID2"
],
"url":"https://example.com"
}'
5.4 使用 Python 发送消息
以下是一个使用 Python 发送消息的详细示例:
import requests
import json
def send_message(app_token, content, uids, url=None):
api_url = 'https://wxpusher.zjiecode.com/api/send/message'
headers = {
'Content-Type': 'application/json'
}
data = {
"appToken": app_token,
"content": content,
"contentType": 1,
"uids": uids,
"url": url
}
response = requests.post(api_url, headers=headers, data=json.dumps(data))
return response.json()
# 示例调用
app_token = '你的AppToken'
content = '这是测试消息内容'
uids = ['用户UID1', '用户UID2']
url = 'https://example.com'
result = send_message(app_token, content, uids, url)
print(result)
6. 集成到项目中
你可以将上述示例代码集成到你的项目中,根据项目的需求进行修改和扩展。
7. 查看推送结果
- 登录 WxPusher 后台,进入“消息管理”页面。
- 在消息管理页面,可以查看你发送的消息记录以及发送状态。
8. 官方文档与支持
详细的 API 文档和更多功能介绍,请参考 WxPusher 官方文档。
WxPusher 常见的使用场景:
1. 系统通知
示例:
- 服务器状态通知:当服务器出现异常或恢复正常时,及时推送消息通知管理员。
- 应用程序错误通知:当应用程序发生错误时,推送错误信息给开发人员。
import requests
def send_server_status_notification(app_token, content, uids):
api_url = 'https://wxpusher.zjiecode.com/api/send/message'
headers = {
'Content-Type': 'application/json'
}
data = {
"appToken": app_token,
"content": content,
"contentType": 1,
"uids": uids
}
response = requests.post(api_url, headers=headers, json=data)
return response.json()
# 示例调用
app_token = '你的AppToken'
content = '服务器状态:异常'
uids = ['用户UID1']
send_server_status_notification(app_token, content, uids)
2. 事务提醒
示例:
- 会议提醒:在会议开始前推送会议通知。
- 待办事项提醒:提醒用户待办事项的截止时间。
def send_reminder(app_token, content, uids, url=None):
api_url = 'https://wxpusher.zjiecode.com/api/send/message'
headers = {
'Content-Type': 'application/json'
}
data = {
"appToken": app_token,
"content": content,
"contentType": 1,
"uids": uids,
"url": url
}
response = requests.post(api_url, headers=headers, json=data)
return response.json()
# 示例调用
app_token = '你的AppToken'
content = '会议提醒:明天上午10点'
uids = ['用户UID1']
url = 'https://example.com/meeting'
send_reminder(app_token, content, uids, url)
3. 营销推广
示例:
- 新产品发布:通知用户新产品的上线信息。
- 促销活动:推送促销活动和优惠信息。
def send_promotion(app_token, content, uids, url=None):
api_url = 'https://wxpusher.zjiecode.com/api/send/message'
headers = {
'Content-Type': 'application/json'
}
data = {
"appToken": app_token,
"content": content,
"contentType": 1,
"uids": uids,
"url": url
}
response = requests.post(api_url, headers=headers, json=data)
return response.json()
# 示例调用
app_token = '你的AppToken'
content = '新产品发布:最新款智能手表'
uids = ['用户UID1', '用户UID2']
url = 'https://example.com/new-product'
send_promotion(app_token, content, uids, url)
4. 用户互动
示例:
- 问卷调查:发送问卷调查链接给用户。
- 活动报名:推送活动报名的通知和链接。
def send_interaction(app_token, content, uids, url=None):
api_url = 'https://wxpusher.zjiecode.com/api/send/message'
headers = {
'Content-Type': 'application/json'
}
data = {
"appToken": app_token,
"content": content,
"contentType": 1,
"uids": uids,
"url": url
}
response = requests.post(api_url, headers=headers, json=data)
return response.json()
# 示例调用
app_token = '你的AppToken'
content = '请填写问卷调查'
uids = ['用户UID1', '用户UID2']
url = 'https://example.com/survey'
send_interaction(app_token, content, uids, url)
5. 新闻通知
示例:
- 每日新闻:推送每日新闻摘要。
- 紧急新闻:推送突发新闻和重要事件通知。
def send_news(app_token, content, uids, url=None):
api_url = 'https://wxpusher.zjiecode.com/api/send/message'
headers = {
'Content-Type': 'application/json'
}
data = {
"appToken": app_token,
"content": content,
"contentType": 1,
"uids": uids,
"url": url
}
response = requests.post(api_url, headers=headers, json=data)
return response.json()
# 示例调用
app_token = '你的AppToken'
content = '今日新闻摘要'
uids = ['用户UID1', '用户UID2']
url = 'https://example.com/news'
send_news(app_token, content, uids, url)