]> 127.0.0.1 Git - bili_danmu/.git/commitdiff
大航海进入不提示修正
authorqydysky <qydysky@foxmail.com>
Thu, 18 Feb 2021 14:02:06 +0000 (22:02 +0800)
committerqydysky <qydysky@foxmail.com>
Thu, 18 Feb 2021 14:02:06 +0000 (22:02 +0800)
tts设置bug

README.md
Reply/Msg.go
Reply/Reply.go
Reply/tts.go
demo/config/config_tts.json

index 05217084c6d933396e5a30fbd90f9f0ff8c1c1e3..a5af3cc5abc57ba8078406c551695b78854591de 100644 (file)
--- a/README.md
+++ b/README.md
@@ -58,9 +58,11 @@ golang go version go1.15 linux/amd64
 - [x] 排行榜
 
 #### 当前支持功能
-以下内容可能过时,点击查看[当前支持功能](https://github.com/qydysky/bili_danmu/blob/master/Reply/F.go#L16)
-- [x] 签到
-- [x] 获取小心心
+以下内容可能过时,点击查看[当前支持功能(旧)](https://github.com/qydysky/bili_danmu/blob/master/Reply/F.go#L16),[功能配置(新)](https://github.com/qydysky/bili_danmu/blob/maintenance/demo/config/config_K_v.json)
+- [x] 银瓜子自动兑换硬币(日期更迭会触发)
+- [x] 可选有无粉丝牌发进房弹幕(有粉丝牌每日首条弹幕有经验)(日期更迭会触发)
+- [x] 签到(日期更迭会触发)
+- [x] 有粉丝牌获取小心心(日期更迭会触发)
 - [x] 自定义私信
 - [x] 自动切换粉丝牌
 - [x] 扫码登录
@@ -161,31 +163,61 @@ go build -v -tags `gtk` -o demo.exe -i main.go
 
 仅对显示效果进行处理,而不处理输出到日志。更多设置见`demo/config/config_F.json`
 
-### demo 
-前往[releases](https://github.com/qydysky/bili_danmu/releases)页下载对应系统版本。解压后进入`demo`目录(文件夹),运行`demo.run`(`demo.exe`)。
+### 运行 
+#### 方法
+1. 前往[releases](https://github.com/qydysky/bili_danmu/releases)页下载对应系统版本。解压后进入`demo`目录(文件夹),运行`demo.run`(`demo.exe`)。
 ```
-./demo.run -q 清晰度 -r 房间ID
+./demo.run [-q 清晰度 -r 房间ID]
 ```
 
-> 清晰度可取[数值](https://github.com/qydysky/bili_danmu/blob/cf52498a88e885fb66dbc94fb8652cb6fa35fb26/CV/Var.go#L37)
-> 弹幕及礼物会记录于danmu.log中
+2. clone本项目。进入`demo`目录(文件夹),运行:
+```
+go run [-tags "gtk"] main.go [-q 清晰度 -r 房间ID]
+```
 
-**部分功能需要在`demo`目录(文件夹)下放置`cookie.txt`才可用**
+#### 注意事项
+* 其中[]内的内容为可选项
+* 清晰度可取[数值](https://github.com/qydysky/bili_danmu/blob/cf52498a88e885fb66dbc94fb8652cb6fa35fb26/CV/Var.go#L37)
+* 法2的golang需1.15并建议使用最新提交
+* 弹幕及礼物会记录于danmu.log中
+* 部分功能(如获取小心心、签到、发送弹幕、获取原画等)**需要在`demo`目录(文件夹)下放置`cookie.txt`才可用** 或 **运行时按提示使用扫码登录成功后才可用(登录信息会保存在`demo/cookie.txt`中)**
 
 ### 效果展示
 以下内容可能过时,以实际运行为准
-- 命令窗口(以下为截取)
-```
-$ go run main.go 
-输入房间号: 213
-INFO: 2020/09/16 16:48:11 [bili_danmu.go 测试] [连接到房间 213]
-INFO: 2020/09/16 16:48:11 [bili_danmu.go 测试] [连接 wss://tx-sh-live-comet-01.chat.bilibili.com/sub]
-INFO: 2020/09/16 16:48:11 [bili_danmu.go 测试] [已连接到房间 213]
-INFO: 2020/09/16 16:48:11 [bili_danmu.go 测试] [开始心跳]
-```
+
+#### 命令窗口(以下为截取)
 ```
-//大航海进入
->>> 欢迎 舰长 茶摊儿在森林喝碗山海 进入直播间
+//启动
+qydysky@DESKTOP-5CV1EFA:~/程序/git/go/src/github.com/qydysky/bili_danmu/demo$ go run -tags "gtk" main.go -r 21320551
+I: 2021/02/18 20:33:09 api 小心心加密 [如需加密,会自动打开 http://127.0.0.1:33673]
+I: 2021/02/18 20:33:09 api 小心心加密 [启动]
+PID:14544
+房间号: 21320551
+T: 2021/02/18 20:33:09 api 新建 [ok]
+T: 2021/02/18 20:33:09 api 获取房号 [获取房号]
+T: 2021/02/18 20:33:10 api LIVE_BUVID [获取LIVE_BUVID]
+I: 2021/02/18 20:33:10 api LIVE_BUVID [存在]
+T: 2021/02/18 20:33:11 api 获取Token [ok]
+I: 2021/02/18 20:33:13 api 获取直播流 [轮播中]
+T: 2021/02/18 20:33:13 api 银瓜子=>硬币 [银瓜子=>硬币]
+I: 2021/02/18 20:33:15 api 银瓜子=>硬币 [现在有银瓜子 540 个]
+W: 2021/02/18 20:33:15 api 银瓜子=>硬币 [当前银瓜子数量不足]
+T: 2021/02/18 20:33:15 api 签到 [签到]
+I: 2021/02/18 20:33:19 api 获取客户版本 [api version 2.6.25]
+I: 2021/02/18 20:33:21 api 获取热门榜 [热门榜: 虚拟主播 50+]
+I: 2021/02/18 20:33:23 bilidanmu Demo [连接到房间 21320551]
+I: 2021/02/18 20:33:23 bilidanmu Demo [连接 wss://tx-bj-live-comet-02.chat.bilibili.com/sub]
+T: 2021/02/18 20:33:23 api 小心心 [获取小心心]
+I: 2021/02/18 20:33:23 bilidanmu Demo [已连接到房间 乙女音Official ( 21320551 )]
+I: 2021/02/18 20:33:23 bilidanmu Demo [【b限】学《巴啦啦小魔仙》]
+I: 2021/02/18 20:33:24 bilidanmu Demo [获取人气]
+T: 2021/02/18 20:33:25 api 礼物列表 [获取礼物列表]
+I: 2021/02/18 20:33:27 api 获取舰长数 [舰长数获取成功 471]
+I: 2021/02/18 20:33:27 弹幕发送 [发送   至 21320551]
+I: 2021/02/18 20:33:27 功能 [营收 ¥0.00]
+I: 2021/02/18 20:33:29 api 礼物列表 [成功]
+I: 2021/02/18 20:33:29 api 小心心 [今天小心心已满!]
 ```
 ```
 //普通弹幕
@@ -195,9 +227,13 @@ INFO: 2020/09/16 16:48:11 [bili_danmu.go 测试] [开始心跳]
 吓人
 ```
 ```
+//大航海
+>>> 欢迎舰长 Mana_单推... 进入直播间
+```
+```
 //礼物
 ====
-孤单猫与淋雨猪 投喂 1314 x 辣条 ( 131400 x 金瓜子 )
+超级角击 投喂 1 个 摩天轮
 ====
 ```
 ```
@@ -212,9 +248,10 @@ INFO: 2020/09/16 16:48:11 [bili_danmu.go 测试] [开始心跳]
 ```
 //SC
 ====
-SC:  吹舞火 ¥ 30
-我旁边的一万是幻觉吗?
-私の隣の一万は幻ですか?
+SC:  凪穗 
+
+有了OTO能量,我们才能够坚强,prprpr
+OTOエネルギーがあれば、私たちは強くなれる。prprprpr
 ====
 ```
 ```
@@ -228,7 +265,32 @@ INFO: 2020/11/20 15:40:15 [弹幕发送] [发送 [你知道么] 至 394988]
 INFO: 2020/11/20 15:42:38 [弹幕发送] [发送 11111111111111111111 至 394988]
 11111111111111111111
 ```
+```
+//其他会出现在命令行的信息
+//热门榜
+I: 2021/02/18 14:59:00 Msg 房 [热门榜 虚拟 4]
+//人气
+I: 2021/02/18 14:58:51 Reply 人气 [当前人气 450869]
+//营收
+I: 2021/02/18 14:58:24 功能 [营收 ¥247.80]
+//语音
+I: 2021/02/18 14:59:00 TTS [0superchat SC:  三得笠·阿克曼茶   8888888  天才oto天才 ]
+```
 ctrl+c退出,会同时追加记录到文件danmu.log中(文件记录完整信息,不会减少附加功能作用的弹幕)
+
+#### danmu.log
+基本同命令行显示,不同下列:
+```
+//弹幕 上述合并、忽略都不会起作用
+I: 2021/02/18 07:24:55 Msg [从天上掉下来的骚年 : 秀才]
+//礼物 超过设定限额的将会在命令行中显示,级别为I
+T: 2021/02/18 07:30:30 Msg 礼 [正道的光博航同志 投喂 1 个 上上签 ¥1.0]
+I: 2021/02/18 14:52:31 Msg 礼 [三千千千千千千 投喂 1 个 爱之魔力 ¥28.0]
+//sc
+I: 2021/02/18 14:40:54 Msg 礼 [SC:  加拉入我心 ¥ 30 关注了乙女音,我才能够得到快乐 乙女音符に注目してこそ、私は幸せになれるのです。]
+I: 2021/02/18 21:48:49 Msg 房 [欢迎舰长 Mana_单推... 进入直播间]
+```
+
 - 流保存以及弹幕ass
 ```
 结束后会保存为
index bc347b98344cf24e68e125978d05f5a51542f616..6639af94ac1331e0a17a1402e50b0cf4a26b7e07 100644 (file)
@@ -60,7 +60,7 @@ var Msg_map = map[string]func(replyF, string) {
        "WIN_ACTIVITY":replyF.win_activity,//活动
        "SPECIAL_GIFT":replyF.special_gift,//节奏风暴
        "GUARD_BUY":nil,//replyF.guard_buy,//大航海购买
-       "WELCOME_GUARD":replyF.welcome_guard,//大航海进入
+       "WELCOME_GUARD":nil,//replyF.welcome_guard,//大航海进入 ?已废弃?
        "DANMU_MSG":replyF.danmu,//弹幕
        "ROOM_CHANGE":replyF.room_change,//房间信息分区改变
        "ROOM_SILENT_OFF":replyF.roomsilent,//禁言结束
@@ -74,7 +74,7 @@ var Msg_map = map[string]func(replyF, string) {
        "SUPER_CHAT_MESSAGE":nil,//replyF.super_chat_message,//SC
        "SUPER_CHAT_MESSAGE_JPN":replyF.super_chat_message,//SC
        "PANEL":nil,//replyF.panel,//排行榜 被HOT_RANK_CHANGED替代
-       "ENTRY_EFFECT":nil,//replyF.entry_effect,//进入特效
+       "ENTRY_EFFECT":replyF.entry_effect,//进入特效
        "ROOM_REAL_TIME_MESSAGE_UPDATE":nil,//replyF.roominfo,//粉丝数
 }
 
index bb525368baf38e21f8e7dd9784864b3aab1610ca..260c052ba53436bd440837a9da09c0d4df3f3090 100644 (file)
@@ -4,6 +4,7 @@ import (
        "fmt"
        "time"
        "bytes"
+       "strings"
        "strconv"
        "compress/zlib"
        "encoding/json"
@@ -604,18 +605,41 @@ func (replyF) messagebox_user_medal_change(s string){
        }
 }
 
-//Msg-进入特效,大多为大航海进入,信息少,使用welcome_guard替代
+//Msg-进入特效
 func (replyF) entry_effect(s string){
-       msglog := msglog.Base_add("房").Log_show_control(false)
 
-       if copy_writing := p.Json().GetValFromS(s, "data.copy_writing");copy_writing == nil {
-               msglog.L(`E: `, "copy_writing", copy_writing)
-               return
-       } else {
-               msglog.L(`I: `, copy_writing)
-               fmt.Println(copy_writing)
+       var res struct{
+               Data struct{
+                       Copy_writing string `json:"copy_writing"`
+               } `json:"data"`
+       }
+       if e := json.Unmarshal([]byte(s), &res);e != nil {
+               msglog.L(`E: `, e)
+       }
+       //处理特殊字符
+       copy_writing := strings.ReplaceAll(res.Data.Copy_writing, `<%`, ``)
+       copy_writing = strings.ReplaceAll(copy_writing, `%>`, ``)
+
+       img := "0default"
+       if strings.Contains(copy_writing, `总督`) {
+               img = "0level1"
+       } else if strings.Contains(copy_writing, `提督`) {
+               img = "0level2"
+       } else if strings.Contains(copy_writing, `舰长`) {
+               img = "0level3"
        }
 
+       {//语言tts
+               c.Danmu_Main_mq.Push_tag(`tts`,Danmu_mq_t{//传入消息队列
+                       uid:img,
+                       msg:fmt.Sprintln(copy_writing),
+               })
+       }
+       fmt.Print(">>> ")
+       fmt.Println(copy_writing)
+       Gui_show(copy_writing, img)
+
+       msglog.Base_add("房").Log_show_control(false).L(`I: `, copy_writing)
 }
 
 //Msg-房间禁言
index 85c44bcb337af36c3b6b9f09a3757d4bcc2a43ef..f1ee2b892af2eeaba2a298796bc114849d27a732 100644 (file)
@@ -75,11 +75,15 @@ func init(){
 
 func TTS(uid,msg string) {
        if tts_limit.TO() {return}
+
+       v,ok := tts_setting[uid]
+       if !ok || v == ``{return}
+
        tts_log.L(`I: `,uid, strings.ReplaceAll(msg, "\n", " "))
+
+       msg = strings.ReplaceAll(v, "{D}", msg)
+
        req := p.Req()
-       if v,ok := tts_setting[uid];ok{
-               msg = strings.ReplaceAll(v, "{D}", msg)
-       }
        if err := req.Reqf(p.Rval{
                Url:`https://fanyi.baidu.com/gettts?lan=zh&text=`+ url.QueryEscape(msg) +`&spd=5&source=web`,
                SaveToPath:p.Sys().Cdir()+`/tts.mp3`,
index dfaf7cad7ac9c6dba5d6f5a01b7d7163249298e1..e9e05d111e738265d9d3adce27eedaeda7c7d7ca 100644 (file)
@@ -1,7 +1,11 @@
 {
+    "help":"空字符串将不触发,{D}会被替换",
     "0buyguide": "感谢{D}",
     "0gift": "感谢{D}",
     "0superchat": "感谢{D}",
     "0multi": "观众:{D}",
-    "0rank":"{D}"
+    "0rank":"{D}",
+    "0level1":"{D}",
+    "0level2":"",
+    "0level3":""
 }
\ No newline at end of file