- private List<SendMessageResult> sendMessage(SignalServiceDataMessage.Builder messageBuilder, Collection<String> recipients)
- throws IOException {
- Set<SignalServiceAddress> recipientsTS = Utils.getSignalServiceAddresses(recipients, username);
- if (recipientsTS == null) {
- account.save();
- return Collections.emptyList();
+ private Collection<SignalServiceAddress> getSignalServiceAddresses(Collection<String> numbers) throws InvalidNumberException {
+ final Set<SignalServiceAddress> signalServiceAddresses = new HashSet<>(numbers.size());
+ final String username = account.getUsername();
+
+ for (String number : numbers) {
+ String canonicalizedNumber = Utils.canonicalizeNumber(number, username);
+ if (canonicalizedNumber.equals(username)) {
+ signalServiceAddresses.add(account.getSelfAddress());
+ } else {
+ // TODO get corresponding uuid
+ signalServiceAddresses.add(new SignalServiceAddress(null, canonicalizedNumber));
+ }