]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/json/JsonCallMessage.java
Output json when receiving messages from dbus and --json parameter is given
[signal-cli] / src / main / java / org / asamk / signal / json / JsonCallMessage.java
diff --git a/src/main/java/org/asamk/signal/json/JsonCallMessage.java b/src/main/java/org/asamk/signal/json/JsonCallMessage.java
new file mode 100644 (file)
index 0000000..c1b1d44
--- /dev/null
@@ -0,0 +1,37 @@
+package org.asamk.signal.json;
+
+import org.whispersystems.signalservice.api.messages.calls.AnswerMessage;
+import org.whispersystems.signalservice.api.messages.calls.BusyMessage;
+import org.whispersystems.signalservice.api.messages.calls.HangupMessage;
+import org.whispersystems.signalservice.api.messages.calls.IceUpdateMessage;
+import org.whispersystems.signalservice.api.messages.calls.OfferMessage;
+import org.whispersystems.signalservice.api.messages.calls.SignalServiceCallMessage;
+
+import java.util.List;
+
+class JsonCallMessage {
+
+    OfferMessage offerMessage;
+    AnswerMessage answerMessage;
+    BusyMessage busyMessage;
+    HangupMessage hangupMessage;
+    List<IceUpdateMessage> iceUpdateMessages;
+
+    JsonCallMessage(SignalServiceCallMessage callMessage) {
+        if (callMessage.getOfferMessage().isPresent()) {
+            this.offerMessage = callMessage.getOfferMessage().get();
+        }
+        if (callMessage.getAnswerMessage().isPresent()) {
+            this.answerMessage = callMessage.getAnswerMessage().get();
+        }
+        if (callMessage.getBusyMessage().isPresent()) {
+            this.busyMessage = callMessage.getBusyMessage().get();
+        }
+        if (callMessage.getHangupMessage().isPresent()) {
+            this.hangupMessage = callMessage.getHangupMessage().get();
+        }
+        if (callMessage.getIceUpdateMessages().isPresent()) {
+            this.iceUpdateMessages = callMessage.getIceUpdateMessages().get();
+        }
+    }
+}