Social Graph: read-only state sync with primary device
This commit is contained in:
parent
12745a2c79
commit
8502d23576
19 changed files with 1035 additions and 57 deletions
|
@ -12,6 +12,8 @@ import {
|
|||
CallingMessageClass,
|
||||
ContentClass,
|
||||
DataMessageClass,
|
||||
StorageServiceCallOptionsType,
|
||||
StorageServiceCredentials,
|
||||
} from '../textsecure.d';
|
||||
import { MessageError, SignedPreKeyRotationError } from './Errors';
|
||||
|
||||
|
@ -810,6 +812,33 @@ export default class MessageSender {
|
|||
return Promise.resolve();
|
||||
}
|
||||
|
||||
async sendRequestKeySyncMessage(options: SendOptionsType) {
|
||||
const myUuid = window.textsecure.storage.user.getUuid();
|
||||
const myNumber = window.textsecure.storage.user.getNumber();
|
||||
const myDevice = window.textsecure.storage.user.getDeviceId();
|
||||
|
||||
if (myDevice === 1 || myDevice === '1') {
|
||||
return;
|
||||
}
|
||||
|
||||
const request = new window.textsecure.protobuf.SyncMessage.Request();
|
||||
request.type = window.textsecure.protobuf.SyncMessage.Request.Type.KEYS;
|
||||
|
||||
const syncMessage = this.createSyncMessage();
|
||||
syncMessage.request = request;
|
||||
const contentMessage = new window.textsecure.protobuf.Content();
|
||||
contentMessage.syncMessage = syncMessage;
|
||||
|
||||
const silent = true;
|
||||
await this.sendIndividualProto(
|
||||
myUuid || myNumber,
|
||||
contentMessage,
|
||||
Date.now(),
|
||||
silent,
|
||||
options
|
||||
);
|
||||
}
|
||||
|
||||
async sendTypingMessage(
|
||||
options: {
|
||||
recipientId: string;
|
||||
|
@ -1630,4 +1659,21 @@ export default class MessageSender {
|
|||
async makeProxiedRequest(url: string, options?: ProxiedRequestOptionsType) {
|
||||
return this.server.makeProxiedRequest(url, options);
|
||||
}
|
||||
|
||||
async getStorageCredentials(): Promise<StorageServiceCredentials> {
|
||||
return this.server.getStorageCredentials();
|
||||
}
|
||||
|
||||
async getStorageManifest(
|
||||
options: StorageServiceCallOptionsType
|
||||
): Promise<ArrayBuffer> {
|
||||
return this.server.getStorageManifest(options);
|
||||
}
|
||||
|
||||
async getStorageRecords(
|
||||
data: ArrayBuffer,
|
||||
options: StorageServiceCallOptionsType
|
||||
): Promise<ArrayBuffer> {
|
||||
return this.server.getStorageRecords(data, options);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue