From 5987330e59f92404d38a1dbe25484b8319fb3429 Mon Sep 17 00:00:00 2001 From: Moxie Marlinspike Date: Wed, 12 Dec 2018 13:59:58 -0800 Subject: [PATCH] Add android-ng sms verification text, remove old twiml --- .../textsecuregcm/controllers/AccountController.java | 10 ---------- .../whispersystems/textsecuregcm/sms/SmsSender.java | 6 +++--- .../textsecuregcm/sms/TwilioSmsSender.java | 7 ++----- 3 files changed, 5 insertions(+), 18 deletions(-) diff --git a/src/main/java/org/whispersystems/textsecuregcm/controllers/AccountController.java b/src/main/java/org/whispersystems/textsecuregcm/controllers/AccountController.java index c4107cc0b..b9f2b3c56 100644 --- a/src/main/java/org/whispersystems/textsecuregcm/controllers/AccountController.java +++ b/src/main/java/org/whispersystems/textsecuregcm/controllers/AccountController.java @@ -37,7 +37,6 @@ import org.whispersystems.textsecuregcm.entities.RegistrationLock; import org.whispersystems.textsecuregcm.entities.RegistrationLockFailure; import org.whispersystems.textsecuregcm.limits.RateLimiters; import org.whispersystems.textsecuregcm.sms.SmsSender; -import org.whispersystems.textsecuregcm.sms.TwilioSmsSender; import org.whispersystems.textsecuregcm.sqs.DirectoryQueue; import org.whispersystems.textsecuregcm.storage.Account; import org.whispersystems.textsecuregcm.storage.AccountsManager; @@ -53,7 +52,6 @@ import javax.ws.rs.Consumes; import javax.ws.rs.DELETE; import javax.ws.rs.GET; import javax.ws.rs.HeaderParam; -import javax.ws.rs.POST; import javax.ws.rs.PUT; import javax.ws.rs.Path; import javax.ws.rs.PathParam; @@ -342,14 +340,6 @@ public class AccountController { accounts.update(account); } - @Timed - @POST - @Path("/voice/twiml/{code}") - @Produces(MediaType.APPLICATION_XML) - public Response getTwiml(@PathParam("code") String encodedVerificationText) { - return Response.ok().entity(String.format(TwilioSmsSender.SAY_TWIML, encodedVerificationText)).build(); - } - private void createAccount(String number, String password, String userAgent, AccountAttributes accountAttributes) { Device device = new Device(); device.setId(Device.MASTER_ID); diff --git a/src/main/java/org/whispersystems/textsecuregcm/sms/SmsSender.java b/src/main/java/org/whispersystems/textsecuregcm/sms/SmsSender.java index 64ab11ee3..3c3df140c 100644 --- a/src/main/java/org/whispersystems/textsecuregcm/sms/SmsSender.java +++ b/src/main/java/org/whispersystems/textsecuregcm/sms/SmsSender.java @@ -27,9 +27,9 @@ import java.util.Optional; @SuppressWarnings("OptionalUsedAsFieldOrParameterType") public class SmsSender { - static final String SMS_IOS_VERIFICATION_TEXT = "Your Signal verification code: %s\n\nOr tap: sgnl://verify/%s"; - static final String SMS_VERIFICATION_TEXT = "Your Signal verification code: %s"; - static final String VOX_VERIFICATION_TEXT = "Your Signal verification code is: "; + static final String SMS_IOS_VERIFICATION_TEXT = "Your Signal verification code: %s\n\nOr tap: sgnl://verify/%s"; + static final String SMS_ANDROID_NG_VERIFICATION_TEXT = "<#> Your Signal verification code: %s\n\ndoDiFGKPO1r"; + static final String SMS_VERIFICATION_TEXT = "Your Signal verification code: %s"; private final Logger logger = LoggerFactory.getLogger(SmsSender.class); diff --git a/src/main/java/org/whispersystems/textsecuregcm/sms/TwilioSmsSender.java b/src/main/java/org/whispersystems/textsecuregcm/sms/TwilioSmsSender.java index 406dcb9ea..df30d3fa9 100644 --- a/src/main/java/org/whispersystems/textsecuregcm/sms/TwilioSmsSender.java +++ b/src/main/java/org/whispersystems/textsecuregcm/sms/TwilioSmsSender.java @@ -43,11 +43,6 @@ import static com.codahale.metrics.MetricRegistry.name; @SuppressWarnings("OptionalUsedAsFieldOrParameterType") public class TwilioSmsSender { - public static final String SAY_TWIML = "\n" + - "\n" + - " " + SmsSender.VOX_VERIFICATION_TEXT + "%s.\n" + - ""; - private final MetricRegistry metricRegistry = SharedMetricRegistries.getOrCreate(Constants.METRICS_NAME); private final Meter smsMeter = metricRegistry.meter(name(getClass(), "sms", "delivered")); private final Meter voxMeter = metricRegistry.meter(name(getClass(), "vox", "delivered")); @@ -84,6 +79,8 @@ public class TwilioSmsSender { if ("ios".equals(clientType.orElse(null))) { messageParams.add(new BasicNameValuePair("Body", String.format(SmsSender.SMS_IOS_VERIFICATION_TEXT, verificationCode, verificationCode))); + } else if ("android-ng".equals(clientType.orElse(null))) { + messageParams.add(new BasicNameValuePair("Body", String.format(SmsSender.SMS_ANDROID_NG_VERIFICATION_TEXT, verificationCode))); } else { messageParams.add(new BasicNameValuePair("Body", String.format(SmsSender.SMS_VERIFICATION_TEXT, verificationCode))); }