|
|
@@ -295,25 +295,26 @@ public class ZLMHttpHookListener {
|
|
|
|
|
|
String streamId = json.getString("stream");
|
|
|
String app = json.getString("app");
|
|
|
- StreamInfo streamInfo = redisCatchStorage.queryPlayByStreamId(streamId);
|
|
|
-
|
|
|
|
|
|
if ("rtp".equals(app)){
|
|
|
JSONObject ret = new JSONObject();
|
|
|
ret.put("code", 0);
|
|
|
ret.put("close", true);
|
|
|
- if (streamInfo != null) {
|
|
|
- if (redisCatchStorage.isChannelSendingRTP(streamInfo.getChannelId())) {
|
|
|
+ StreamInfo streamInfoForPlayCatch = redisCatchStorage.queryPlayByStreamId(streamId);
|
|
|
+ if (streamInfoForPlayCatch != null) {
|
|
|
+ if (redisCatchStorage.isChannelSendingRTP(streamInfoForPlayCatch.getChannelId())) {
|
|
|
ret.put("close", false);
|
|
|
} else {
|
|
|
- cmder.streamByeCmd(streamInfo.getDeviceID(), streamInfo.getChannelId());
|
|
|
- redisCatchStorage.stopPlay(streamInfo);
|
|
|
- storager.stopPlay(streamInfo.getDeviceID(), streamInfo.getChannelId());
|
|
|
+ cmder.streamByeCmd(streamInfoForPlayCatch.getDeviceID(), streamInfoForPlayCatch.getChannelId());
|
|
|
+ redisCatchStorage.stopPlay(streamInfoForPlayCatch);
|
|
|
+ storager.stopPlay(streamInfoForPlayCatch.getDeviceID(), streamInfoForPlayCatch.getChannelId());
|
|
|
}
|
|
|
}else{
|
|
|
- cmder.streamByeCmd(streamInfo.getDeviceID(), streamInfo.getChannelId());
|
|
|
- streamInfo = redisCatchStorage.queryPlaybackByStreamId(streamId);
|
|
|
- redisCatchStorage.stopPlayback(streamInfo);
|
|
|
+ StreamInfo streamInfoForPlayBackCatch = redisCatchStorage.queryPlaybackByStreamId(streamId);
|
|
|
+ if (streamInfoForPlayBackCatch != null) {
|
|
|
+ cmder.streamByeCmd(streamInfoForPlayBackCatch.getDeviceID(), streamInfoForPlayBackCatch.getChannelId());
|
|
|
+ redisCatchStorage.stopPlayback(streamInfoForPlayBackCatch);
|
|
|
+ }
|
|
|
}
|
|
|
return new ResponseEntity<String>(ret.toString(),HttpStatus.OK);
|
|
|
}else {
|