Acfunlive监视直播状态并推送到QQ

AcfunLive除了有录制直播,系统内推送开播通知的功能以外。
还集成了MiraiGo,可把开播信息自动推送到QQ里。
本文具体介绍如何设定让它长期自动运行。
GitHub地址:https://github.com/orzogc/acfunlive
需注意的是,因腾讯对第三方客户端上的限制,开播信息并不一定能发送成功,请开播后留意。

Windows系统上的使用方法

下载时选择“windows-cli”的版本

解压并运行

解压后,在资源管理器的空白处按“shift+鼠标右键”,然后打开PowerShell窗口。
在窗口中输入以下参数启动acfunlive,生成配置文件。

acfunlive -listen

修改配置文件

右键Config.jison文件,以记事本编辑保存此文件即可。
一般只需要动以下三个参数,设定管理员QQ和小号

"adminQQ": 171884361,
"botQQ": 171884362,
"botQQPassword": "123456789",

首次启动BOT

用以下参数启动acfunlive

acfunlive -listen -mirai 

获取登录验证码Ticket

小号最好先用手机登录一遍,然后把安全登录保护的那些限制能关的都关了,再进行以下操作
复制 ssl.captcha.qq.com/ 这一段网址。
鼠标选取好后,快捷键按“Ctrl+ins”复制。(即删除键del上面的按钮)

随后打开浏览器,先按F12把控制台召唤出来。
再打开网址,完成验证,控制台按照图中的顺序找出Ticket。

看到Ticket后,复制回去提交,出现以下提示,即可完成登录。!

通过管理QQ向小号添加订阅等操作

此时acfunlive程序可以让它自动运行不管了,可通过管理员QQ进行订阅等设置
例如

addnotifyon A站UID
#添加UID订阅

addqqgroup A站UID QQ群号
#把此UID的开播状态发送到此群号
#添加订阅和推送的顺序不能乱,不然设定无效。

添加后台服务,让acfunlive开机自动后台运行

GitHub地址:https://github.com/winsw/winsw/releases

使用WinSW添加后台服务。

把WinSW.exe复制到acunlive的目录里,
更名为LiveBot.exe
新建一个txt,把以下内容填写好后保存并更名为 "LiveBot.xml"

<service>
<id>LiveBot</id>
<name>Acfun_LiveBot</name>
<description>acfunlive机器人</description>
<executable>"D:\software\acfunlive-0.5.9\acfunlive.exe"</executable>
#此处请手动修改自己的acfunlive程序文件的绝对路径
<arguments>-listen -mirai -webui</arguments>
<logmode>reset</logmode>
</service>

WinSW的安装

打开开头的命令行窗口
输入以下参数

LiveBot.exe install
#安装失败了,可以用以下参数,卸载服务后修改xml文件
#LiveBot.exe uninstall

在任务管理和服务里能看到刚注册的服务后可以手动启动以下程序是否正常。
看到能正常后台运行即可。

此时可以在浏览器输入
127.0.0.1:51890
就可以通过网页查看运行日志和添加UP主。
但发送开播信息等设置还得用管理员QQ来添加

CentOS等Liunx系统使用方法

此处选择"linux-cli"版本

解压并运行

新建文件夹

mkdir LiveBot && cd LiveBot

解压赋权:

tar -zxvf acfunlive-0.5.6-linux-cli-amd64.tar.gz
chmod  777 acfunlive

运行一遍acfunlive,生成配置文件

./acfunlive -listen

修改配置文件

随后关掉程序,根据上面的方法配置文件

vim config.json

以上配置文件设置好后,在ssh用以下启动参数,开一遍:

./acfunlive -listen -mirai

按照以上方法登录小号QQ,登录好后即可通过管理QQ发送指令设置

最后设置后台守护,让程序后台运行。

config.json文件详解

编辑config.json文件需要关掉acfunlive程序

{
    "source": "flv",  // 直播源,有hls和flv两种,默认是flv
    "output": "mp4",  // 下载的直播视频的格式,必须是有效的视频格式后缀名
    "webPort": 51880, // web API的本地端口,使用web UI的话不能修改这个端口
    "directory": "",  // 直播视频和弹幕下载结束后会被移动到该文件夹,其值最好是绝对路径,会被live.json里的设置覆盖
    "acfun": {
        "account": "", // AcFun帐号邮箱或手机号,目前只用于直播间挂机,不需要可以为空
        "password": "" // AcFun帐号密码
    },
    "autoKeepOnline": true, // 是否自动在有守护徽章的直播间挂机,需要设置AcFun帐号和密码
    "mirai": {
        "adminQQ": 12345,        // 用来发送命令控制本程序的管理者QQ,可选
        "botQQ": 123456,         // QQ机器人的QQ号
        "botQQPassword": "abcde" // QQ机器人QQ号的密码
        "sendQQ": [              // 发送开播提醒到数组里的所有QQ(需要QQ机器人添加这些QQ为好友),会被live.json里的设置覆盖
            12345,
            123456
        ],
        "sendQQGroup": [        // 发送开播提醒到数组里的所有QQ群(需要QQ机器人在这些QQ群里,最好是管理员,会@全体成员),会被live.json里的设置覆盖
            1234567
        ]
    }
}

