]> nmode's Git Repositories - signal-cli/blob - src/main/java/org/asamk/signal/json/JsonReceiptMessage.java
7cdd0b6a5592168ba13b29cf6d1d3bdb403bc376
[signal-cli] / src / main / java / org / asamk / signal / json / JsonReceiptMessage.java
1 package org.asamk.signal.json;
2
3 import org.whispersystems.signalservice.api.messages.SignalServiceReceiptMessage;
4
5 import java.util.List;
6
7 record JsonReceiptMessage(long when, boolean isDelivery, boolean isRead, boolean isViewed, List<Long> timestamps) {
8
9 static JsonReceiptMessage from(SignalServiceReceiptMessage receiptMessage) {
10 final var when = receiptMessage.getWhen();
11 final var isDelivery = receiptMessage.isDeliveryReceipt();
12 final var isRead = receiptMessage.isReadReceipt();
13 final var isViewed = receiptMessage.isViewedReceipt();
14 final var timestamps = receiptMessage.getTimestamps();
15 return new JsonReceiptMessage(when, isDelivery, isRead, isViewed, timestamps);
16 }
17
18 static JsonReceiptMessage deliveryReceipt(final long when, final List<Long> timestamps) {
19 return new JsonReceiptMessage(when, true, false, false, timestamps);
20 }
21 }