From 9cf67697137ff0a3c9ceb17fcf4830a4d346f711 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Mon, 12 Nov 2018 17:20:29 +0100 Subject: [PATCH] Started security event display --- res/values/strings.xml | 5 +++++ .../org/linphone/chat/ChatEventsAdapter.java | 18 +++++++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/res/values/strings.xml b/res/values/strings.xml index b4ed62294..c87ae1a5e 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -228,6 +228,11 @@ Conversation\'s devices Add to contacts Instant messages are end-to-end encrypted in secured conversations. It is possible to upgrade the security level of a conversation by authenticating participants. To do so, call the contact and follow the authentification process. + LIME identity key changed for %s + Man in the middle detected for %s + Security level downgraded because of %s + Max participant count exceeded by %s + Unexpected event %i for %s Registered diff --git a/src/android/org/linphone/chat/ChatEventsAdapter.java b/src/android/org/linphone/chat/ChatEventsAdapter.java index 40942cbe2..b52b8184f 100644 --- a/src/android/org/linphone/chat/ChatEventsAdapter.java +++ b/src/android/org/linphone/chat/ChatEventsAdapter.java @@ -399,9 +399,25 @@ public class ChatEventsAdapter extends SelectableAdapter { case ConferenceParticipantDeviceRemoved: holder.eventMessage.setText(mContext.getString(R.string.device_removed).replace("%s", displayName)); break; + case ConferenceSecurityEvent: + switch (event.getSecurityEventType()) { + case LimeIdentityKeyChanged: + holder.eventMessage.setText(mContext.getString(R.string.lime_identity_key_changed).replace("%s", displayName)); + break; + case ManInTheMiddleDetected: + holder.eventMessage.setText(mContext.getString(R.string.man_in_the_middle_detected).replace("%s", displayName)); + break; + case SecurityLevelDowngraded: + holder.eventMessage.setText(mContext.getString(R.string.security_level_downgraded).replace("%s", displayName)); + break; + case ParticipantMaxDeviceCountExceeded: + holder.eventMessage.setText(mContext.getString(R.string.participant_max_count_exceeded).replace("%s", displayName)); + break; + } + break; case None: default: - //TODO + holder.eventMessage.setText(mContext.getString(R.string.unexpected_event).replace("%s", displayName).replace("%i", String.valueOf(event.getType().toInt()))); break; } }