live.json文件详解

live.json可以在程序运行中编辑,程序检测到有改动后会重新读取设置
但大部分选项都可以通过网页或者管理者QQ的命令进行更改,并不需要手动编辑


[
    {
        "uid": 23682490,    // 主播的uid
        "name": "AC娘本体", // 主播的昵称
        "notify": {
            "notifyOn": true,     // 主播开播通知
            "notifyOff": false,   // 主播下播通知
            "notifyRecord": true, // 下载主播直播相关的通知
            "notifyDanmu": false  // 下载主播直播弹幕相关的通知
            },
        "record": true,     // 是否下载直播视频
        "danmu": true,      // 是否下载直播弹幕
        "keepOnline": true, // 是否在该主播的直播间挂机,目前主要用于挂粉丝牌等级
        "bitrate": 0,       // 设置要下载的直播源的最高码率(Kbps),需自行手动修改设置
        "directory": "",    // 直播视频和弹幕下载结束后会被移动到该文件夹,其值最好是绝对路径,会覆盖config.json里的设置,需自行手动修改设置
        "sendQQ": [         // 发送开播提醒到数组里的所有QQ(需要QQ机器人添加这些QQ为好友),会覆盖config.json里的设置,QQ号小于等于0会取消通知QQ
            12345,
            123456
        ],
        "sendQQGroup": [ // 发送开播提醒到数组里的所有QQ群(需要QQ机器人在这些QQ群里,最好是管理员,会@全体成员),会覆盖config.json里的设置,QQ群号小于等于0会取消通知QQ群
            1234567
        ]
    }
]

Help 参数说明:

listlive:列出正在直播的主播
listrecord:列出正在下载的直播视频
listdanmu:列出正在下载的直播弹幕
startwebapi:启动web API服务器
stopwebapi:停止web API服务器
startwebui:启动web UI服务器,需要web API服务器运行,如果web API服务器没启动会启动web API服务器
stopwebui:停止web UI服务器
startmirai:启动Mirai功能,可通过QQ发送开播通知。
addnotifyon uid:订阅指定主播的开播提醒,uid在主播的网页版个人主页查看
delnotifyon uid:取消订阅指定主播的开播提醒
addnotifyoff uid:订阅指定主播的下播提醒
delnotifyoff uid:取消订阅指定主播的下播提醒
addnotifyrecord uid:通知指定主播的直播视频下载
delnotifyrecord uid:取消通知指定主播的直播视频下载
addnotifydanmu uid:通知指定主播的直播弹幕下载
delnotifydanmu uid:取消通知指定主播的直播弹幕下载
addrecord uid:自动下载指定主播的直播视频
delrecord uid:取消自动下载指定主播的直播视频
adddanmu uid:自动下载指定主播的直播弹幕
deldanmu uid:取消自动下载指定主播的直播弹幕
addkeeponline uid:指定主播直播时在其直播间挂机
delkeeponline uid:取消在指定主播直播时在其直播间挂机
delconfig uid:删除指定主播的所有设置
getdlurl uid:查看指定主播是否在直播,如在直播输出其直播源地址
addqq uid QQ号:设置将指定主播的开播提醒发送到指定QQ号,需要QQ机器人已经添加该QQ为好友
delqq uid QQ号:取消设置将指定主播的开播提醒发送到指定QQ号
cancelqq uid:取消设置将指定主播的开播提醒发送到任何QQ
addqqgroup uid QQ群号:设置将指定主播的开播提醒发送到指定QQ群号,需要QQ机器人已经加入该QQ群,最好是管理员,会@全体成员
delqqgroup uid QQ群号:取消设置将指定主播的开播提醒发送到指定QQ群号
cancelqqgroup uid:取消设置将指定主播的开播提醒发送到任何QQ群
startrecord uid:临时下载指定主播的直播视频,如果没有设置自动下载该主播的直播视频,这次为一次性的下载
stoprecord uid:正在下载指定主播的直播视频时取消下载
startdanmu uid:临时下载指定主播的直播弹幕,如果没有设置自动下载该主播的直播弹幕,这次为一次性的下载
stopdanmu uid:正在下载指定主播的直播弹幕时取消下载
startrecdan uid:临时下载指定主播的直播视频和弹幕,如果没有设置自动下载该主播的直播视频和弹幕,这次为一次性的下载
stoprecdan uid:正在下载指定主播的直播视频和弹幕时取消下载
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!