mirror of
https://github.com/AsamK/signal-cli
synced 2025-08-29 18:40:39 +00:00
Update libsignal-service
This commit is contained in:
parent
4d8b103570
commit
6c4d272309
3 changed files with 13 additions and 10 deletions
|
@ -17,7 +17,7 @@ repositories {
|
|||
}
|
||||
|
||||
dependencies {
|
||||
implementation 'com.github.turasa:signal-service-java:2.15.3_unofficial_12'
|
||||
implementation 'com.github.turasa:signal-service-java:2.15.3_unofficial_13'
|
||||
implementation 'org.bouncycastle:bcprov-jdk15on:1.66'
|
||||
implementation 'net.sourceforge.argparse4j:argparse4j:0.8.1'
|
||||
implementation 'com.github.hypfvieh:dbus-java:3.2.3'
|
||||
|
|
|
@ -153,6 +153,7 @@ public class Manager implements Closeable {
|
|||
private SignalServiceAccountManager accountManager;
|
||||
private SignalServiceMessagePipe messagePipe = null;
|
||||
private SignalServiceMessagePipe unidentifiedMessagePipe = null;
|
||||
private boolean discoverableByPhoneNumber = true;
|
||||
|
||||
public Manager(SignalAccount account, PathConfig pathConfig, SignalServiceConfiguration serviceConfiguration, String userAgent) {
|
||||
this.account = account;
|
||||
|
@ -286,7 +287,7 @@ public class Manager implements Closeable {
|
|||
}
|
||||
|
||||
public void updateAccountAttributes() throws IOException {
|
||||
accountManager.setAccountAttributes(account.getSignalingKey(), account.getSignalProtocolStore().getLocalRegistrationId(), true, account.getRegistrationLockPin(), account.getRegistrationLock(), getSelfUnidentifiedAccessKey(), false, ServiceConfig.capabilities);
|
||||
accountManager.setAccountAttributes(account.getSignalingKey(), account.getSignalProtocolStore().getLocalRegistrationId(), true, account.getRegistrationLockPin(), account.getRegistrationLock(), getSelfUnidentifiedAccessKey(), false, ServiceConfig.capabilities, discoverableByPhoneNumber);
|
||||
}
|
||||
|
||||
public void setProfile(String name, File avatar) throws IOException {
|
||||
|
@ -371,7 +372,7 @@ public class Manager implements Closeable {
|
|||
verificationCode = verificationCode.replace("-", "");
|
||||
account.setSignalingKey(KeyUtils.createSignalingKey());
|
||||
// TODO make unrestricted unidentified access configurable
|
||||
VerifyAccountResponse response = accountManager.verifyAccountWithCode(verificationCode, account.getSignalingKey(), account.getSignalProtocolStore().getLocalRegistrationId(), true, pin, null, getSelfUnidentifiedAccessKey(), false, ServiceConfig.capabilities);
|
||||
VerifyAccountResponse response = accountManager.verifyAccountWithCode(verificationCode, account.getSignalingKey(), account.getSignalProtocolStore().getLocalRegistrationId(), true, pin, null, getSelfUnidentifiedAccessKey(), false, ServiceConfig.capabilities, discoverableByPhoneNumber);
|
||||
|
||||
UUID uuid = UuidUtil.parseOrNull(response.getUuid());
|
||||
// TODO response.isStorageCapable()
|
||||
|
@ -836,7 +837,8 @@ public class Manager implements Closeable {
|
|||
throw new StickerPackInvalidException("Could not find find " + sticker.file);
|
||||
}
|
||||
|
||||
StickerInfo stickerInfo = new StickerInfo(data.first(), data.second(), Optional.fromNullable(sticker.emoji).or(""));
|
||||
String contentType = Utils.getFileMimeType(new File(sticker.file), null);
|
||||
StickerInfo stickerInfo = new StickerInfo(data.first(), data.second(), Optional.fromNullable(sticker.emoji).or(""), contentType);
|
||||
stickers.add(stickerInfo);
|
||||
}
|
||||
|
||||
|
@ -853,7 +855,8 @@ public class Manager implements Closeable {
|
|||
throw new StickerPackInvalidException("Could not find find " + pack.cover.file);
|
||||
}
|
||||
|
||||
cover = new StickerInfo(data.first(), data.second(), Optional.fromNullable(pack.cover.emoji).or(""));
|
||||
String contentType = Utils.getFileMimeType(new File(pack.cover.file), null);
|
||||
cover = new StickerInfo(data.first(), data.second(), Optional.fromNullable(pack.cover.emoji).or(""), contentType);
|
||||
}
|
||||
|
||||
return new SignalServiceStickerManifestUpload(
|
||||
|
@ -925,10 +928,10 @@ public class Manager implements Closeable {
|
|||
|
||||
private byte[] getSenderCertificate() {
|
||||
// TODO support UUID capable sender certificates
|
||||
// byte[] certificate = accountManager.getSenderCertificate();
|
||||
// byte[] certificate = accountManager.getSenderCertificateForPhoneNumberPrivacy();
|
||||
byte[] certificate;
|
||||
try {
|
||||
certificate = accountManager.getSenderCertificateLegacy();
|
||||
certificate = accountManager.getSenderCertificate();
|
||||
} catch (IOException e) {
|
||||
System.err.println("Failed to get sender certificate: " + e);
|
||||
return null;
|
||||
|
|
|
@ -58,7 +58,7 @@ class Utils {
|
|||
return signalServiceAttachments;
|
||||
}
|
||||
|
||||
private static String getFileMimeType(File file) throws IOException {
|
||||
static String getFileMimeType(File file, String defaultMimeType) throws IOException {
|
||||
String mime = Files.probeContentType(file.toPath());
|
||||
if (mime == null) {
|
||||
try (InputStream bufferedStream = new BufferedInputStream(new FileInputStream(file))) {
|
||||
|
@ -66,7 +66,7 @@ class Utils {
|
|||
}
|
||||
}
|
||||
if (mime == null) {
|
||||
mime = "application/octet-stream";
|
||||
return defaultMimeType;
|
||||
}
|
||||
return mime;
|
||||
}
|
||||
|
@ -74,7 +74,7 @@ class Utils {
|
|||
static SignalServiceAttachmentStream createAttachment(File attachmentFile) throws IOException {
|
||||
InputStream attachmentStream = new FileInputStream(attachmentFile);
|
||||
final long attachmentSize = attachmentFile.length();
|
||||
final String mime = getFileMimeType(attachmentFile);
|
||||
final String mime = getFileMimeType(attachmentFile, "application/octet-stream");
|
||||
// TODO mabybe add a parameter to set the voiceNote, borderless, preview, width, height and caption option
|
||||
final long uploadTimestamp = System.currentTimeMillis();
|
||||
Optional<byte[]> preview = Optional.absent();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue