Loading server/worldanalysis/src/ETSI.ARF.OpenAPI.WorldAnalysis/ETSI-ARF/ControllersImpl/WebSocketController.cs +20 −3 Original line number Original line Diff line number Diff line Loading @@ -157,14 +157,26 @@ namespace ETSI.ARF.OpenAPI.WorldAnalysis.Controllers registered = true; registered = true; firstTime = false; firstTime = false; currentName = msg.Split('=')[1]; currentName = msg.Split('=')[1]; // If module exist already reuse it Module module = null; foreach (var item in WorldAnalysisConnections.Singleton.modules) if (item.name == currentName) module = item; if (module != null) { currentModule = module; currentModule.name = currentName; currentModule.websockets = this; currentModule.capabilities.Clear(); } if (currentModule == null && currentClient == null) if (currentModule == null && currentClient == null) { { currentModule = new Module(); currentModule = new Module(); currentModule.name = currentName; currentModule.name = currentName; currentModule.websockets = this; currentModule.websockets = this; WorldAnalysisConnections.Singleton.modules.Add(currentModule); WorldAnalysisConnections.Singleton.modules.Add(currentModule); SendText($"ARF World Analysis Server: #{ WebSocketControllerInstanceCount } You are now registered as module: { currentName }"); } } SendText($"ARF World Analysis Server: #{ WebSocketControllerInstanceCount } You are now registered as module: { currentName }"); } } else if (msg.StartsWith("RegisterClient=")) else if (msg.StartsWith("RegisterClient=")) { { Loading Loading @@ -249,8 +261,13 @@ namespace ETSI.ARF.OpenAPI.WorldAnalysis.Controllers { { // Module is sending their capabilities // Module is sending their capabilities string[] str_cap = msg.Split('='); string[] str_cap = msg.Split('='); Capability _c = JsonConvert.DeserializeObject<Capability>(str_cap[1]); string moduleName = str_cap[1]; if (currentModule != null) currentModule.capabilities.Add(_c); Capability _c = JsonConvert.DeserializeObject<Capability>(str_cap[2]); // Has the module already send their capabilities? Module module = null; foreach (var item in WorldAnalysisConnections.Singleton.modules) if (item.name == moduleName) module = item; if (module != null) module.capabilities.Add(_c); } } else if (msg.StartsWith("NewPose=")) else if (msg.StartsWith("NewPose=")) { { Loading Loading
server/worldanalysis/src/ETSI.ARF.OpenAPI.WorldAnalysis/ETSI-ARF/ControllersImpl/WebSocketController.cs +20 −3 Original line number Original line Diff line number Diff line Loading @@ -157,14 +157,26 @@ namespace ETSI.ARF.OpenAPI.WorldAnalysis.Controllers registered = true; registered = true; firstTime = false; firstTime = false; currentName = msg.Split('=')[1]; currentName = msg.Split('=')[1]; // If module exist already reuse it Module module = null; foreach (var item in WorldAnalysisConnections.Singleton.modules) if (item.name == currentName) module = item; if (module != null) { currentModule = module; currentModule.name = currentName; currentModule.websockets = this; currentModule.capabilities.Clear(); } if (currentModule == null && currentClient == null) if (currentModule == null && currentClient == null) { { currentModule = new Module(); currentModule = new Module(); currentModule.name = currentName; currentModule.name = currentName; currentModule.websockets = this; currentModule.websockets = this; WorldAnalysisConnections.Singleton.modules.Add(currentModule); WorldAnalysisConnections.Singleton.modules.Add(currentModule); SendText($"ARF World Analysis Server: #{ WebSocketControllerInstanceCount } You are now registered as module: { currentName }"); } } SendText($"ARF World Analysis Server: #{ WebSocketControllerInstanceCount } You are now registered as module: { currentName }"); } } else if (msg.StartsWith("RegisterClient=")) else if (msg.StartsWith("RegisterClient=")) { { Loading Loading @@ -249,8 +261,13 @@ namespace ETSI.ARF.OpenAPI.WorldAnalysis.Controllers { { // Module is sending their capabilities // Module is sending their capabilities string[] str_cap = msg.Split('='); string[] str_cap = msg.Split('='); Capability _c = JsonConvert.DeserializeObject<Capability>(str_cap[1]); string moduleName = str_cap[1]; if (currentModule != null) currentModule.capabilities.Add(_c); Capability _c = JsonConvert.DeserializeObject<Capability>(str_cap[2]); // Has the module already send their capabilities? Module module = null; foreach (var item in WorldAnalysisConnections.Singleton.modules) if (item.name == moduleName) module = item; if (module != null) module.capabilities.Add(_c); } } else if (msg.StartsWith("NewPose=")) else if (msg.StartsWith("NewPose=")) { { Loading