`LITTLE_MESSAGE_BOX`: replyF.little_message_box, //小消息
`MESSAGEBOX_USER_MEDAL_CHANGE`: replyF.messagebox_user_medal_change, //粉丝牌切换
`HOT_RANK_SETTLEMENT`: replyF.hot_rank_settlement, //热门榜获得
+ `HOT_RANK_SETTLEMENT_V2`: replyF.hot_rank_settlement_v2, //热门榜获得v2
`HOT_RANK_CHANGED`: replyF.hot_rank_changed, //热门榜变动
+ `HOT_RANK_CHANGED_V2`: replyF.hot_rank_changed_v2, //热门榜变动v2
`CARD_MSG`: nil, //提示关注
`WIDGET_BANNER`: nil, //每日任务
`ROOM_ADMINS`: nil, //房管列表
msglog.Base_add("房").Log_show_control(false).L(`I: `, "活动", title, "已开启")
}
+var (
+ watched int //观看人数
+)
+
//Msg-观看人数
func (replyF) watched_change(s string) {
var data ws_msg.WATCHED_CHANGE
json.Unmarshal([]byte(s), &data)
- fmt.Printf("\t观看人数:%d\n", data.Data.Num)
- msglog.Base_add("房").Log_show_control(false).L(`I: `, "观看人数", data.Data.Num)
+ if float64(data.Data.Num) < float64(watched)*1.1 && data.Data.Num >= watched {
+ return
+ }
+ watched = data.Data.Num
+ fmt.Printf("\t观看人数:%d\n", watched)
+ msglog.Base_add("房").Log_show_control(false).L(`I: `, "观看人数", watched)
}
//Msg-特殊礼物,当前仅观察到节奏风暴
}
}
+//Msg-热门榜变动V2
+func (replyF) hot_rank_changed_v2(s string) {
+ msglog := msglog.Base_add("房").Log_show_control(false)
+
+ var type_item ws_msg.HOT_RANK_CHANGED_V2
+ if e := json.Unmarshal([]byte(s), &type_item); e != nil {
+ msglog.L(`E: `, e)
+ }
+ if type_item.Data.AreaName != `` {
+ c.Note = type_item.Data.AreaName + " "
+ if type_item.Data.Rank == 0 {
+ c.Note += "50+"
+ } else {
+ c.Note += strconv.Itoa(type_item.Data.Rank)
+ }
+ fmt.Printf("%s\t%s\n", "热门榜", c.Note)
+ msglog.L(`I: `, "热门榜", c.Note)
+ }
+}
+
//Msg-热门榜获得
func (replyF) hot_rank_settlement(s string) {
msglog := msglog.Base_add("房")
msglog.L(`I: `, "热门榜", tmp)
}
+//Msg-热门榜获得v2
+func (replyF) hot_rank_settlement_v2(s string) {
+ msglog := msglog.Base_add("房")
+
+ var type_item ws_msg.HOT_RANK_SETTLEMENT_V2
+ if e := json.Unmarshal([]byte(s), &type_item); e != nil {
+ msglog.L(`E: `, e)
+ }
+ var tmp = `获得:`
+ if type_item.Data.AreaName != `` {
+ tmp += type_item.Data.AreaName + " 第"
+ }
+ if type_item.Data.Rank != 0 {
+ tmp += strconv.Itoa(type_item.Data.Rank)
+ }
+ Gui_show(tmp, "0rank")
+ c.Danmu_Main_mq.Push_tag(`tts`, Danmu_mq_t{ //传入消息队列
+ uid: "0rank",
+ m: map[string]string{
+ `{Area_name}`: type_item.Data.AreaName,
+ `{Rank}`: strconv.Itoa(type_item.Data.Rank),
+ },
+ })
+ msglog.L(`I: `, "热门榜", tmp)
+}
+
//Msg-小消息
func (replyF) little_message_box(s string) {
msglog := msglog.Base_add("系统")
F "github.com/qydysky/bili_danmu/F"
p "github.com/qydysky/part"
- s "github.com/qydysky/part/buf"
msgq "github.com/qydysky/part/msgq"
reqf "github.com/qydysky/part/reqf"
o = contrl_win_running
//y("sssss",load_face(""))
{ //加载特定信息驻留时长
- buf := s.New()
- buf.Load("config/config_gtk_keep_key.json")
+ bb, err := ioutil.ReadFile("config/config_gtk_keep_key.json")
+ if err != nil {
+ return
+ }
+ var buf map[string]interface{}
+ json.Unmarshal(bb, &buf)
for k, _ := range keep_key {
delete(keep_key, k)
}
- for k, v := range buf.B {
+ for k, v := range buf {
keep_key[k] = int(v.(float64))
}
}
--- /dev/null
+package part
+
+type HOT_RANK_CHANGED_V2 struct {
+ Cmd string `json:"cmd"`
+ Data HOT_RANK_CHANGED_V2_Data `json:"data"`
+}
+type HOT_RANK_CHANGED_V2_Data struct {
+ Rank int `json:"rank"`
+ Trend int `json:"trend"`
+ Countdown int `json:"countdown"`
+ Timestamp int `json:"timestamp"`
+ WebURL string `json:"web_url"`
+ LiveURL string `json:"live_url"`
+ BlinkURL string `json:"blink_url"`
+ LiveLinkURL string `json:"live_link_url"`
+ PcLinkURL string `json:"pc_link_url"`
+ Icon string `json:"icon"`
+ AreaName string `json:"area_name"`
+ RankDesc string `json:"rank_desc"`
+}
--- /dev/null
+package part
+
+type HOT_RANK_SETTLEMENT_V2 struct {
+ Cmd string `json:"cmd"`
+ Data HOT_RANK_SETTLEMENT_V2_Data `json:"data"`
+}
+type HOT_RANK_SETTLEMENT_V2_Data struct {
+ Rank int `json:"rank"`
+ Uname string `json:"uname"`
+ Face string `json:"face"`
+ Timestamp int `json:"timestamp"`
+ Icon string `json:"icon"`
+ AreaName string `json:"area_name"`
+ URL string `json:"url"`
+ CacheKey string `json:"cache_key"`
+ DmMsg string `json:"dm_msg"`
+}