@@ -103,7 +103,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_server_keepalive " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onServerKeepalive ( @RequestBody JSONObject json ) {
public JSONObject onServerKeepalive ( @RequestBody JSONObject json ) {
logger . info ( " [ ZLM HOOK ] on_server_keepalive API调用, 参数: " + json . toString ( ) ) ;
String mediaServerId = json . getString ( " mediaServerId " ) ;
@@ -118,7 +118,8 @@ public class ZLMHttpHookListener {
JSONObject ret = new JSONObject ( ) ;
ret . put ( " code " , 0 ) ;
ret . put ( " msg " , " success " ) ;
return new ResponseEntity < String > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
/**
@@ -127,16 +128,15 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_flow_report " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onFlowReport ( @RequestBody JSONObject json ) {
public JSONObject onFlowReport ( @RequestBody JSONObject json ) {
if ( logger . isDebugEnabled ( ) ) {
logger . debug ( " [ ZLM HOOK ]on_flow_report API调用, 参数: " + json . toString ( ) ) ;
}
String mediaServerId = json . getString ( " mediaServerId " ) ;
JSONObject ret = new JSONObject ( ) ;
ret . put ( " code " , 0 ) ;
ret . put ( " msg " , " success " ) ;
return new ResponseEntity < String > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
/**
@@ -145,7 +145,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_http_access " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onHttpAccess ( @RequestBody JSONObject json ) {
public JSONObject onHttpAccess ( @RequestBody JSONObject json ) {
if ( logger . isDebugEnabled ( ) ) {
logger . debug ( " [ ZLM HOOK ]on_http_access API 调用,参数: " + json . toString ( ) ) ;
@@ -156,7 +156,7 @@ public class ZLMHttpHookListener {
ret . put ( " err " , " " ) ;
ret . put ( " path " , " " ) ;
ret . put ( " second " , 600 ) ;
return new ResponseEntity < String > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
/**
@@ -165,7 +165,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_play " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onPlay ( @RequestBody OnPlayHookParam param ) {
public JSONObject onPlay ( @RequestBody OnPlayHookParam param ) {
JSONObject json = ( JSONObject ) JSON . toJSON ( param ) ;
@@ -187,13 +187,13 @@ public class ZLMHttpHookListener {
if ( streamAuthorityInfo ! = null & & streamAuthorityInfo . getCallId ( ) ! = null & & ! streamAuthorityInfo . getCallId ( ) . equals ( paramMap . get ( " callId " ) ) ) {
ret . put ( " code " , 401 ) ;
ret . put ( " msg " , " Unauthorized " ) ;
return new ResponseEntity < > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
}
ret . put ( " code " , 0 ) ;
ret . put ( " msg " , " success " ) ;
return new ResponseEntity < > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
/**
@@ -202,7 +202,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_publish " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onPublish ( @RequestBody OnPublishHookParam param ) {
public JSONObject onPublish ( @RequestBody OnPublishHookParam param ) {
JSONObject json = ( JSONObject ) JSON . toJSON ( param ) ;
@@ -216,7 +216,7 @@ public class ZLMHttpHookListener {
logger . info ( " 推流鉴权失败: 缺少不要参数: sign=md5(user表的pushKey) " ) ;
ret . put ( " code " , 401 ) ;
ret . put ( " msg " , " Unauthorized " ) ;
return new ResponseEntity < > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
Map < String , String > paramMap = urlParamToMap ( param . getParams ( ) ) ;
String sign = paramMap . get ( " sign " ) ;
@@ -224,7 +224,7 @@ public class ZLMHttpHookListener {
logger . info ( " 推流鉴权失败: 缺少不要参数: sign=md5(user表的pushKey) " ) ;
ret . put ( " code " , 401 ) ;
ret . put ( " msg " , " Unauthorized " ) ;
return new ResponseEntity < > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
// 推流自定义播放鉴权码
String callId = paramMap . get ( " callId " ) ;
@@ -234,7 +234,7 @@ public class ZLMHttpHookListener {
logger . info ( " 推流鉴权失败: sign 无权限: callId={}. sign={} " , callId , sign ) ;
ret . put ( " code " , 401 ) ;
ret . put ( " msg " , " Unauthorized " ) ;
return new ResponseEntity < > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
StreamAuthorityInfo streamAuthorityInfo = StreamAuthorityInfo . getInstanceByHook ( param ) ;
streamAuthorityInfo . setCallId ( callId ) ;
@@ -242,12 +242,11 @@ public class ZLMHttpHookListener {
// 鉴权通过
redisCatchStorage . updateStreamAuthorityInfo ( param . getApp ( ) , param . getStream ( ) , streamAuthorityInfo ) ;
// 通知assist新的callId
taskExecutor . execute ( ( ) - > {
if ( mediaInfo ! = null & & mediaInfo . getRecordAssistPort ( ) > 0 ) {
if ( mediaInfo ! = null & & mediaInfo . getRecordAssistPort ( ) > 0 ) {
taskExecutor . execute ( ( ) - > {
assistRESTfulUtils . addStreamCallInfo ( mediaInfo , param . getApp ( ) , param . getStream ( ) , callId , null ) ;
}
} ) ;
} ) ;
}
} else {
zlmMediaListManager . sendStreamEvent ( param . getApp ( ) , param . getStream ( ) , param . getMediaServerId ( ) ) ;
}
@@ -291,10 +290,7 @@ public class ZLMHttpHookListener {
}
}
return new ResponseEntity < String > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
@@ -305,7 +301,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_record_mp4 " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onRecordMp4 ( @RequestBody JSONObject json ) {
public JSONObject onRecordMp4 ( @RequestBody JSONObject json ) {
if ( logger . isDebugEnabled ( ) ) {
logger . debug ( " [ ZLM HOOK ]on_record_mp4 API调用, 参数: " + json . toString ( ) ) ;
@@ -314,7 +310,7 @@ public class ZLMHttpHookListener {
JSONObject ret = new JSONObject ( ) ;
ret . put ( " code " , 0 ) ;
ret . put ( " msg " , " success " ) ;
return new ResponseEntity < String > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
/**
* 录制hls完成后通知事件; 此事件对回复不敏感。
@@ -322,7 +318,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_record_ts " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onRecordTs ( @RequestBody JSONObject json ) {
public JSONObject onRecordTs ( @RequestBody JSONObject json ) {
if ( logger . isDebugEnabled ( ) ) {
logger . debug ( " [ ZLM HOOK ]on_record_ts API调用, 参数: " + json . toString ( ) ) ;
@@ -331,7 +327,7 @@ public class ZLMHttpHookListener {
JSONObject ret = new JSONObject ( ) ;
ret . put ( " code " , 0 ) ;
ret . put ( " msg " , " success " ) ;
return new ResponseEntity < String > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
/**
@@ -340,7 +336,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_rtsp_realm " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onRtspRealm ( @RequestBody JSONObject json ) {
public JSONObject onRtspRealm ( @RequestBody JSONObject json ) {
if ( logger . isDebugEnabled ( ) ) {
logger . debug ( " [ ZLM HOOK ]on_rtsp_realm API调用, 参数: " + json . toString ( ) ) ;
@@ -349,7 +345,7 @@ public class ZLMHttpHookListener {
JSONObject ret = new JSONObject ( ) ;
ret . put ( " code " , 0 ) ;
ret . put ( " realm " , " " ) ;
return new ResponseEntity < String > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
@@ -359,7 +355,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_rtsp_auth " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onRtspAuth ( @RequestBody JSONObject json ) {
public JSONObject onRtspAuth ( @RequestBody JSONObject json ) {
if ( logger . isDebugEnabled ( ) ) {
logger . debug ( " [ ZLM HOOK ]on_rtsp_auth API调用, 参数: " + json . toString ( ) ) ;
@@ -369,7 +365,7 @@ public class ZLMHttpHookListener {
ret . put ( " code " , 0 ) ;
ret . put ( " encrypted " , false ) ;
ret . put ( " passwd " , " test " ) ;
return new ResponseEntity < String > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
/**
@@ -378,7 +374,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_shell_login " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onShellLogin ( @RequestBody JSONObject json ) {
public JSONObject onShellLogin ( @RequestBody JSONObject json ) {
if ( logger . isDebugEnabled ( ) ) {
logger . debug ( " [ ZLM HOOK ]on_shell_login API调用, 参数: " + json . toString ( ) ) ;
@@ -396,7 +392,7 @@ public class ZLMHttpHookListener {
JSONObject ret = new JSONObject ( ) ;
ret . put ( " code " , 0 ) ;
ret . put ( " msg " , " success " ) ;
return new ResponseEntity < String > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
/**
@@ -405,7 +401,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_stream_changed " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onStreamChanged ( @RequestBody MediaItem item ) {
public JSONObject onStreamChanged ( @RequestBody MediaItem item ) {
logger . info ( " [ ZLM HOOK ]on_stream_changed API调用, 参数: " + JSONObject . toJSONString ( item ) ) ;
String mediaServerId = item . getMediaServerId ( ) ;
@@ -520,7 +516,7 @@ public class ZLMHttpHookListener {
JSONObject ret = new JSONObject ( ) ;
ret . put ( " code " , 0 ) ;
ret . put ( " msg " , " success " ) ;
return new ResponseEntity < String > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
/**
@@ -529,7 +525,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_stream_none_reader " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onStreamNoneReader ( @RequestBody JSONObject json ) {
public JSONObject onStreamNoneReader ( @RequestBody JSONObject json ) {
logger . info ( " [ ZLM HOOK ]on_stream_none_reader API调用, 参数: " + json . toString ( ) ) ;
String mediaServerId = json . getString ( " mediaServerId " ) ;
@@ -574,7 +570,7 @@ public class ZLMHttpHookListener {
if ( mediaServerItem ! = null & & mediaServerItem . getStreamNoneReaderDelayMS ( ) = = - 1 ) {
ret . put ( " close " , false ) ;
}
return new ResponseEntity < String > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
} else {
StreamProxyItem streamProxyItem = streamProxyService . getStreamProxyByAppAndStream ( app , streamId ) ;
if ( streamProxyItem ! = null & & streamProxyItem . isEnable_remove_none_reader ( ) ) {
@@ -585,7 +581,7 @@ public class ZLMHttpHookListener {
} else {
ret . put ( " close " , false ) ;
}
return new ResponseEntity < String > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
}
@@ -595,7 +591,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_stream_not_found " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onStreamNotFound ( @RequestBody JSONObject json ) {
public JSONObject onStreamNotFound ( @RequestBody JSONObject json ) {
if ( logger . isDebugEnabled ( ) ) {
logger . debug ( " [ ZLM HOOK ]on_stream_not_found API调用, 参数: " + json . toString ( ) ) ;
}
@@ -620,7 +616,7 @@ public class ZLMHttpHookListener {
JSONObject ret = new JSONObject ( ) ;
ret . put ( " code " , 0 ) ;
ret . put ( " msg " , " success " ) ;
return new ResponseEntity < > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
/**
@@ -629,7 +625,7 @@ public class ZLMHttpHookListener {
*/
@ResponseBody
@PostMapping ( value = " /on_server_started " , produces = " application/json;charset=UTF-8 " )
public ResponseEntity < String > onServerStarted ( HttpServletRequest request , @RequestBody JSONObject jsonObject ) {
public JSONObject onServerStarted ( HttpServletRequest request , @RequestBody JSONObject jsonObject ) {
if ( logger . isDebugEnabled ( ) ) {
logger . debug ( " [ ZLM HOOK ]on_server_started API调用, 参数: " + jsonObject . toString ( ) ) ;
@@ -650,7 +646,7 @@ public class ZLMHttpHookListener {
JSONObject ret = new JSONObject ( ) ;
ret . put ( " code " , 0 ) ;
ret . put ( " msg " , " success " ) ;
return new ResponseEntity < > ( ret . toString ( ) , HttpStatus . OK ) ;
return ret ;
}
private Map < String , String > urlParamToMap ( String params ) {