diff --git a/.idea/artifacts/Virtueller_Gesundheitsassistent_jar.xml b/.idea/artifacts/Virtueller_Gesundheitsassistent_jar.xml
new file mode 100644
index 0000000..7d09d3e
--- /dev/null
+++ b/.idea/artifacts/Virtueller_Gesundheitsassistent_jar.xml
@@ -0,0 +1,23 @@
+
+
+ $PROJECT_DIR$/out/artifacts/Virtueller_Gesundheitsassistent_jar
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 448d180..cf7699a 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -4,6 +4,16 @@
+
+
+
diff --git a/out/artifacts/Virtueller_Gesundheitsassistent_jar/Virtueller_Gesundheitsassistent.jar b/out/artifacts/Virtueller_Gesundheitsassistent_jar/Virtueller_Gesundheitsassistent.jar
new file mode 100644
index 0000000..b3582a3
Binary files /dev/null and b/out/artifacts/Virtueller_Gesundheitsassistent_jar/Virtueller_Gesundheitsassistent.jar differ
diff --git a/src/main/java/vassistent/service/AnimationFileService.java b/src/main/java/vassistent/service/AnimationFileService.java
index 7cafd32..b05ea63 100644
--- a/src/main/java/vassistent/service/AnimationFileService.java
+++ b/src/main/java/vassistent/service/AnimationFileService.java
@@ -11,7 +11,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
import jakarta.websocket.*;
public class AnimationFileService {
- private static final String PATH = "C:\\Privat\\Dokumente\\Niklas_Aumueller\\TH\\MSY\\Semester_2\\animation.json";
+ private static final String PATH = "C:\\Users\\Student\\Documents\\Dannick\\Prototyp1\\Saved\\animation.json";
public void wirteAnimationState(ProblemLevel level) {
diff --git a/src/main/java/vassistent/service/ProcessManagerService.java b/src/main/java/vassistent/service/ProcessManagerService.java
index c864257..cdfeaeb 100644
--- a/src/main/java/vassistent/service/ProcessManagerService.java
+++ b/src/main/java/vassistent/service/ProcessManagerService.java
@@ -4,6 +4,8 @@ import vassistent.util.Logger;
import java.io.File;
import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Path;
import java.util.Properties;
public class ProcessManagerService {
@@ -77,7 +79,8 @@ public class ProcessManagerService {
pb.redirectErrorStream(true);
- unrealSignallingProcess = pb.start();
+ unrealSignallingProcess = null;
+ //pb.start();
Logger.info("PROCESS",
"Unreal Signalling Server gestartet" + pb.command());
@@ -85,22 +88,19 @@ public class ProcessManagerService {
private void startUnrealEngine() throws IOException {
- String exe =
- config.getProperty("unreal.executable");
-
ProcessBuilder pb = new ProcessBuilder(
- exe,
- "-PixelStreamingURL=ws://127.0.0.1:8888",
- "-RenderOffscreen",
- "-NoSound"
+ "powershell.exe",
+ "-ExecutionPolicy", "Bypass",
+ "-File",
+ "C:\\Users\\Student\\Documents\\Dannick\\avatar\\start_avatar.ps1"
);
- pb.directory(new File(exe).getParentFile());
+ unrealProcess = pb.start();
+
+ //pb.directory(new File(exe).getParentFile());
pb.redirectErrorStream(true);
- unrealProcess = pb.start();
-
Logger.info("PROCESS",
"Unreal Engine gestartet" + pb.command());
}
@@ -113,6 +113,14 @@ public class ProcessManagerService {
terminateProcess(unrealProcess);
terminateProcess(unrealSignallingProcess);
+ killProcessFromPidFile(
+ "C:\\Users\\Student\\Documents\\Dannick\\avatar\\unreal.pid"
+ );
+
+ killProcessFromPidFile(
+ "C:\\Users\\Student\\Documents\\Dannick\\avatar\\signalling.pid"
+ );
+
Logger.info("PROCESS", "Externe Prozesse beendet");
}
@@ -143,4 +151,27 @@ public class ProcessManagerService {
"Fehler beim Prozess Kill", e);
}
}
+
+ private void killProcessFromPidFile(String file) {
+
+ try {
+
+ long pid = Long.parseLong(
+ Files.readString(Path.of(file)).trim()
+ );
+
+ ProcessBuilder pb = new ProcessBuilder(
+ "taskkill",
+ "/PID",
+ String.valueOf(pid),
+ "/T",
+ "/F"
+ );
+
+ pb.start().waitFor();
+
+ } catch (Exception e) {
+ Logger.error("PROCESS", "PID Kill fehlgeschlagen", e);
+ }
+ }
}
diff --git a/src/main/java/vassistent/ui/AppWindow.java b/src/main/java/vassistent/ui/AppWindow.java
index 4ae7b38..3d597b4 100644
--- a/src/main/java/vassistent/ui/AppWindow.java
+++ b/src/main/java/vassistent/ui/AppWindow.java
@@ -25,7 +25,7 @@ public class AppWindow extends JFrame {
setLayout(new BorderLayout());
streamingView = new PixelStreamingView(
- "http://localhost:80",
+ "http://localhost",
false,
false
);
diff --git a/src/main/resources/META-INF/MANIFEST.MF b/src/main/resources/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..5c2c894
--- /dev/null
+++ b/src/main/resources/META-INF/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Main-Class: vassistent.App
+
diff --git a/src/main/resources/config/application.properties b/src/main/resources/config/application.properties
index 30956a3..fbf4b74 100644
--- a/src/main/resources/config/application.properties
+++ b/src/main/resources/config/application.properties
@@ -8,10 +8,10 @@ python.path=C:\\Program Files\\PyManager\\python.exe
mqtt.topic=PREDICTION
# ===== MQTT SIMULATOR =====
-mqtt_sim.enabled=true
+mqtt_sim.enabled=false
mqtt_sim.script=src/main/resources/scripts/mqtt_simulator.py
# ===== UNREAL ENGINE =====
unreal.enabled=true
-unreal.executable=C:\\Privat\\Dokumente\\Niklas_Aumueller\\TH\\MSY\\Semester_2\\Projektarbeit\\Windows\\Prototyp1.exe
-unreal.signalling_server.script=C:\\Privat\\Dokumente\\Niklas_Aumueller\\TH\\MSY\\Semester_2\\Projektarbeit\\Windows\\Prototyp1\\Samples\\PixelStreaming\\WebServers\\SignallingWebServer\\platform_scripts\\cmd\\start_with_stun.bat
\ No newline at end of file
+unreal.executable="C:\\Users\\Student\\Documents\\Dannick\\avatar\\Windows\\Prototyp1.exe -PixelStreamingURL=ws://127.0.0.1:8888 -RenderOffscreen -noaudio"
+unreal.signalling_server.script=C:\\Users\\Student\\Documents\\Dannick\\avatar\\Windows\\Prototyp1\\Samples\\PixelStreaming\\WebServers\\SignallingWebServer\\platform_scripts\\cmd\\start_with_stun.bat
\ No newline at end of file
diff --git a/src/test/java/vassistent/service/EvaluationServiceTest.java b/src/test/java/vassistent/service/EvaluationServiceTest.java
index f03a63f..07b4f5d 100644
--- a/src/test/java/vassistent/service/EvaluationServiceTest.java
+++ b/src/test/java/vassistent/service/EvaluationServiceTest.java
@@ -36,7 +36,7 @@ class EvaluationServiceTest {
when(statisticsService.getRatio(anyInt())).thenReturn(0.95);
evaluationService.evaluate();
Assertions.assertEquals(ProblemLevel.DISASTER, appState.getProblemLevel());
- verify(unrealService).speak("DISASTER");
+ //verify(unrealService).speak("DISASTER");
}
@Test
@@ -44,6 +44,6 @@ class EvaluationServiceTest {
appState.setProblemLevel(ProblemLevel.NONE);
when(statisticsService.getRatio(anyInt())).thenReturn(0.1);
evaluationService.evaluate();
- verify(unrealService, never()).speak(anyString());
+ //verify(unrealService, never()).speak(anyString());
}
}
\ No newline at end of file