Merge 62629dc579 into 7809924e2d
This commit is contained in:
commit
cb0b6470ef
324
live/live_user_task.md
Normal file
324
live/live_user_task.md
Normal file
@ -0,0 +1,324 @@
|
|||||||
|
# 直播APP电池任务
|
||||||
|
|
||||||
|
- [获取任务进度](#获取任务进度)
|
||||||
|
- [领取电池任务](#领取电池)
|
||||||
|
|
||||||
|
> 需要发送五条弹幕才能领取
|
||||||
|
> 部分用户没有该任务
|
||||||
|
|
||||||
|
## 获取任务进度
|
||||||
|
|
||||||
|
> https://api.live.bilibili.com/xlive/app-ucenter/v1/userTask/GetUserTaskProgress
|
||||||
|
|
||||||
|
_请求方式:GET_
|
||||||
|
|
||||||
|
认证方式: APP
|
||||||
|
|
||||||
|
**url 参数:**
|
||||||
|
|
||||||
|
无
|
||||||
|
|
||||||
|
**json 回复:**
|
||||||
|
|
||||||
|
根对象:
|
||||||
|
|
||||||
|
|字段|类型|内容|备注|
|
||||||
|
|--|--|--|--|
|
||||||
|
|code|num|返回值|0:成功<br/>-1002002:参数异常<br/>-500:服务器异常|
|
||||||
|
|message|str|错误信息|默认为 "0"|
|
||||||
|
|ttl|str|1||
|
||||||
|
|data|obj|信息本体||
|
||||||
|
|
||||||
|
`data`对象:
|
||||||
|
|
||||||
|
|字段|类型|内容|备注|
|
||||||
|
|--|--|--|--|
|
||||||
|
|is_surplus|num|任务状态<br/>-1:用户没有此任务<br/>1:任务进行中<br/>||
|
||||||
|
|status|num|状态:<br/>0:未完成<br/>1:进行中<br/>2:可领取<br/>3:已领取||
|
||||||
|
|progress|num|每日任务(发送弹幕)进度||
|
||||||
|
|target|num|每日任务(发送弹幕)数量||
|
||||||
|
|wallet|obj|钱包||
|
||||||
|
|linked_actions_progress|?|未知|有时候请求没有此字段|
|
||||||
|
|week_task|obj|每周任务|有可能为空|
|
||||||
|
|week_total|num|每周累计天数||
|
||||||
|
|week_group|num|未知||
|
||||||
|
|day_task|obj|每日任务||
|
||||||
|
|
||||||
|
`wallet`对象:
|
||||||
|
|
||||||
|
|字段|类型|内容|备注|
|
||||||
|
|--|--|--|--|
|
||||||
|
|gold|num|电池数|后两位为小数,如 `100` = `1电池`|
|
||||||
|
|silver|num|银瓜子数量||
|
||||||
|
|
||||||
|
`week_task`对象:
|
||||||
|
|
||||||
|
|字段|类型|内容|备注|
|
||||||
|
|--|--|--|--|
|
||||||
|
|reward_num|num|奖励电池数||
|
||||||
|
|minimal_day|num|需要完成天数||
|
||||||
|
|status|num|状态:<br/>0:未完成<br/>2:可领取<br/>3:已领取||
|
||||||
|
|id|num|任务id||
|
||||||
|
|
||||||
|
`day_task`对象:
|
||||||
|
|
||||||
|
|字段|类型|内容|备注|
|
||||||
|
|--|--|--|--|
|
||||||
|
|status|num|状态:<br/>0:未完成<br/>1:进行中<br/>2:可领取<br/>3:已领取||
|
||||||
|
|progress|num|每日任务(发送弹幕)进度||
|
||||||
|
|target|num|每日任务(发送弹幕)数量||
|
||||||
|
|
||||||
|
<br/>
|
||||||
|
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>查看响应示例:</summary>
|
||||||
|
|
||||||
|
未开始
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 0,
|
||||||
|
"message": "0",
|
||||||
|
"ttl": 1,
|
||||||
|
"data": {
|
||||||
|
"is_surplus": 1,
|
||||||
|
"status": 0,
|
||||||
|
"progress": 0,
|
||||||
|
"target": 5,
|
||||||
|
"wallet": {
|
||||||
|
"gold": 18600,
|
||||||
|
"silver": 49592
|
||||||
|
},
|
||||||
|
"linked_actions_progress": null,
|
||||||
|
"week_task": [
|
||||||
|
{
|
||||||
|
"reward_num": 1,
|
||||||
|
"minimal_day": 3,
|
||||||
|
"status": 3,
|
||||||
|
"id": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"reward_num": 2,
|
||||||
|
"minimal_day": 5,
|
||||||
|
"status": 0,
|
||||||
|
"id": 2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"reward_num": 3,
|
||||||
|
"minimal_day": 7,
|
||||||
|
"status": 0,
|
||||||
|
"id": 3
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"week_total": 3,
|
||||||
|
"week_group": 1,
|
||||||
|
"day_task": {
|
||||||
|
"status": 0,
|
||||||
|
"progress": 0,
|
||||||
|
"target": 5
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
每日任务进行中
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 0,
|
||||||
|
"message": "0",
|
||||||
|
"ttl": 1,
|
||||||
|
"data": {
|
||||||
|
"is_surplus": 1,
|
||||||
|
"status": 1,
|
||||||
|
"progress": 2,
|
||||||
|
"target": 5,
|
||||||
|
"wallet": {
|
||||||
|
"gold": 18600,
|
||||||
|
"silver": 49592
|
||||||
|
},
|
||||||
|
"week_task": [
|
||||||
|
{
|
||||||
|
"reward_num": 1,
|
||||||
|
"minimal_day": 3,
|
||||||
|
"status": 3,
|
||||||
|
"id": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"reward_num": 2,
|
||||||
|
"minimal_day": 5,
|
||||||
|
"status": 0,
|
||||||
|
"id": 2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"reward_num": 3,
|
||||||
|
"minimal_day": 7,
|
||||||
|
"status": 0,
|
||||||
|
"id": 3
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"week_total": 3,
|
||||||
|
"week_group": 1,
|
||||||
|
"day_task": {
|
||||||
|
"status": 1,
|
||||||
|
"progress": 2,
|
||||||
|
"target": 5
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
每日任务完成
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 0,
|
||||||
|
"message": "0",
|
||||||
|
"ttl": 1,
|
||||||
|
"data": {
|
||||||
|
"is_surplus": 1,
|
||||||
|
"status": 3,
|
||||||
|
"progress": 5,
|
||||||
|
"target": 5,
|
||||||
|
"wallet": {
|
||||||
|
"gold": 18700,
|
||||||
|
"silver": 49592
|
||||||
|
},
|
||||||
|
"week_task": [
|
||||||
|
{
|
||||||
|
"reward_num": 1,
|
||||||
|
"minimal_day": 3,
|
||||||
|
"status": 3,
|
||||||
|
"id": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"reward_num": 2,
|
||||||
|
"minimal_day": 5,
|
||||||
|
"status": 0,
|
||||||
|
"id": 2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"reward_num": 3,
|
||||||
|
"minimal_day": 7,
|
||||||
|
"status": 0,
|
||||||
|
"id": 3
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"week_total": 4,
|
||||||
|
"week_group": 1,
|
||||||
|
"day_task": {
|
||||||
|
"status": 3,
|
||||||
|
"progress": 5,
|
||||||
|
"target": 5
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
</details>
|
||||||
|
|
||||||
|
## 领取电池
|
||||||
|
|
||||||
|
> https://api.live.bilibili.com/xlive/app-ucenter/v1/userTask/UserTaskReceiveRewards
|
||||||
|
|
||||||
|
_请求方式:POST_
|
||||||
|
|
||||||
|
认证方式: APP
|
||||||
|
|
||||||
|
**url 参数:**
|
||||||
|
|
||||||
|
|字段|类型|内容|备注|
|
||||||
|
|--|--|--|--|
|
||||||
|
|access_key|str|APP登录Token||
|
||||||
|
|actionKey|str|appkey||
|
||||||
|
|appkey|str|1d8b6e7d45233436|[APPKEY,参考这里](https://github.com/SocialSisterYi/bilibili-API-collect/blob/master/other/API_sign.md#%E5%B7%B2%E7%9F%A5%E7%9A%84appkey)|
|
||||||
|
|build|str|7120200|APP build号|
|
||||||
|
|c_locale|str|zh_CN||
|
||||||
|
|channel|str|xiaomi_cn_tv.danmaku.bili_20210930|或其他APP渠道号|
|
||||||
|
|device|str|android||
|
||||||
|
|disable_rcmd|num|0||
|
||||||
|
|mobi_app|str|android||
|
||||||
|
|platform|str|android||
|
||||||
|
|s_locale|str|zh_CN||
|
||||||
|
|statistics|str|{"appId":1,"platform":3,"version":"7.12.0","abtest":""}|需要URLEncoder|
|
||||||
|
|ts|num|1672917355|时间戳,单位秒|
|
||||||
|
|target_id|num|1022|可任意直播房间号|
|
||||||
|
|reward_index|str|0|任务id<br/>0:每日任务<br/>1~3:每周任务id|
|
||||||
|
|sign|str|签名|将以上内容根据字典顺序键值对进行`md5签名` [签名顺序参考](https://github.com/SocialSisterYi/bilibili-API-collect/blob/master/other/API_sign.md)|
|
||||||
|
|
||||||
|
**Header 参数:**
|
||||||
|
|
||||||
|
|字段|内容|备注|
|
||||||
|
|--|--|--|
|
||||||
|
|APP-KEY|android64||
|
||||||
|
|Accept-Encoding|gzip, deflate, br||
|
||||||
|
|Connection|keep-alive||
|
||||||
|
|Content-Type|application/x-www-form-urlencoded; charset=utf-8||
|
||||||
|
|Host|api.live.bilibili.com||
|
||||||
|
|User-Agent|Mozilla/5.0 BiliDroid/7.4.0 (bbcallen@gmail.com) os/android model/22061218C mobi_app/android build/7040300 channel/xiaomi_cn_tv.danmaku.bili_20210930 innerVer/7040310 osVer/12 network/2||
|
||||||
|
|bili-http-engine|cronet||
|
||||||
|
|buvid|buvid3|web端为操作登录接口时Cookie中的`buvid3`<br/>若登录设备无`buvid`则留空|
|
||||||
|
|env|prod||
|
||||||
|
|fp_local|992219737dd69e7d98864235335347c53476691d4482fc3e57a835e894751811|64位随机|
|
||||||
|
|fp_remote|992219737dd69e7d98864235335347c53476691d4482fc3e57a835e894751811|64位随机,同fp_local|
|
||||||
|
|session_id|99221973|fp_local头8个字符|
|
||||||
|
|x-bili-aurora-eid|WFICRlE=||
|
||||||
|
|x-bili-aurora-zone||留空|
|
||||||
|
|x-bili-mid|0|用户uid|
|
||||||
|
|x-bili-trace-id|992219737dd69e7d98864235335347c5:3476691d4482fc3e:0:0|32随机:16随机:0:0|
|
||||||
|
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>x-bili-trace-id、fp_local、session_id字段,建议用两个`md5`来拼接,如:</summary>
|
||||||
|
|
||||||
|
```java
|
||||||
|
String md5_1 = getMD5(System.currentTimeMillis());
|
||||||
|
String md5_2 = getMD5(System.currentTimeMillis());
|
||||||
|
String trace_id = md5_1 + ":" + md5_2.substring(0, 16) + ":0:0";
|
||||||
|
String session_id = md5_1.substring(0, 8);
|
||||||
|
String fp_local = md5_1 + md5_2;
|
||||||
|
```
|
||||||
|
</details>
|
||||||
|
|
||||||
|
|
||||||
|
**json 回复:**
|
||||||
|
|
||||||
|
_需要Brotli解压_
|
||||||
|
|
||||||
|
根对象:
|
||||||
|
|
||||||
|
|字段|类型|内容|备注|
|
||||||
|
|--|--|--|--|
|
||||||
|
|code|num|返回值|0:成功<br/>-1002002:参数异常<br/>-500:服务器异常 <br/>27000002:已领取过|
|
||||||
|
|message|str|错误信息|默认为 "0"|
|
||||||
|
|ttl|str|1||
|
||||||
|
|data|obj|信息本体||
|
||||||
|
|
||||||
|
`data`对象:
|
||||||
|
|
||||||
|
|字段|类型|内容|备注|
|
||||||
|
|--|--|--|--|
|
||||||
|
|num|num|领取电池数||
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>查看响应示例:</summary>
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 0,
|
||||||
|
"message": "0",
|
||||||
|
"ttl": 1,
|
||||||
|
"data": {
|
||||||
|
"num": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"code": 27000002,
|
||||||
|
"message": "领取失败,请重试",
|
||||||
|
"ttl": 1,
|
||||||
|
"data": {
|
||||||
|
"num": 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
</details>
|
||||||
Loading…
Reference in New Issue
Block a user