Exceptions: Failure, InvalidNumber
+sendPaymentNotification(receipt<ay>, note<s>, recipient<s>) -> timestamp<x>::
+* receipt : Byte array with the payment receipt blob
+* note : String with a note for the payment
+* recipient : String with the phone number of a single recipient
+
+* timestamp : Long, can be used to identify the corresponding Signal reply
+
+Exceptions: Failure
+
sendNoteToSelfMessage(message<s>, attachments<as>) -> timestamp<x>::
* message : Text to send (can be UTF8)
* attachments : String array of filenames to send as attachments (passed as filename, so need to be readable by the user signal-cli is running under)
String emoji, boolean remove, String targetAuthor, long targetSentTimestamp, List<String> recipients
) throws Error.InvalidNumber, Error.Failure;
+ long sendPaymentNotification(byte[] receipt, String note, String recipient) throws Error.Failure;
+
void sendContacts() throws Error.Failure;
void sendSyncRequest() throws Error.Failure;
public SendMessageResults sendPaymentNotificationMessage(
final byte[] receipt, final String note, final RecipientIdentifier.Single recipient
) throws IOException {
- throw new UnsupportedOperationException();
+ final var timestamp = signal.sendPaymentNotification(receipt, note, recipient.getIdentifier());
+ return new SendMessageResults(timestamp, Map.of());
}
@Override
}
}
+ @Override
+ public long sendPaymentNotification(
+ final byte[] receipt, final String note, final String recipient
+ ) throws Error.Failure {
+ try {
+ final var results = m.sendPaymentNotificationMessage(receipt,
+ note,
+ getSingleRecipientIdentifier(recipient, m.getSelfNumber()));
+ checkSendMessageResults(results);
+ return results.timestamp();
+ } catch (IOException e) {
+ throw new Error.Failure(e.getMessage());
+ }
+ }
+
@Override
public void sendTyping(
final String recipient, final boolean stop