From 9df56dccdae037c97f59df8f3dcba71a22dcd26f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Calvi=C3=B1o=20S=C3=A1nchez?= <danxuliu@gmail.com> Date: Wed, 19 Oct 2022 18:44:22 +0200 Subject: [PATCH] Process signaling message directly in the SignalingMessageReceiver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This will no longer log an error if the room type of the received message is neither "video" nor "screen". However, that should never happen, and it would be useful only while debugging, so it is fine to lose that. Note that the check is not added to SignalingMessageReceiver itself to keep it as generic as possible (and due to the low value of adding it as explained above). Nevertheless, if needed in the future it would be possible to add a special listener that receives raw messages in order to validate them and log the errors, if any. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com> --- .../com/nextcloud/talk/activities/CallActivity.java | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/activities/CallActivity.java b/app/src/main/java/com/nextcloud/talk/activities/CallActivity.java index dbc942517..baa99b302 100644 --- a/app/src/main/java/com/nextcloud/talk/activities/CallActivity.java +++ b/app/src/main/java/com/nextcloud/talk/activities/CallActivity.java @@ -1624,7 +1624,7 @@ public class CallActivity extends CallBaseActivity { break; case "signalingMessage": Log.d(TAG, "onMessageEvent 'signalingMessage'"); - processMessage((NCSignalingMessage) webSocketClient.getJobWithId( + signalingMessageReceiver.process((NCSignalingMessage) webSocketClient.getJobWithId( Integer.valueOf(webSocketCommunicationEvent.getHashMap().get("jobId")))); break; case "peerReadyForRequestingOffer": @@ -1670,17 +1670,9 @@ public class CallActivity extends CallBaseActivity { } else if ("message".equals(messageType)) { NCSignalingMessage ncSignalingMessage = LoganSquare.parse(signaling.getMessageWrapper().toString(), NCSignalingMessage.class); - processMessage(ncSignalingMessage); - } else { - Log.e(TAG, "unexpected message type when receiving signaling message"); - } - } - - private void processMessage(NCSignalingMessage ncSignalingMessage) { - if ("video".equals(ncSignalingMessage.getRoomType()) || "screen".equals(ncSignalingMessage.getRoomType())) { signalingMessageReceiver.process(ncSignalingMessage); } else { - Log.e(TAG, "unexpected RoomType while processing NCSignalingMessage"); + Log.e(TAG, "unexpected message type when receiving signaling message"); } }