import org.asamk.signal.manager.Manager;
import org.whispersystems.signalservice.api.messages.SignalServiceContent;
import org.whispersystems.signalservice.api.messages.SignalServiceEnvelope;
-import org.whispersystems.signalservice.api.push.SignalServiceAddress;
import java.util.List;
+import static org.asamk.signal.util.Util.getLegacyIdentifier;
+
public class JsonMessageEnvelope {
@JsonProperty
final Integer sourceDevice;
@JsonProperty
+ @JsonInclude(JsonInclude.Include.NON_NULL)
final String relay;
@JsonProperty
public JsonMessageEnvelope(SignalServiceEnvelope envelope, SignalServiceContent content, Manager m) {
if (!envelope.isUnidentifiedSender() && envelope.hasSource()) {
- SignalServiceAddress source = envelope.getSourceAddress();
- this.source = source.getLegacyIdentifier();
+ var source = envelope.getSourceAddress();
+ this.source = getLegacyIdentifier(source);
this.sourceDevice = envelope.getSourceDevice();
this.relay = source.getRelay().orNull();
} else if (envelope.isUnidentifiedSender() && content != null) {
- this.source = content.getSender().getLegacyIdentifier();
+ this.source = getLegacyIdentifier(content.getSender());
this.sourceDevice = content.getSenderDevice();
this.relay = null;
} else {