# BiliHelper B 站直播实用脚本 ## 功能组件 |plugin |version |description | |--------------------|--------------------|--------------------| |Login |19.12.27 |账号登录 | |Sleep |19.12.27 |休眠控制 | |MasterSite |19.12.27 |主站助手 | |Daily |19.12.27 |每日礼包 | |Heart |19.12.27 |双端心跳 | |Task |19.12.27 |每日任务 | |Silver |19.12.27 |银瓜子宝箱 | |Barrage |19.12.27 |活跃弹幕 | |Silver2Coin |19.12.27 |银瓜子换硬币 | |GiftSend |19.12.27 |礼物赠送 | |GroupSignIn |19.12.27 |友爱社签到 | |GiftHeart |19.12.27 |心跳礼物 | |MaterialObject |19.12.27 |实物抽奖 | |AloneTcpClient |19.12.27 |独立监控 | |ZoneTcpClient |19.12.27 |分区监控 | |StormRaffle |20.01.03 |节奏风暴 | |GiftRaffle |20.01.03 |活动礼物 | |PkRaffle |20.01.03 |大乱斗 | |GuardRaffle |20.01.03 |舰长总督 | |AnchorRaffle |20.01.11 |天选时刻 | |AwardRecord |19.12.27 |获奖通知 | |Statistics |19.12.27 |数据统计 | ## 打赏赞助 ![](https://i.loli.net/2019/07/13/5d2963e5cc1eb22973.png) > 待添加 ## 未完成功能 |待续 | |-----------| |多用户 | ## 环境依赖 |Requirement | |--------------------| |PHP >=7.0 | |php_curl | |php_sockets | |php_openssl | |php_json | |php_zlib | |php_mbstring | 通常使用 `composer` 工具会自动检测上述依赖问题。 ## Composer * 项目 `composer.lock` 基于阿里云Composer镜像生成 + 阿里云(推荐) ``` # 使用帮助 https://developer.aliyun.com/composer # 使用命令 > composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ ``` * 腾讯云(备用) ``` # 使用帮助 https://mirrors.cloud.tencent.com/composer/ # 使用命令 composer config -g repos.packagist composer https://mirrors.cloud.tencent.com/composer/ ``` ## 使用指南 1. 下载(克隆)项目代码,初始化项目 ``` $ git clone https://github.com/lkeme/BiliHelper-personal.git $ cd BiliHelper-personal/conf $ cp user.conf.example user.conf ``` 2. 使用 [composer](https://getcomposer.org/download/) 工具进行安装 ``` $ composer install ``` 3. 按照说明修改配置文件 `user.conf`,只需填写帐号密码即可 4. 运行测试 ``` $ php index.php ``` > 以下是`多开方案`,单个账户可以无视 5. 复制一份example配置文件,修改账号密码即可 ``` $ php index.php example.conf ``` 6. 请保证配置文件存在,否则默认加载`user.conf`配置文件

## 升级指南 1. 进入项目目录 ``` $ cd BiliHelper-personal ``` 2. 拉取最新代码 ``` $ git pull ``` 3. 更新依赖库 ``` $ composer install ``` 4. 如果使用 systemd 等,需要重启服务 ``` $ systemctl restart bilibili ``` ## 部署指南 如果你将 BiliHelper-personal 部署到线上服务器时,则需要配置一个进程监控器来监测 `php index.php` 命令,在它意外退出时自动重启。 通常可以使用以下的方式 - systemd (推荐) - Supervisor - screen (自用) - nohup ## systemd 脚本 ``` # /usr/lib/systemd/system/bilibili.service [Unit] Description=Bili Helper Manager Documentation=https://github.com/lkeme/BiliHelper-personal After=network.target [Service] ExecStart=/usr/bin/php /path/to/your/BiliHelper-personal/index.php Restart=always [Install] WantedBy=multi-user.target ``` ## Supervisor 配置 ``` [program:bilibili] process_name=%(program_name)s command=php /path/to/your/BiliHelper-personal/index.php autostart=true autorestart=true redirect_stderr=true stdout_logfile=/tmp/bilibili.log ``` ## 报错通知问题 脚本出现 error 级别的报错,会调用通知地址进行提醒,这里推荐两个服务 |服务|官网| |---|---| |Server酱|https://sc.ftqq.com/| |TelegramBot|https://core.telegram.org/bots/api| 示范如下 ``` # Server酱 # 自行替换 APP_CALLBACK="https://sc.ftqq.com/.send?text={message}" # TelegramBot # 自行替换 APP_CALLBACK="https://api.telegram.org/bot/sendMessage?chat_id=&text={message}" ``` `{message}` 部分会自动替换成错误信息,接口采用 get 方式发送 ## 直播间 ID 问题 文件 `user.conf` 里 `ROOM_ID` 配置,填写此项可以清空临过期礼物给指定直播间。 `ROOM_LIST` 配置,使用长位直播间,填写此项可以清空临礼物给指定有勋章的直播间。 `FEED_FILL` 配置,搭配上一条使用,使用过期礼物或者倒序使用正常礼物。 `SOCKET_ROOM_ID` 配置,监控使用,暂时没用到。 通常可以在直播间页面的 url 获取到它 ``` http://live.bilibili.com/9522051 ``` 长位直播间ID获取 ``` https://api.live.bilibili.com/room/v1/Room/room_init?id=3 ``` 所有直播间号码小于 1000 的直播间为短号,部分4位直播间也为短号, 该脚本在每次启动会自动修正部分功能,特殊标注的请留意。 ## 相关 > [BilibiliHelper](https://github.com/metowolf/BilibiliHelper) > [BiliHelper](https://github.com/lkeme/BiliHelper) > [Github](https://github.com/) ## License 许可证 BiliHelper is under the MIT license. 本项目基于 MIT 协议发布,并增加了 SATA 协议。 当你使用了使用 SATA 的开源软件或文档的时候,在遵守基础许可证的前提下,你必须马不停蹄地给你所使用的开源项目 “点赞” ,比如在 GitHub 上 star,然后你必须感谢这个帮助了你的开源项目的作者,作者信息可以在许可证头部的版权声明部分找到。 本项目的所有代码文件、配置项,除另有说明外,均基于上述介绍的协议发布,具体请看分支下的 LICENSE。 此处的文字仅用于说明,条款以 LICENSE 文件中的内容为准。