修复直播状态
This commit is contained in:
parent
0158f2ebf0
commit
d9ec693694
2
pom.xml
2
pom.xml
@ -14,7 +14,7 @@
|
|||||||
<name>bilibili</name>
|
<name>bilibili</name>
|
||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
<properties>
|
<properties>
|
||||||
<java.version>17</java.version>
|
<java.version>1.8</java.version>
|
||||||
<kotlin.version>1.6.10</kotlin.version>
|
<kotlin.version>1.6.10</kotlin.version>
|
||||||
</properties>
|
</properties>
|
||||||
<dependencies>
|
<dependencies>
|
||||||
|
@ -312,13 +312,8 @@ public class Live implements ApplicationContextAware {
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
int popular = LiveUtils.bytesToInt2(bytes, 0);
|
int popular = LiveUtils.bytesToInt2(bytes, 0);
|
||||||
info.setPopular(popular);
|
info.setPopular(popular);
|
||||||
if(popular>1){
|
|
||||||
upData.setLive(1);
|
|
||||||
}else{
|
|
||||||
upData.setLive(0);
|
|
||||||
}
|
|
||||||
Log.i(upData.getRoomid()+" >>> "+upData.getLive()+" >> "+popular);
|
|
||||||
}
|
}
|
||||||
|
upData.setLive(LiveUtils.getLiveState(roomId)?1:0);
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
@ -348,14 +348,14 @@ public class LiveUtils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static JSONObject getLiveInfo(int roomId) {
|
public static JSONObject getLiveInfo(int roomId) {
|
||||||
return http_get("https://api.live.bilibili.com/xlive/web-room/v1/index/getInfoByRoom?room_id=" + roomId);
|
return http_get("https://api.live.bilibili.com/xlive/web-room/v1/index/getInfoByRoom?room_id=" + roomId+"&protocol=0,1&format=0,1,2&codec=0,1&qn=10000&platform=web&ptype=8");
|
||||||
|
|
||||||
}
|
}
|
||||||
private static JSONObject getLiveState(int roomId){
|
public static boolean getLiveState(int roomId){
|
||||||
return http_get("https://api.live.bilibili.com/xlive/web-room/v2/index/getRoomPlayInfo?room_id=" + roomId);
|
return liveStateMap.get(roomId);
|
||||||
}
|
}
|
||||||
public static void reloadLiveState(int roomId){
|
public static void reloadLiveState(int roomId){
|
||||||
JSONObject json = getLiveState(roomId);
|
JSONObject json = getLiveInfo(roomId);
|
||||||
if(json!=null){
|
if(json!=null){
|
||||||
liveStateMap.put(roomId,json.getJSONObject("data").getInteger("live_status") == 1);
|
liveStateMap.put(roomId,json.getJSONObject("data").getInteger("live_status") == 1);
|
||||||
}
|
}
|
||||||
@ -426,10 +426,6 @@ public class LiveUtils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
int index=1000;
|
|
||||||
for (int i = 0; i < index; i++) {
|
|
||||||
LiveUtils.getLiveInfo(21686237);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -52,10 +52,10 @@ public class ApplicationInit implements ApplicationRunner {
|
|||||||
public void run() {
|
public void run() {
|
||||||
Date date = new Date();
|
Date date = new Date();
|
||||||
String time = new SimpleDateFormat("HH:mm").format(date);
|
String time = new SimpleDateFormat("HH:mm").format(date);
|
||||||
checkLive();
|
|
||||||
if (time.equals(oldTime)) {
|
if (time.equals(oldTime)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
checkLive();
|
||||||
oldTime = time;
|
oldTime = time;
|
||||||
switch (time) {
|
switch (time) {
|
||||||
case "00:00":
|
case "00:00":
|
||||||
@ -94,7 +94,7 @@ public class ApplicationInit implements ApplicationRunner {
|
|||||||
|
|
||||||
private void checkLive() {
|
private void checkLive() {
|
||||||
for (BilibiliUpInfo info : service.getUpInfo()) {
|
for (BilibiliUpInfo info : service.getUpInfo()) {
|
||||||
// LiveUtils.reloadLiveState(info.getRoomid());
|
LiveUtils.reloadLiveState(info.getRoomid());
|
||||||
if (info.getOfflinelistening() == 1) {
|
if (info.getOfflinelistening() == 1) {
|
||||||
if (info.getEnable() == 1) {
|
if (info.getEnable() == 1) {
|
||||||
Live live = LiveUtils.liveContains(info);
|
Live live = LiveUtils.liveContains(info);
|
||||||
|
Loading…
Reference in New Issue
Block a user