Add Twilio Verify methods to SmsSender

This commit is contained in:
Chris Eager 2021-03-15 21:20:35 -05:00 committed by Chris Eager
parent 76cbf734ad
commit f68390e96f
1 changed files with 22 additions and 0 deletions

View File

@ -8,9 +8,11 @@ package org.whispersystems.textsecuregcm.sms;
import java.util.List;
import java.util.Locale.LanguageRange;
import java.util.Optional;
import java.util.concurrent.CompletableFuture;
@SuppressWarnings("OptionalUsedAsFieldOrParameterType")
public class SmsSender {
private final TwilioSmsSender twilioSender;
public SmsSender(TwilioSmsSender twilioSender) {
@ -29,4 +31,24 @@ public class SmsSender {
public void deliverVoxVerification(String destination, String verificationCode, List<LanguageRange> languageRanges) {
twilioSender.deliverVoxVerification(destination, verificationCode, languageRanges);
}
public CompletableFuture<Optional<String>> deliverSmsVerificationWithTwilioVerify(String destination, Optional<String> clientType,
String verificationCode, List<LanguageRange> languageRanges) {
// Fix up mexico numbers to 'mobile' format just for SMS delivery.
if (destination.startsWith("+52") && !destination.startsWith("+521")) {
destination = "+521" + destination.substring(3);
}
return twilioSender.deliverSmsVerificationWithVerify(destination, clientType, verificationCode, languageRanges);
}
public CompletableFuture<Optional<String>> deliverVoxVerificationWithTwilioVerify(String destination, String verificationCode,
List<LanguageRange> languageRanges) {
return twilioSender.deliverVoxVerificationWithVerify(destination, verificationCode, languageRanges);
}
public void reportVerificationSucceeded(String verificationSid) {
twilioSender.reportVerificationSucceeded(verificationSid);
}
}