Преглед на файлове

fix 规则引擎集群状态变化

18339543638 преди 3 години
родител
ревизия
1aabc88e29

+ 1 - 1
jetlinks-manager/media-manager/src/main/java/org/jetlinks/community/media/controller/MediaGatewayController.java

@@ -87,7 +87,7 @@ public class MediaGatewayController {
 
     @GetMapping("/gb28181_gateway")
     @Operation(summary = "获取默认sip网关配置")
-    public Mono<SipGateway> getDefault(@RequestBody SipGateway gateway){
+    public Mono<SipGateway> getDefault(){
         return gatewayService.getDefault();
     }
 }

+ 5 - 1
jetlinks-manager/media-manager/src/main/java/org/jetlinks/community/media/service/LocalMediaServerItemService.java

@@ -630,7 +630,11 @@ public class LocalMediaServerItemService extends GenericReactiveCrudService<Medi
      * @return
      */
     public Mono<Void> updateMediaServerKeepalive(String mediaServerId, JSONObject data) {
-        return this.findById(mediaServerId)
+        return this.createUpdate()
+            .where(MediaServerItem::getServerId,mediaServerId)
+            .set(MediaServerItem::isConnect,true)
+            .execute()
+            .flatMap(ignore->this.findById(mediaServerId))
             .doOnNext(mediaServerItem -> {
                 String key = VideoManagerConstants.MEDIA_SERVER_KEEPALIVE_PREFIX +serverId + "_" + mediaServerId;
                 int hookAliveInterval = mediaServerItem.getHookAliveInterval() + 2;

+ 5 - 1
jetlinks-manager/media-manager/src/main/java/org/jetlinks/community/media/zlm/ZLMRunner.java

@@ -93,7 +93,11 @@ public class ZLMRunner implements CommandLineRunner {
                     if (startGetMedia != null) {
                         startGetMedia.remove(zlmServerConfig.getGeneralMediaServerId());
                     }
-                    return mediaServerItemService.zlmServerOnline(zlmServerConfig);
+                    return mediaServerItemService.createUpdate()
+                        .where(MediaServerItem::getServerId,zlmServerConfig.getGeneralMediaServerId())
+                        .set(MediaServerItem::isConnect,true)
+                        .execute()
+                        .then(mediaServerItemService.zlmServerOnline(zlmServerConfig));
                 }
                 return Mono.empty();
             }).subscribe();