- JsonSyncDataMessage(Signal.SyncMessageReceived messageReceived) {
- super(messageReceived);
- destination = messageReceived.getDestination();
+ static JsonSyncDataMessage from(MessageEnvelope.Sync.Sent transcriptMessage) {
+ return new JsonSyncDataMessage(transcriptMessage.destination()
+ .map(RecipientAddress::getLegacyIdentifier)
+ .orElse(null),
+ transcriptMessage.destination().flatMap(RecipientAddress::number).orElse(null),
+ transcriptMessage.destination().flatMap(address -> address.uuid().map(UUID::toString)).orElse(null),
+ transcriptMessage.editMessage().map(JsonEditMessage::from).orElse(null),
+ transcriptMessage.message().map(JsonDataMessage::from).orElse(null));