[update] Version 2.3.0.230821

This commit is contained in:
Lkeme 2023-08-21 21:04:20 +08:00
parent 259cd5e81c
commit 1dabaa7213
11 changed files with 724 additions and 21 deletions

2
.gitignore vendored
View File

@ -36,3 +36,5 @@ index1.php
.phpunit.*
captcha/data.json
plugin/FansMedalIntimacy/

View File

@ -29,7 +29,7 @@
<p align=center>
<img src="https://img.shields.io/badge/Version-2.2.0.230806-orange.svg?longCache=true&style=for-the-badge" alt="">
<img src="https://img.shields.io/badge/Version-2.3.0.230821-orange.svg?longCache=true&style=for-the-badge" alt="">
<img src="https://img.shields.io/badge/PHP-8.1+-green.svg?longCache=true&style=for-the-badge" alt="">
<img src="https://img.shields.io/badge/Composer-latest-blueviolet.svg?longCache=true&style=for-the-badge" alt="">
<img src="https://img.shields.io/badge/License-mit-blue.svg?longCache=true&style=for-the-badge" alt="">
@ -117,7 +117,7 @@ Group: [602815575](https://jq.qq.com/?_wv=1027&k=UaalVexM) | **请不要来问
| DailyGold | 0.0.1 | 每日电池(APP) | Lkeme | 1114 | 24(小时) | √ |
| PolishMedal | 0.0.1 | 点亮灰色勋章 | possible318/Lkeme | 1115 | 1(小时) | √ |
| BatchUnfollow | 0.0.1 | 批量取消关注 | Lkeme | 1116 | 5-10(分钟) | √ |
| ActivityLottery | 0.0.1 | 转盘活动 | Lkeme | 1117 | 1(分钟) | √ |
</details>
## 🖥️星图

View File

@ -8,6 +8,25 @@
[comment]: <> (</details>)
## v2.3.0.230821 alpha (2023-08-21)
### Added
- 转盘活动插件
-
### Changed
-
### Fixed
-
### Remarks
- 请注意配置文件有所变动,注意更新。
## v2.2.0.230806 alpha (2023-08-06)
### Added

View File

@ -0,0 +1,329 @@
<?php declare(strict_types=1);
/**
* Website: https://mudew.com/
* Author: Lkeme
* License: The MIT License
* Email: Useri@live.cn
* Updated: 2023 ~ 2024
*
* _____ _ _ _ _ _ _____ _ _____ _____ _____
* | _ \ | | | | | | | | | | | ____| | | | _ \ | ____| | _ \ & l、
* | |_| | | | | | | | | |_| | | |__ | | | |_| | | |__ | |_| | (゚、
* | _ { | | | | | | | _ | | __| | | | ___/ | __| | _ /   \、゙ ~ *
* | |_| | | | | |___ | | | | | | | |___ | |___ | | | |___ | | \ \  じしf_, )
* |_____/ |_| |_____| |_| |_| |_| |_____| |_____| |_| |_____| |_| \_\
*/
use Bhp\Cache\Cache;
use Bhp\Log\Log;
use Bhp\Notice\Notice;
use Bhp\Plugin\BasePlugin;
use Bhp\Plugin\Plugin;
use Bhp\Request\Request;
use Bhp\TimeLock\TimeLock;
use function Amp\delay;
class ActivityLottery extends BasePlugin
{
/**
* 插件信息
* @var array|string[]
*/
protected ?array $info = [
'hook' => __CLASS__, // hook
'name' => 'ActivityLottery', // 插件名称
'version' => '0.0.1', // 插件版本
'desc' => '转盘活动', // 插件描述
'author' => 'Lkeme',// 作者
'priority' => 1117, // 插件优先级
'cycle' => '1(分钟)', // 运行周期
// 新增字段
'start' => '08:00:00', // 插件开始日期
'end' => '23:00:00', // 插件结束日期
];
/**
* @var array
*/
protected array $config = [
'invalid_sids' => [],
'wait_add_infos' => [],
'wait_get_infos' => [],
'wait_do_infos' => [],
];
/**
* @param Plugin $plugin
*/
public function __construct(Plugin &$plugin)
{
// 时间锁
TimeLock::initTimeLock();
// 缓存
Cache::initCache();
// $this::class
$plugin->register($this, 'execute');
}
/**
* 执行
* @return void
*/
public function execute(): void
{
// 时间段限制
// if (!TimeLock::isWithinTimeRange($this->info['start'], $this->info['end'])) return;
// 时间锁限制
if (TimeLock::getTimes() > time() || !getEnable('activity_lottery')) return;
//
$this->initConfig();
delay(1);
// 获取远程数据
$this->fetchRemoteInfos();
delay(1);
// 增加次数
$this->addMyTimes();
delay(1);
// 查询次数
$this->getMyTimes();
delay(1);
// 执行次数
$this->doMyTimes();
//
if (isset($this->config[date("Y-m-d")]['add']) && isset($this->config[date("Y-m-d")]['get']) && isset($this->config[date("Y-m-d")]['do'])) {
TimeLock::setTimes(TimeLock::timing(11) + mt_rand(1, 120) * 60);
} else {
TimeLock::setTimes(65);
}
//
$this->initConfig(true);
}
/**
* @param bool $ending
* @return void
*/
protected function initConfig(bool $ending = false): void
{
if ($ending) {
Cache::set('config', $this->config);
} else {
$this->config = Cache::get('config');
$keys = ['invalid_sids', 'wait_add_infos', 'wait_get_infos', 'wait_do_infos'];
foreach ($keys as $key) {
if (!isset($this->config[$key])) $this->config[$key] = [];
}
}
}
/**
* 执行次数
* @return void
*/
protected function doMyTimes(): void
{
if (isset($this->config[date("Y-m-d")]['do'])) return;
//
if (empty($this->config['wait_add_infos']) && empty($this->config['wait_get_infos']) && empty($this->config['wait_do_infos'])) {
$this->config[date("Y-m-d")]['do'] = true;
return;
};
//
$info = array_shift($this->config['wait_do_infos']);
if (is_null($info)) return;
//
Log::info("转盘活动: 当前活动 {$info['title']} 开始执行次数");
//
$response = Bhp\Api\Api\X\Activity\ApiActivity::doLottery($info);
//
$this->_doMyTimes($info, $response);
}
/**
* 执行次数
* @param array $info
* @param array $data
* @return void
*/
protected function _doMyTimes(array $info, array $data): void
{
// 结束|无效
if ($data['code'] == 170001 || $data['code'] == 175003) {
Log::warning("转盘活动: 当前活动 {$info['title']} 已经结束或失效 Error: {$data['code']} -> {$data['message']}");
return;
}
//
if ($data['code'] != 0) {
Log::warning("转盘活动: 当前活动 {$info['title']} 执行失败 Error: {$data['code']} -> {$data['message']}");
return;
}
if (str_contains($data['data'][0]['gift_name'], '未中奖') || $data['data'][0]['gift_id'] == 0) {
Log::notice("转盘活动: 当前活动 {$info['title']} 可能没有收获 {$data['data'][0]['gift_name']} ");
return;
}
//
Log::notice("转盘活动: 当前活动 {$info['title']} 执行成功 {$data['data'][0]['gift_name']}");
Notice::push('activity_lottery', "转盘活动: 当前活动 {$info['title']} 执行成功 {$data['data'][0]['gift_name']}");
}
/**
* 查询次数
* @return void
*/
protected function getMyTimes(): void
{
if (isset($this->config[date("Y-m-d")]['get'])) return;
//
if (empty($this->config['wait_add_infos']) && empty($this->config['wait_get_infos'])) {
$this->config[date("Y-m-d")]['get'] = true;
return;
};
//
$info = array_shift($this->config['wait_get_infos']);
if (is_null($info)) return;
//
Log::info("转盘活动: 当前活动 {$info['title']} 开始查询次数");
//
$response = Bhp\Api\Api\X\Activity\ApiActivity::myTimes($info);
//
$this->_getMyTimes($info, $response);
}
/**
* 查询次数
* @param array $info
* @param array $data
* @return void
*/
protected function _getMyTimes(array $info, array $data): void
{
// 结束|无效
if ($data['code'] == 170001 || $data['code'] == 175003) {
Log::warning("转盘活动: 当前活动 {$info['title']} 已经结束或失效 Error: {$data['code']} -> {$data['message']}");
return;
}
//
if ($data['code'] != 0 || !isset($data['data']['times'])) {
Log::warning("转盘活动: 当前活动 {$info['title']} 获取次数失败 Error: {$data['code']} -> {$data['message']}");
return;
}
//
if ($data['data']['times'] == 0) {
Log::warning("转盘活动: 当前活动 {$info['title']} 没有次数了");
return;
}
//
Log::info("转盘活动: 当前活动 {$info['title']} 剩余次数 {$data['data']['times']}");
for ($i = 0; $i < $data['data']['times']; $i++) {
$this->config['wait_do_infos'][] = $info;
}
}
/**
* 增加次数
* @return void
*/
protected function addMyTimes(): void
{
if (isset($this->config[date("Y-m-d")]['add'])) return;
//
if (empty($this->config['wait_add_infos'])) {
$this->config[date("Y-m-d")]['add'] = true;
return;
};
//
$info = array_shift($this->config['wait_add_infos']);
if (is_null($info)) return;
//
Log::info("转盘活动: 当前活动 {$info['title']} 开始增加次数");
//
$response = Bhp\Api\Api\X\Activity\ApiActivity::addTimes($info);
//
$this->_addMyTimes($info, $response);
}
/**
* 增加次数
* @param array $info
* @param array $data
* @return void
*/
protected function _addMyTimes(array $info, array $data): void
{
// 结束|无效
if ($data['code'] == 170001 || $data['code'] == 175003) {
Log::warning("转盘活动: 当前活动 {$info['title']} 已经结束或失效 Error: {$data['code']} -> {$data['message']}");
return;
}
//
if ($data['code'] != 0 || !isset($data['data']['add_num'])) {
Log::warning("转盘活动: 当前活动 {$info['title']} 增加次数失败 Error: {$data['code']} -> {$data['message']}");
return;
}
//
Log::info("转盘活动: 当前活动 {$info['title']} 增加次数 {$data['data']['add_num']}");
$this->config['wait_get_infos'][] = $info;
}
/**
* 获取远程数据
* @return void
*/
protected function fetchRemoteInfos(): void
{
if (isset($this->config[date("Y-m-d")]['fetch'])) return;
//
$this->config['wait_add_infos'] = [];
$this->config['wait_get_infos'] = [];
$this->config['wait_do_infos'] = [];
//
$url = 'aHR0cHM6Ly9yYXcua2dpdGh1Yi5jb20vbGtlbWUvQmlsaUhlbHBlci1wZXJzb25hbC9tYXN0ZXIvcmVzb3VyY2VzL2FjdGl2aXR5X2luZm9zLmpzb24=';
$url = base64_decode($url);
$response = Request::getJson(false, 'other', $url);
//
$this->_fetchRemoteInfos($response['data']);
}
/**
* 获取远程数据
* @param array $data
* @return void
*/
protected function _fetchRemoteInfos(array $data): void
{
$new_data = [];
//
foreach ($data as $_ => $value) {
// 活动无效
if (in_array($value['sid'], $this->config['invalid_sids'])) continue;
$new_data[] = $value;
}
// 获取乱序数据
shuffle($new_data);
$this->config['wait_add_infos'] = $new_data;
//
Log::info("转盘活动: 获取远程数据" . count($new_data) . "");
//
$this->config[date("Y-m-d")]['fetch'] = true;
}
}

View File

@ -132,6 +132,10 @@ everyday = false
enable = false
tag = all
; 转盘活动
[activity_lottery]
enable = true
#######################
# 通知设置 #
#######################

View File

@ -0,0 +1,270 @@
{
"code": 200,
"remarks": "有需要可以自己添加或者提pr",
"data": [
{
"sid": "newLottery_e92d8384-1347-11ee-9251-a4ae12675bc2",
"title": "2023夏季日剧导视",
"url": "https://www.bilibili.com/blackboard/activity-ev8hmqZoJ6.html",
"update_time": "2023-08-20 20:56:49"
},
{
"sid": "newLottery_fd9439bf-1af8-11ee-9251-a4ae12675bc2",
"title": "夏日游园会",
"url": "https://www.bilibili.com/blackboard/activity-aLq9HgrK1u.html",
"update_time": "2023-08-20 20:56:50"
},
{
"sid": "newLottery_b76f441a-17d6-11ee-9251-a4ae12675bc2",
"title": "开启暑假的100种方式",
"url": "https://www.bilibili.com/blackboard/activity-o6ioKpTKvA.html",
"update_time": "2023-08-20 20:56:52"
},
{
"sid": "newLottery_7f6d9e41-10ec-11ee-9251-a4ae12675bc2",
"title": "少年果真行新中式擂台赛",
"url": "https://www.bilibili.com/blackboard/activity-ygNwUa9nu6.html",
"update_time": "2023-08-20 20:56:53"
},
{
"sid": "newLottery_3418aa32-f5f9-11ed-9251-a4ae12675bc2",
"title": "饭饭之交二创征稿大赛",
"url": "https://www.bilibili.com/blackboard/activity-lc2fXFydAC.html",
"update_time": "2023-08-20 20:56:54"
},
{
"sid": "newLottery_76af5c78-101b-11ee-9251-a4ae12675bc2",
"title": "UP影剧综指南—少年季",
"url": "https://www.bilibili.com/blackboard/activity-5DFJabyao5.html",
"update_time": "2023-08-20 20:56:55"
},
{
"sid": "newLottery_835b3056-3022-11ee-9251-a4ae12675bc2",
"title": "UP影剧综指南—暑期季—镇站之宝",
"url": "https://www.bilibili.com/blackboard/activity-qGmDE8nRTt.html",
"update_time": "2023-08-20 20:56:56"
},
{
"sid": "newLottery_35922ca8-1c8e-11ee-9251-a4ae12675bc2",
"title": "感兴趣,就试试!",
"url": "https://www.bilibili.com/blackboard/activity-nHiYitkr5m.html",
"update_time": "2023-08-20 20:56:58"
},
{
"sid": "newLottery_3bb5e752-31f3-11ee-9251-a4ae12675bc2",
"title": "我们的家庭日记·萌娃出道计划7.0",
"url": "https://www.bilibili.com/blackboard/activity-zl8bvdjDgE.html",
"update_time": "2023-08-20 20:56:59"
},
{
"sid": "newLottery_0bc120e0-173e-11ee-9251-a4ae12675bc2",
"title": "2023游戏暑期狂欢节",
"url": "https://www.bilibili.com/blackboard/activity-uZeuVDGNOJ.html",
"update_time": "2023-08-20 20:57:00"
},
{
"sid": "newLottery_97fdb9e3-e348-11ed-9251-a4ae12675bc2",
"title": "2023 TCR世界巡回赛",
"url": "https://www.bilibili.com/blackboard/activity-TCRWorldTour2023H5.html",
"update_time": "2023-08-20 20:57:01"
},
{
"sid": "newLottery_dbfa6166-3822-11ee-9251-a4ae12675bc2",
"title": "《速度与激情10》全网首播看片抽道奇战马乐高",
"url": "https://www.bilibili.com/blackboard/topic/activity-opcLvS7ZiC.html",
"update_time": "2023-08-20 20:57:02"
},
{
"sid": "newLottery_77d0ce1e-1f0a-11ee-9251-a4ae12675bc2",
"title": "点亮年少时的动画灯塔,赢定制徽章!",
"url": "https://www.bilibili.com/blackboard/topic/activity-FhXPxTKRez.html",
"update_time": "2023-08-20 20:57:04"
},
{
"sid": "newLottery_359547ce-29f8-11ee-9251-a4ae12675bc2",
"title": "点亮年少时的动画灯塔,赢定制徽章!",
"url": "https://www.bilibili.com/blackboard/topic/activity-zXHzm1eH5O.html",
"update_time": "2023-08-20 20:57:05"
},
{
"sid": "newLottery_bdda67b3-3106-11ee-9251-a4ae12675bc2",
"title": "点亮年少时的动画灯塔,赢定制徽章!",
"url": "https://www.bilibili.com/blackboard/topic/activity-lT6UBe1LHW.html",
"update_time": "2023-08-20 20:57:06"
},
{
"sid": "newLottery_fde7c107-3b47-11ee-9251-a4ae12675bc2",
"title": "看蜘蛛侠赢PS5+VR套装",
"url": "https://www.bilibili.com/blackboard/topic/activity-9HNDnitdIx.html",
"update_time": "2023-08-20 20:57:07"
},
{
"sid": "newLottery_b47e7ff3-382f-11ee-9251-a4ae12675bc2",
"title": "解锁B站玩家指南",
"url": "https://www.bilibili.com/blackboard/activity-Gjn1nAHMNq.html",
"update_time": "2023-08-20 20:57:08"
},
{
"sid": "newLottery_77ac403d-29fc-11ee-9251-a4ae12675bc2",
"title": "和平精空投节视频征集",
"url": "https://www.bilibili.com/blackboard/activity-3Dz7tbzGSz.html",
"update_time": "2023-08-20 20:57:10"
},
{
"sid": "newLottery_8e0055f5-27b1-11ee-9251-a4ae12675bc2",
"title": "人人皆可狮子座",
"url": "https://www.bilibili.com/blackboard/activity-LRKeoRlMMy.html",
"update_time": "2023-08-20 20:57:11"
},
{
"sid": "newLottery_69f75292-1ecd-11ee-9251-a4ae12675bc2",
"title": "【补番月台】夏日动画游乐场",
"url": "https://www.bilibili.com/blackboard/topic/activity-u2SFJkZoK6.html",
"update_time": "2023-08-20 20:57:12"
},
{
"sid": "newLottery_43aa0f81-faa5-11ed-9251-a4ae12675bc2",
"title": "2023 中国野生生物影像年赛",
"url": "https://www.bilibili.com/blackboard/activity-animal-h5.html",
"update_time": "2023-08-20 20:57:13"
},
{
"sid": "newLottery_bcc1bec2-3bfb-11ee-9251-a4ae12675bc2",
"title": "点亮年少时的动画灯塔,赢定制徽章!",
"url": "https://www.bilibili.com/blackboard/topic/activity-1p76gTRDFp.html",
"update_time": "2023-08-20 20:57:14"
},
{
"sid": "newLottery_32964ac7-35ba-11ee-9251-a4ae12675bc2",
"title": "拜托!我家超酷的",
"url": "https://www.bilibili.com/blackboard/activity-Bkf7tmF0it.html",
"update_time": "2023-08-20 20:57:16"
},
{
"sid": "newLottery_062adeaa-3049-11ee-9251-a4ae12675bc2",
"title": "四季有时,指路山海【盛夏篇】",
"url": "https://www.bilibili.com/blackboard/activity-nkM6FVkWJe.html",
"update_time": "2023-08-20 20:57:17"
},
{
"sid": "newLottery_c42bd25d-3379-11ee-9251-a4ae12675bc2",
"title": "未来探索者联盟",
"url": "https://www.bilibili.com/blackboard/activity-py5RBGveW1.html",
"update_time": "2023-08-20 20:57:19"
},
{
"sid": "newLottery_00099592-27c8-11ee-9251-a4ae12675bc2",
"title": "夏日捡漏市集",
"url": "https://www.bilibili.com/blackboard/activity-tADtwbVrY5.html",
"update_time": "2023-08-20 20:57:20"
},
{
"sid": "newLottery_0b963431-3339-11ee-9251-a4ae12675bc2",
"title": "稀有潮玩一发入魂",
"url": "https://www.bilibili.com/blackboard/activity-hXCXcEZxK2.html",
"update_time": "2023-08-20 20:57:22"
},
{
"sid": "newLottery_8eaa246b-261f-11ee-9251-a4ae12675bc2",
"title": "世界在等你出发",
"url": "https://www.bilibili.com/blackboard/activity-UYcOFuzfFe.html",
"update_time": "2023-08-20 20:57:23"
},
{
"sid": "newLottery_589c70ae-34ed-11ee-9251-a4ae12675bc2",
"title": "我的显眼包搭子",
"url": "https://www.bilibili.com/blackboard/activity-krK3gvs3NW.html",
"update_time": "2023-08-20 20:57:24"
},
{
"sid": "newLottery_fb180a41-278d-11ee-9251-a4ae12675bc2",
"title": "致竞硬核PLAYER",
"url": "https://www.bilibili.com/blackboard/activity-Ljg5SnHTjX.html",
"update_time": "2023-08-20 20:57:25"
},
{
"sid": "newLottery_a45a71a6-3b4e-11ee-9251-a4ae12675bc2",
"title": "心动好物攻略",
"url": "https://www.bilibili.com/blackboard/activity-BJuwpZObkd.html",
"update_time": "2023-08-20 20:57:26"
},
{
"sid": "newLottery_cabb3769-3c1c-11ee-9251-a4ae12675bc2",
"title": "冒险岛手游公测",
"url": "https://www.bilibili.com/blackboard/activity-anKnkES21B.html",
"update_time": "2023-08-20 20:57:28"
},
{
"sid": "newLottery_b33cc224-3ca8-11ee-9251-a4ae12675bc2",
"title": "白夜极光UP主激励计划-第三期",
"url": "https://www.bilibili.com/blackboard/activity-P1KpOWBUFi.html",
"update_time": "2023-08-20 20:57:30"
},
{
"sid": "newLottery_77b5cbdc-3c23-11ee-9251-a4ae12675bc2",
"title": "斯露德公测创作者激励计划-抽奖机",
"url": "https://www.bilibili.com/blackboard/activity-t1QPTat5O2.html",
"update_time": "2023-08-20 20:57:31"
},
{
"sid": "newLottery_be453e38-3767-11ee-9251-a4ae12675bc2",
"title": "UP新学期",
"url": "https://www.bilibili.com/blackboard/activity-LS126GvAKy.html",
"update_time": "2023-08-20 20:57:32"
},
{
"sid": "newLottery_43e098bf-2490-11ee-9251-a4ae12675bc2",
"title": "坎公玩家团激励计划第23期海风拂盛夏",
"url": "https://www.bilibili.com/blackboard/activity-6Z3RULhraq.html",
"update_time": "2023-08-20 20:57:34"
},
{
"sid": "newLottery_8651096f-3052-11ee-9251-a4ae12675bc2",
"title": "B-Lab研究院【第四期】",
"url": "https://www.bilibili.com/blackboard/activity-BLab.html",
"update_time": "2023-08-20 20:57:36"
},
{
"sid": "newLottery_0acc57ed-2f98-11ee-9251-a4ae12675bc2",
"title": "王者战报常驻抽奖",
"url": "https://www.bilibili.com/blackboard/activity-uuXjUtvB0Y.html",
"update_time": "2023-08-20 20:57:37"
},
{
"sid": "newLottery_7f960fde-253b-11ee-9251-a4ae12675bc2",
"title": "崩坏星穹铁道1.2创作者激励计划抽奖机",
"url": "https://www.bilibili.com/blackboard/activity-pvTPn8PGo9.html",
"update_time": "2023-08-20 20:57:38"
},
{
"sid": "newLottery_41c08882-32c2-11ee-9251-a4ae12675bc2",
"title": "崩坏3 6.9创作激励计划 抽奖机",
"url": "https://www.bilibili.com/blackboard/activity-enUvYDBdNv.html",
"update_time": "2023-08-20 20:57:41"
},
{
"sid": "newLottery_6a25307d-310b-11ee-9251-a4ae12675bc2",
"title": "蔚蓝档案公测激励计划",
"url": "https://www.bilibili.com/blackboard/activity-fAb7inve4B.html",
"update_time": "2023-08-20 20:57:42"
},
{
"sid": "newLottery_bf29c32b-29e0-11ee-9251-a4ae12675bc2",
"title": "王者荣耀宠粉节-抽奖机",
"url": "https://www.bilibili.com/blackboard/activity-brqxvTQhSK.html",
"update_time": "2023-08-20 20:57:43"
},
{
"sid": "newLottery_65fc5681-2175-11ee-9251-a4ae12675bc2",
"title": "蛋仔派对夏日大作战-抽奖机",
"url": "https://www.bilibili.com/blackboard/activity-vMWaJunELA.html",
"update_time": "2023-08-20 20:57:46"
},
{
"sid": "newLottery_4bdadfdb-149d-11ee-9251-a4ae12675bc2",
"title": "缤智造物",
"url": "https://www.bilibili.com/blackboard/activity-VAQowFjuRn.html",
"update_time": "2023-08-20 20:57:47"
}
]
}

View File

@ -1,14 +0,0 @@
{
"code": 200,
"project": "BiliHelper-personal",
"branch": "master",
"source": "https://github.com/lkeme/BiliHelper-personal",
"raw_url": "https://gh.notifyplus.cf/https://raw.githubusercontent.com/lkeme/BiliHelper-personal/master/data/latest_version.json",
"purge_url": "https://cdn.staticaly.com/gh/lkeme/BiliHelper-personal/master/data/latest_version.json",
"version": "1.2.0.220517",
"des": "程序有更新,请及时线上查看更新哦~",
"time": "2022年5月17日",
"ini_version": "0.0.1",
"ini_des": "配置有更新,请及时线上查看更新哦~",
"ini_time": "2022年5月17日"
}

View File

@ -1,16 +1,17 @@
{
"code": 200,
"project": "BiliHelper-personal",
"branch": "master",
"source": "https://github.com/lkeme/BiliHelper-personal",
"raw_url": "https://gh.notifyplus.cf/https://github.com/lkeme/BiliHelper-personal/blob/master/resources/version.json",
"master_raw_url": "https://gh.notifyplus.cf/https://github.com/lkeme/BiliHelper-personal/blob/master/resources/version.json",
"dev_raw_url": "https://gh.notifyplus.cf/https://github.com/lkeme/BiliHelper-personal/blob/dev/resources/version.json",
"master_purge_url": "https://cdn.staticaly.com/gh/lkeme/BiliHelper-personal/master/resources/version.json",
"dev_purge_url": "https://cdn.staticaly.com/gh/lkeme/BiliHelper-personal/dev/resources/version.json",
"version": "2.2.0.230806",
"version": "2.3.0.230821",
"des": "程序有更新,请及时线上查看更新哦~",
"time": "2023年08月06日",
"time": "2023年08月21日",
"ini_version": "0.0.1",
"ini_des": "配置有更新,请及时线上查看更新哦~",
"ini_time": "2023年08月06日"
"ini_time": "2023年08月21日"
}

View File

@ -0,0 +1,92 @@
<?php declare(strict_types=1);
/**
* Website: https://mudew.com/
* Author: Lkeme
* License: The MIT License
* Email: Useri@live.cn
* Updated: 2023 ~ 2024
*
* _____ _ _ _ _ _ _____ _ _____ _____ _____
* | _ \ | | | | | | | | | | | ____| | | | _ \ | ____| | _ \ & l、
* | |_| | | | | | | | | |_| | | |__ | | | |_| | | |__ | |_| | (゚、
* | _ { | | | | | | | _ | | __| | | | ___/ | __| | _ /   \、゙ ~ *
* | |_| | | | | |___ | | | | | | | |___ | |___ | | | |___ | | \ \  じしf_, )
* |_____/ |_| |_____| |_| |_| |_| |_____| |_____| |_| |_____| |_| \_\
*/
namespace Bhp\Api\Api\X\Activity;
use Bhp\Request\Request;
use Bhp\User\User;
class ApiActivity
{
/**
* @param array $info
* @param int $num
* @return array
*/
public static function doLottery(array $info, int $num = 1): array
{
//
$user = User::parseCookie();
//
$url = 'https://api.bilibili.com/x/lottery/do';
$headers = [
'origin' => 'https://www.bilibili.com',
'referer' => $info['url'],
];
$payload = [
'sid' => $info['sid'],
'num' => $num,
'csrf' => $user['csrf'],
];
// {"code":0,"message":"0","ttl":1,"data":[{"id":0,"mid":123,"ip":0,"num":1,"gift_id":0,"gift_name":"未中奖0","gift_type":0,"img_url":"","type":1,"ctime":123,"cid":0,"extra":{},"award_info":null,"order_no":""}]}
return Request::postJson(true, 'pc', $url, $payload, $headers);
}
/**
* @param array $info
* @param int $action_type 4 关注 3 分享
* @return array
*/
public static function addTimes(array $info, int $action_type = 3): array
{
//
$user = User::parseCookie();
//
$url = 'https://api.bilibili.com/x/lottery/addtimes';
$headers = [
'origin' => 'https://www.bilibili.com',
'referer' => $info['url'],
];
$payload = [
'sid' => $info['sid'],
'action_type' => $action_type,
'csrf' => $user['csrf'],
];
// {"code":0,"message":"0","ttl":1,"data":{"add_num":1}}
return Request::postJson(true, 'pc', $url, $payload, $headers);
}
/**
* @param array $info
* @return array
*/
public static function myTimes(array $info): array
{
$url = 'https://api.bilibili.com/x/lottery/mytimes';
$headers = [
'origin' => 'https://www.bilibili.com',
'referer' => $info['url'],
];
$payload = [
'sid' => $info['sid'],
];
// {"code":0,"message":"0","ttl":1,"data":{"times":1,"lottery_type":0,"points":0,"points_per_time":0,"intergral":null}}
return Request::getJson(true, 'pc', $url, $payload, $headers);
}
}

View File

@ -181,7 +181,7 @@ class Notice extends SingleTon
'content' => "[$now_time] 用户: $uname 详情: $msg"
],
'activity_lottery' => [
'title' => '主站九宫格抽奖活动',
'title' => '转盘抽奖活动',
'content' => "[$now_time] 用户: $uname 详情: $msg"
],
'jury_leave_office' => [

View File

@ -61,7 +61,7 @@ class Task extends SingleTon
Log::error($error_msg);
// Notice::push('error', $error_msg);
}
delay(1);
delay(0.1);
}
});
}