void deleteContact(RecipientIdentifier.Single recipient);
void setContactName(
- RecipientIdentifier.Single recipient,
- String givenName,
- final String familyName
+ final RecipientIdentifier.Single recipient,
+ final String givenName,
+ final String familyName,
+ final String nickGivenName,
+ final String nickFamilyName,
+ final String note
) throws NotPrimaryDeviceException, UnregisteredRecipientException;
void setContactsBlocked(
return sourceContact != null && sourceContact.isBlocked();
}
- public void setContactName(final RecipientId recipientId, final String givenName, final String familyName) {
+ public void setContactName(
+ final RecipientId recipientId,
+ final String givenName,
+ final String familyName,
+ final String nickGivenName,
+ final String nickFamilyName,
+ final String note
+ ) {
var contact = account.getContactStore().getContact(recipientId);
final var builder = contact == null ? Contact.newBuilder() : Contact.newBuilder(contact);
builder.withIsHidden(false);
if (familyName != null) {
builder.withFamilyName(familyName);
}
+ if (nickGivenName != null) {
+ builder.withNickNameGivenName(nickGivenName);
+ }
+ if (nickFamilyName != null) {
+ builder.withNickNameFamilyName(nickFamilyName);
+ }
+ if (note != null) {
+ builder.withNote(note);
+ }
account.getContactStore().storeContact(recipientId, builder.build());
}
@Override
public void setContactName(
- RecipientIdentifier.Single recipient,
- String givenName,
- final String familyName
+ final RecipientIdentifier.Single recipient,
+ final String givenName,
+ final String familyName,
+ final String nickGivenName,
+ final String nickFamilyName,
+ final String note
) throws NotPrimaryDeviceException, UnregisteredRecipientException {
if (!account.isPrimaryDevice()) {
throw new NotPrimaryDeviceException();
}
context.getContactHelper()
- .setContactName(context.getRecipientHelper().resolveRecipient(recipient), givenName, familyName);
+ .setContactName(context.getRecipientHelper().resolveRecipient(recipient),
+ givenName,
+ familyName,
+ nickGivenName,
+ nickFamilyName,
+ note);
syncRemoteStorage();
}
RECIPIENT::
Specify the recipient.
-*--given-name* NAME, *--name* NAME::
-New (given) name.
+*--given-name* GIVEN_NAME, *--name* NAME::
+New system given name.
*--family-name* FAMILY_NAME::
-New family name.
+New system family name.
+
+*--nick-given-name* NICK_GIVEN_NAME::
+New nick given name.
+
+*--nick-family-name* NICK_FAMILY_NAME::
+New nick family name.
+
+*--note* NOTE::
+New note.
*-e*, *--expiration* EXPIRATION_SECONDS::
Set expiration time of messages (seconds).
subparser.help("Update the details of a given contact");
subparser.addArgument("recipient").help("Contact number");
subparser.addArgument("-n", "--name").help("New contact name");
- subparser.addArgument("--given-name").help("New contact given name");
- subparser.addArgument("--family-name").help("New contact family name");
+ subparser.addArgument("--given-name").help("New system given name");
+ subparser.addArgument("--family-name").help("New system family name");
+ subparser.addArgument("--nick-given-name").help("New nick given name");
+ subparser.addArgument("--nick-family-name").help("New nick family name");
+ subparser.addArgument("--note").help("New note");
subparser.addArgument("-e", "--expiration").type(int.class).help("Set expiration time of messages (seconds)");
}
familyName = "";
}
}
- if (givenName != null || familyName != null) {
- m.setContactName(recipient, givenName, familyName);
+ var nickGivenName = ns.getString("nick-given-name");
+ var nickFamilyName = ns.getString("nick-family-name");
+ var note = ns.getString("note");
+ if (givenName != null
+ || familyName != null
+ || nickGivenName != null
+ || nickFamilyName != null
+ || note != null) {
+ m.setContactName(recipient, givenName, familyName, nickGivenName, nickFamilyName, note);
}
} catch (IOException e) {
throw new IOErrorException("Update contact error: " + e.getMessage(), e);
public void setContactName(
final RecipientIdentifier.Single recipient,
final String givenName,
- final String familyName
+ final String familyName,
+ final String nickGivenName,
+ final String nickFamilyName,
+ final String note
) throws NotPrimaryDeviceException {
signal.setContactName(recipient.getIdentifier(), givenName);
}
@Override
public void setContactName(final String number, final String name) {
try {
- m.setContactName(getSingleRecipientIdentifier(number, m.getSelfNumber()), name, "");
+ m.setContactName(getSingleRecipientIdentifier(number, m.getSelfNumber()), name, "", null, null, null);
} catch (NotPrimaryDeviceException e) {
throw new Error.Failure("This command doesn't work on linked devices.");
} catch (UnregisteredRecipientException e) {