Modify proto wrapper builders to require required fields.
This commit is contained in:
parent
74e456f90e
commit
7d727b7ac9
|
@ -56,7 +56,7 @@
|
||||||
skipped = "NO">
|
skipped = "NO">
|
||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "AB62203226FE5032747AA668B1E97176"
|
BlueprintIdentifier = "2B6F7011088115EAED369AC7DDFF6016"
|
||||||
BuildableName = "SignalServiceKit-Unit-Tests.xctest"
|
BuildableName = "SignalServiceKit-Unit-Tests.xctest"
|
||||||
BlueprintName = "SignalServiceKit-Unit-Tests"
|
BlueprintName = "SignalServiceKit-Unit-Tests"
|
||||||
ReferencedContainer = "container:Pods/Pods.xcodeproj">
|
ReferencedContainer = "container:Pods/Pods.xcodeproj">
|
||||||
|
@ -66,7 +66,7 @@
|
||||||
skipped = "NO">
|
skipped = "NO">
|
||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "16C82802D928A2CB20BFA053635EC8A5"
|
BlueprintIdentifier = "BC89BC6B06642C78EABF18B43FFB41DE"
|
||||||
BuildableName = "SignalCoreKit-Unit-Tests.xctest"
|
BuildableName = "SignalCoreKit-Unit-Tests.xctest"
|
||||||
BlueprintName = "SignalCoreKit-Unit-Tests"
|
BlueprintName = "SignalCoreKit-Unit-Tests"
|
||||||
ReferencedContainer = "container:Pods/Pods.xcodeproj">
|
ReferencedContainer = "container:Pods/Pods.xcodeproj">
|
||||||
|
@ -86,7 +86,7 @@
|
||||||
skipped = "NO">
|
skipped = "NO">
|
||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "27C3FA4C6A84E017AB7D22A24C0AAC16"
|
BlueprintIdentifier = "B4A8ABAC14D962F8F42814238460DF44"
|
||||||
BuildableName = "Curve25519Kit-Unit-Tests.xctest"
|
BuildableName = "Curve25519Kit-Unit-Tests.xctest"
|
||||||
BlueprintName = "Curve25519Kit-Unit-Tests"
|
BlueprintName = "Curve25519Kit-Unit-Tests"
|
||||||
ReferencedContainer = "container:Pods/Pods.xcodeproj">
|
ReferencedContainer = "container:Pods/Pods.xcodeproj">
|
||||||
|
@ -96,7 +96,7 @@
|
||||||
skipped = "NO">
|
skipped = "NO">
|
||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "43480D8706C20F854AFDFDC8D7C6A9C9"
|
BlueprintIdentifier = "E5C44C64CDE3569B16010274DCD48BCC"
|
||||||
BuildableName = "HKDFKit-Unit-Tests.xctest"
|
BuildableName = "HKDFKit-Unit-Tests.xctest"
|
||||||
BlueprintName = "HKDFKit-Unit-Tests"
|
BlueprintName = "HKDFKit-Unit-Tests"
|
||||||
ReferencedContainer = "container:Pods/Pods.xcodeproj">
|
ReferencedContainer = "container:Pods/Pods.xcodeproj">
|
||||||
|
@ -106,7 +106,7 @@
|
||||||
skipped = "NO">
|
skipped = "NO">
|
||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "E97B2552FA4458D2A1EDEDECCF7CC8B4"
|
BlueprintIdentifier = "8D0278E2AE7B02CE43272DFEE6C97FF6"
|
||||||
BuildableName = "SignalMetadataKit-Unit-Tests.xctest"
|
BuildableName = "SignalMetadataKit-Unit-Tests.xctest"
|
||||||
BlueprintName = "SignalMetadataKit-Unit-Tests"
|
BlueprintName = "SignalMetadataKit-Unit-Tests"
|
||||||
ReferencedContainer = "container:Pods/Pods.xcodeproj">
|
ReferencedContainer = "container:Pods/Pods.xcodeproj">
|
||||||
|
|
|
@ -348,17 +348,17 @@ extension WebRTCProtoVideoStreamingStatus.WebRTCProtoVideoStreamingStatusBuilder
|
||||||
}
|
}
|
||||||
|
|
||||||
fileprivate class func parseProto(_ proto: WebRTCProtos_Data) throws -> WebRTCProtoData {
|
fileprivate class func parseProto(_ proto: WebRTCProtos_Data) throws -> WebRTCProtoData {
|
||||||
var connected: WebRTCProtoConnected? = nil
|
var connected: WebRTCProtoConnected?
|
||||||
if proto.hasConnected {
|
if proto.hasConnected {
|
||||||
connected = try WebRTCProtoConnected.parseProto(proto.connected)
|
connected = try WebRTCProtoConnected.parseProto(proto.connected)
|
||||||
}
|
}
|
||||||
|
|
||||||
var hangup: WebRTCProtoHangup? = nil
|
var hangup: WebRTCProtoHangup?
|
||||||
if proto.hasHangup {
|
if proto.hasHangup {
|
||||||
hangup = try WebRTCProtoHangup.parseProto(proto.hangup)
|
hangup = try WebRTCProtoHangup.parseProto(proto.hangup)
|
||||||
}
|
}
|
||||||
|
|
||||||
var videoStreamingStatus: WebRTCProtoVideoStreamingStatus? = nil
|
var videoStreamingStatus: WebRTCProtoVideoStreamingStatus?
|
||||||
if proto.hasVideoStreamingStatus {
|
if proto.hasVideoStreamingStatus {
|
||||||
videoStreamingStatus = try WebRTCProtoVideoStreamingStatus.parseProto(proto.videoStreamingStatus)
|
videoStreamingStatus = try WebRTCProtoVideoStreamingStatus.parseProto(proto.videoStreamingStatus)
|
||||||
}
|
}
|
||||||
|
|
|
@ -143,7 +143,7 @@ public class MessageFetcherJob: NSObject {
|
||||||
throw ParamParser.ParseError.invalidFormat("sourceDevice")
|
throw ParamParser.ParseError.invalidFormat("sourceDevice")
|
||||||
}
|
}
|
||||||
|
|
||||||
let builder = SSKProtoEnvelope.SSKProtoEnvelopeBuilder(type: type, source: source, sourceDevice: sourceDevice, timestamp: timestamp)
|
let builder = SSKProtoEnvelope.builder(type: type, source: source, sourceDevice: sourceDevice, timestamp: timestamp)
|
||||||
|
|
||||||
if let legacyMessage = try params.optionalBase64EncodedData(key: "message") {
|
if let legacyMessage = try params.optionalBase64EncodedData(key: "message") {
|
||||||
builder.setLegacyMessage(legacyMessage)
|
builder.setLegacyMessage(legacyMessage)
|
||||||
|
|
|
@ -33,8 +33,7 @@ class DebugUICalling: DebugUIPage {
|
||||||
let kFakeCallId = UInt64(12345)
|
let kFakeCallId = UInt64(12345)
|
||||||
var hangupMessage: SSKProtoCallMessageHangup
|
var hangupMessage: SSKProtoCallMessageHangup
|
||||||
do {
|
do {
|
||||||
let hangupBuilder = SSKProtoCallMessageHangup.SSKProtoCallMessageHangupBuilder()
|
let hangupBuilder = SSKProtoCallMessageHangup.builder(id: kFakeCallId)
|
||||||
hangupBuilder.setId(kFakeCallId)
|
|
||||||
hangupMessage = try hangupBuilder.build()
|
hangupMessage = try hangupBuilder.build()
|
||||||
} catch {
|
} catch {
|
||||||
owsFailDebug("could not build proto")
|
owsFailDebug("could not build proto")
|
||||||
|
@ -54,8 +53,7 @@ class DebugUICalling: DebugUIPage {
|
||||||
let kFakeCallId = UInt64(12345)
|
let kFakeCallId = UInt64(12345)
|
||||||
var busyMessage: SSKProtoCallMessageBusy
|
var busyMessage: SSKProtoCallMessageBusy
|
||||||
do {
|
do {
|
||||||
let busyBuilder = SSKProtoCallMessageBusy.SSKProtoCallMessageBusyBuilder()
|
let busyBuilder = SSKProtoCallMessageBusy.builder(id: kFakeCallId)
|
||||||
busyBuilder.setId(kFakeCallId)
|
|
||||||
busyMessage = try busyBuilder.build()
|
busyMessage = try busyBuilder.build()
|
||||||
} catch {
|
} catch {
|
||||||
owsFailDebug("Couldn't build proto")
|
owsFailDebug("Couldn't build proto")
|
||||||
|
|
|
@ -3379,11 +3379,10 @@ typedef OWSContact * (^OWSContactBlock)(YapDatabaseReadWriteTransaction *transac
|
||||||
}
|
}
|
||||||
}();
|
}();
|
||||||
|
|
||||||
SSKProtoEnvelopeBuilder *envelopeBuilder =
|
SSKProtoEnvelopeBuilder *envelopeBuilder = [SSKProtoEnvelope builderWithType:SSKProtoEnvelopeTypeCiphertext
|
||||||
[[SSKProtoEnvelopeBuilder alloc] initWithType:SSKProtoEnvelopeTypeCiphertext
|
source:source
|
||||||
source:source
|
sourceDevice:1
|
||||||
sourceDevice:1
|
timestamp:timestamp];
|
||||||
timestamp:timestamp];
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
SSKProtoEnvelope *_Nullable envelope = [envelopeBuilder buildAndReturnError:&error];
|
SSKProtoEnvelope *_Nullable envelope = [envelopeBuilder buildAndReturnError:&error];
|
||||||
if (error || !envelope) {
|
if (error || !envelope) {
|
||||||
|
@ -3869,18 +3868,17 @@ typedef OWSContact * (^OWSContactBlock)(YapDatabaseReadWriteTransaction *transac
|
||||||
NSString *randomText = [self randomText];
|
NSString *randomText = [self randomText];
|
||||||
NSString *text = [[[@(counter) description] stringByAppendingString:@" "] stringByAppendingString:randomText];
|
NSString *text = [[[@(counter) description] stringByAppendingString:@" "] stringByAppendingString:randomText];
|
||||||
|
|
||||||
SSKProtoDataMessageBuilder *dataMessageBuilder = [SSKProtoDataMessageBuilder new];
|
SSKProtoDataMessageBuilder *dataMessageBuilder = [SSKProtoDataMessage builder];
|
||||||
[dataMessageBuilder setBody:text];
|
[dataMessageBuilder setBody:text];
|
||||||
|
|
||||||
if ([thread isKindOfClass:[TSGroupThread class]]) {
|
if ([thread isKindOfClass:[TSGroupThread class]]) {
|
||||||
TSGroupThread *groupThread = (TSGroupThread *)thread;
|
TSGroupThread *groupThread = (TSGroupThread *)thread;
|
||||||
SSKProtoGroupContextBuilder *groupBuilder =
|
SSKProtoGroupContextBuilder *groupBuilder =
|
||||||
[[SSKProtoGroupContextBuilder alloc] initWithId:groupThread.groupModel.groupId
|
[SSKProtoGroupContext builderWithId:groupThread.groupModel.groupId type:SSKProtoGroupContextTypeDeliver];
|
||||||
type:SSKProtoGroupContextTypeDeliver];
|
|
||||||
[dataMessageBuilder setGroup:groupBuilder.buildIgnoringErrors];
|
[dataMessageBuilder setGroup:groupBuilder.buildIgnoringErrors];
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoContentBuilder *payloadBuilder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *payloadBuilder = [SSKProtoContent builder];
|
||||||
[payloadBuilder setDataMessage:dataMessageBuilder.buildIgnoringErrors];
|
[payloadBuilder setDataMessage:dataMessageBuilder.buildIgnoringErrors];
|
||||||
NSData *plaintextData = [payloadBuilder buildIgnoringErrors].serializedDataIgnoringErrors;
|
NSData *plaintextData = [payloadBuilder buildIgnoringErrors].serializedDataIgnoringErrors;
|
||||||
|
|
||||||
|
@ -3899,10 +3897,8 @@ typedef OWSContact * (^OWSContactBlock)(YapDatabaseReadWriteTransaction *transac
|
||||||
SSKProtoEnvelopeType envelopeType = SSKProtoEnvelopeTypeCiphertext;
|
SSKProtoEnvelopeType envelopeType = SSKProtoEnvelopeTypeCiphertext;
|
||||||
NSData *content = plaintextData;
|
NSData *content = plaintextData;
|
||||||
|
|
||||||
SSKProtoEnvelopeBuilder *envelopeBuilder = [[SSKProtoEnvelopeBuilder alloc] initWithType:envelopeType
|
SSKProtoEnvelopeBuilder *envelopeBuilder =
|
||||||
source:source
|
[SSKProtoEnvelope builderWithType:envelopeType source:source sourceDevice:sourceDevice timestamp:timestamp];
|
||||||
sourceDevice:sourceDevice
|
|
||||||
timestamp:timestamp];
|
|
||||||
envelopeBuilder.content = content;
|
envelopeBuilder.content = content;
|
||||||
NSError *error;
|
NSError *error;
|
||||||
NSData *_Nullable envelopeData = [envelopeBuilder buildSerializedDataAndReturnError:&error];
|
NSData *_Nullable envelopeData = [envelopeBuilder buildSerializedDataAndReturnError:&error];
|
||||||
|
|
|
@ -56,7 +56,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
[DebugUIStress sendStressMessage:thread
|
[DebugUIStress sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder =
|
SSKProtoContentBuilder *contentBuilder =
|
||||||
[SSKProtoContentBuilder new];
|
[SSKProtoContent builder];
|
||||||
return [[contentBuilder buildIgnoringErrors]
|
return [[contentBuilder buildIgnoringErrors]
|
||||||
serializedDataIgnoringErrors];
|
serializedDataIgnoringErrors];
|
||||||
}];
|
}];
|
||||||
|
@ -66,9 +66,9 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
[DebugUIStress sendStressMessage:thread
|
[DebugUIStress sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder =
|
SSKProtoContentBuilder *contentBuilder =
|
||||||
[SSKProtoContentBuilder new];
|
[SSKProtoContent builder];
|
||||||
SSKProtoNullMessageBuilder *nullMessageBuilder =
|
SSKProtoNullMessageBuilder *nullMessageBuilder =
|
||||||
[SSKProtoNullMessageBuilder new];
|
[SSKProtoNullMessage builder];
|
||||||
contentBuilder.nullMessage =
|
contentBuilder.nullMessage =
|
||||||
[nullMessageBuilder buildIgnoringErrors];
|
[nullMessageBuilder buildIgnoringErrors];
|
||||||
return [[contentBuilder buildIgnoringErrors]
|
return [[contentBuilder buildIgnoringErrors]
|
||||||
|
@ -81,9 +81,9 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
sendStressMessage:thread
|
sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder =
|
SSKProtoContentBuilder *contentBuilder =
|
||||||
[SSKProtoContentBuilder new];
|
[SSKProtoContent builder];
|
||||||
SSKProtoNullMessageBuilder *nullMessageBuilder =
|
SSKProtoNullMessageBuilder *nullMessageBuilder =
|
||||||
[SSKProtoNullMessageBuilder new];
|
[SSKProtoNullMessage builder];
|
||||||
NSUInteger contentLength = arc4random_uniform(32);
|
NSUInteger contentLength = arc4random_uniform(32);
|
||||||
nullMessageBuilder.padding =
|
nullMessageBuilder.padding =
|
||||||
[Cryptography generateRandomBytes:contentLength];
|
[Cryptography generateRandomBytes:contentLength];
|
||||||
|
@ -98,9 +98,9 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
[DebugUIStress sendStressMessage:thread
|
[DebugUIStress sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder =
|
SSKProtoContentBuilder *contentBuilder =
|
||||||
[SSKProtoContentBuilder new];
|
[SSKProtoContent builder];
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
||||||
[SSKProtoSyncMessageBuilder new];
|
[SSKProtoSyncMessage builder];
|
||||||
contentBuilder.syncMessage =
|
contentBuilder.syncMessage =
|
||||||
[syncMessageBuilder buildIgnoringErrors];
|
[syncMessageBuilder buildIgnoringErrors];
|
||||||
return [[contentBuilder buildIgnoringErrors]
|
return [[contentBuilder buildIgnoringErrors]
|
||||||
|
@ -112,11 +112,11 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
[DebugUIStress sendStressMessage:thread
|
[DebugUIStress sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder =
|
SSKProtoContentBuilder *contentBuilder =
|
||||||
[SSKProtoContentBuilder new];
|
[SSKProtoContent builder];
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
||||||
[SSKProtoSyncMessageBuilder new];
|
[SSKProtoSyncMessage builder];
|
||||||
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
||||||
[SSKProtoSyncMessageSentBuilder new];
|
[SSKProtoSyncMessageSent builder];
|
||||||
syncMessageBuilder.sent =
|
syncMessageBuilder.sent =
|
||||||
[sentBuilder buildIgnoringErrors];
|
[sentBuilder buildIgnoringErrors];
|
||||||
contentBuilder.syncMessage =
|
contentBuilder.syncMessage =
|
||||||
|
@ -131,9 +131,9 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
sendStressMessage:thread
|
sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder =
|
SSKProtoContentBuilder *contentBuilder =
|
||||||
[SSKProtoContentBuilder new];
|
[SSKProtoContent builder];
|
||||||
SSKProtoDataMessageBuilder *dataBuilder =
|
SSKProtoDataMessageBuilder *dataBuilder =
|
||||||
[SSKProtoDataMessageBuilder new];
|
[SSKProtoDataMessage builder];
|
||||||
dataBuilder.body = @" ";
|
dataBuilder.body = @" ";
|
||||||
[DebugUIStress ensureGroupOfDataBuilder:dataBuilder
|
[DebugUIStress ensureGroupOfDataBuilder:dataBuilder
|
||||||
thread:thread];
|
thread:thread];
|
||||||
|
@ -150,12 +150,11 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
[DebugUIStress
|
[DebugUIStress
|
||||||
sendStressMessage:thread
|
sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
SSKProtoDataMessageBuilder *dataBuilder =
|
SSKProtoDataMessageBuilder *dataBuilder = [SSKProtoDataMessage builder];
|
||||||
[SSKProtoDataMessageBuilder new];
|
|
||||||
SSKProtoAttachmentPointerBuilder *attachmentPointer =
|
SSKProtoAttachmentPointerBuilder *attachmentPointer =
|
||||||
[SSKProtoAttachmentPointerBuilder new];
|
[SSKProtoAttachmentPointer
|
||||||
[attachmentPointer setId:arc4random_uniform(32) + 1];
|
builderWithId:arc4random_uniform(32) + 1];
|
||||||
[attachmentPointer setContentType:@"1"];
|
[attachmentPointer setContentType:@"1"];
|
||||||
[attachmentPointer setSize:arc4random_uniform(32) + 1];
|
[attachmentPointer setSize:arc4random_uniform(32) + 1];
|
||||||
[attachmentPointer setDigest:[Cryptography generateRandomBytes:1]];
|
[attachmentPointer setDigest:[Cryptography generateRandomBytes:1]];
|
||||||
|
@ -172,9 +171,9 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
sendStressMessage:thread
|
sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder =
|
SSKProtoContentBuilder *contentBuilder =
|
||||||
[SSKProtoContentBuilder new];
|
[SSKProtoContent builder];
|
||||||
SSKProtoDataMessageBuilder *dataBuilder =
|
SSKProtoDataMessageBuilder *dataBuilder =
|
||||||
[SSKProtoDataMessageBuilder new];
|
[SSKProtoDataMessage builder];
|
||||||
dataBuilder.body = @"alice";
|
dataBuilder.body = @"alice";
|
||||||
[DebugUIStress ensureGroupOfDataBuilder:dataBuilder
|
[DebugUIStress ensureGroupOfDataBuilder:dataBuilder
|
||||||
thread:thread];
|
thread:thread];
|
||||||
|
@ -193,9 +192,9 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
timestamp:timestamp
|
timestamp:timestamp
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder =
|
SSKProtoContentBuilder *contentBuilder =
|
||||||
[SSKProtoContentBuilder new];
|
[SSKProtoContent builder];
|
||||||
SSKProtoDataMessageBuilder *dataBuilder =
|
SSKProtoDataMessageBuilder *dataBuilder =
|
||||||
[SSKProtoDataMessageBuilder new];
|
[SSKProtoDataMessage builder];
|
||||||
dataBuilder.body = [NSString stringWithFormat:@"%@ %d",
|
dataBuilder.body = [NSString stringWithFormat:@"%@ %d",
|
||||||
[NSUUID UUID].UUIDString,
|
[NSUUID UUID].UUIDString,
|
||||||
i];
|
i];
|
||||||
|
@ -216,10 +215,9 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
sendStressMessage:thread
|
sendStressMessage:thread
|
||||||
timestamp:timestamp
|
timestamp:timestamp
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder =
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
[SSKProtoContentBuilder new];
|
|
||||||
SSKProtoDataMessageBuilder *dataBuilder =
|
SSKProtoDataMessageBuilder *dataBuilder =
|
||||||
[SSKProtoDataMessageBuilder new];
|
[SSKProtoDataMessage builder];
|
||||||
dataBuilder.body =
|
dataBuilder.body =
|
||||||
[[NSUUID UUID].UUIDString stringByAppendingString:@" now"];
|
[[NSUUID UUID].UUIDString stringByAppendingString:@" now"];
|
||||||
[DebugUIStress ensureGroupOfDataBuilder:dataBuilder thread:thread];
|
[DebugUIStress ensureGroupOfDataBuilder:dataBuilder thread:thread];
|
||||||
|
@ -237,10 +235,9 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
sendStressMessage:thread
|
sendStressMessage:thread
|
||||||
timestamp:timestamp
|
timestamp:timestamp
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder =
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
[SSKProtoContentBuilder new];
|
|
||||||
SSKProtoDataMessageBuilder *dataBuilder =
|
SSKProtoDataMessageBuilder *dataBuilder =
|
||||||
[SSKProtoDataMessageBuilder new];
|
[SSKProtoDataMessage builder];
|
||||||
dataBuilder.body =
|
dataBuilder.body =
|
||||||
[[NSUUID UUID].UUIDString stringByAppendingString:@" now"];
|
[[NSUUID UUID].UUIDString stringByAppendingString:@" now"];
|
||||||
[DebugUIStress ensureGroupOfDataBuilder:dataBuilder thread:thread];
|
[DebugUIStress ensureGroupOfDataBuilder:dataBuilder thread:thread];
|
||||||
|
@ -258,10 +255,9 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
sendStressMessage:thread
|
sendStressMessage:thread
|
||||||
timestamp:timestamp
|
timestamp:timestamp
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder =
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
[SSKProtoContentBuilder new];
|
|
||||||
SSKProtoDataMessageBuilder *dataBuilder =
|
SSKProtoDataMessageBuilder *dataBuilder =
|
||||||
[SSKProtoDataMessageBuilder new];
|
[SSKProtoDataMessage builder];
|
||||||
dataBuilder.body =
|
dataBuilder.body =
|
||||||
[[NSUUID UUID].UUIDString stringByAppendingString:@" now"];
|
[[NSUUID UUID].UUIDString stringByAppendingString:@" now"];
|
||||||
[DebugUIStress ensureGroupOfDataBuilder:dataBuilder thread:thread];
|
[DebugUIStress ensureGroupOfDataBuilder:dataBuilder thread:thread];
|
||||||
|
@ -272,8 +268,8 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
}]];
|
}]];
|
||||||
[items addObject:[OWSTableItem itemWithTitle:@"Send N text messages with same timestamp"
|
[items addObject:[OWSTableItem itemWithTitle:@"Send N text messages with same timestamp"
|
||||||
actionBlock:^{
|
actionBlock:^{
|
||||||
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
SSKProtoDataMessageBuilder *dataBuilder = [SSKProtoDataMessageBuilder new];
|
SSKProtoDataMessageBuilder *dataBuilder = [SSKProtoDataMessage builder];
|
||||||
dataBuilder.body = @"alice";
|
dataBuilder.body = @"alice";
|
||||||
contentBuilder.dataMessage = [dataBuilder buildIgnoringErrors];
|
contentBuilder.dataMessage = [dataBuilder buildIgnoringErrors];
|
||||||
[DebugUIStress ensureGroupOfDataBuilder:dataBuilder thread:thread];
|
[DebugUIStress ensureGroupOfDataBuilder:dataBuilder thread:thread];
|
||||||
|
@ -297,15 +293,14 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
[DebugUIStress
|
[DebugUIStress
|
||||||
sendStressMessage:thread
|
sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
||||||
[SSKProtoSyncMessageBuilder new];
|
[SSKProtoSyncMessage builder];
|
||||||
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
||||||
[SSKProtoSyncMessageSentBuilder new];
|
[SSKProtoSyncMessageSent builder];
|
||||||
sentBuilder.destination = @"abc";
|
sentBuilder.destination = @"abc";
|
||||||
sentBuilder.timestamp = arc4random_uniform(32) + 1;
|
sentBuilder.timestamp = arc4random_uniform(32) + 1;
|
||||||
SSKProtoDataMessageBuilder *dataBuilder =
|
SSKProtoDataMessageBuilder *dataBuilder = [SSKProtoDataMessage builder];
|
||||||
[SSKProtoDataMessageBuilder new];
|
|
||||||
sentBuilder.message = [dataBuilder buildIgnoringErrors];
|
sentBuilder.message = [dataBuilder buildIgnoringErrors];
|
||||||
syncMessageBuilder.sent = [sentBuilder buildIgnoringErrors];
|
syncMessageBuilder.sent = [sentBuilder buildIgnoringErrors];
|
||||||
contentBuilder.syncMessage = [syncMessageBuilder buildIgnoringErrors];
|
contentBuilder.syncMessage = [syncMessageBuilder buildIgnoringErrors];
|
||||||
|
@ -320,15 +315,14 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
[DebugUIStress
|
[DebugUIStress
|
||||||
sendStressMessage:thread
|
sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
||||||
[SSKProtoSyncMessageBuilder new];
|
[SSKProtoSyncMessage builder];
|
||||||
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
||||||
[SSKProtoSyncMessageSentBuilder new];
|
[SSKProtoSyncMessageSent builder];
|
||||||
sentBuilder.destination = @"abc";
|
sentBuilder.destination = @"abc";
|
||||||
sentBuilder.timestamp = 0;
|
sentBuilder.timestamp = 0;
|
||||||
SSKProtoDataMessageBuilder *dataBuilder =
|
SSKProtoDataMessageBuilder *dataBuilder = [SSKProtoDataMessage builder];
|
||||||
[SSKProtoDataMessageBuilder new];
|
|
||||||
sentBuilder.message = [dataBuilder buildIgnoringErrors];
|
sentBuilder.message = [dataBuilder buildIgnoringErrors];
|
||||||
syncMessageBuilder.sent = [sentBuilder buildIgnoringErrors];
|
syncMessageBuilder.sent = [sentBuilder buildIgnoringErrors];
|
||||||
contentBuilder.syncMessage = [syncMessageBuilder buildIgnoringErrors];
|
contentBuilder.syncMessage = [syncMessageBuilder buildIgnoringErrors];
|
||||||
|
@ -343,15 +337,14 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
[DebugUIStress
|
[DebugUIStress
|
||||||
sendStressMessage:thread
|
sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
||||||
[SSKProtoSyncMessageBuilder new];
|
[SSKProtoSyncMessage builder];
|
||||||
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
||||||
[SSKProtoSyncMessageSentBuilder new];
|
[SSKProtoSyncMessageSent builder];
|
||||||
sentBuilder.destination = @"abc";
|
sentBuilder.destination = @"abc";
|
||||||
sentBuilder.timestamp = 0;
|
sentBuilder.timestamp = 0;
|
||||||
SSKProtoDataMessageBuilder *dataBuilder =
|
SSKProtoDataMessageBuilder *dataBuilder = [SSKProtoDataMessage builder];
|
||||||
[SSKProtoDataMessageBuilder new];
|
|
||||||
dataBuilder.body = @" ";
|
dataBuilder.body = @" ";
|
||||||
sentBuilder.message = [dataBuilder buildIgnoringErrors];
|
sentBuilder.message = [dataBuilder buildIgnoringErrors];
|
||||||
syncMessageBuilder.sent = [sentBuilder buildIgnoringErrors];
|
syncMessageBuilder.sent = [sentBuilder buildIgnoringErrors];
|
||||||
|
@ -367,19 +360,18 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
[DebugUIStress
|
[DebugUIStress
|
||||||
sendStressMessage:thread
|
sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
||||||
[SSKProtoSyncMessageBuilder new];
|
[SSKProtoSyncMessage builder];
|
||||||
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
||||||
[SSKProtoSyncMessageSentBuilder new];
|
[SSKProtoSyncMessageSent builder];
|
||||||
sentBuilder.destination = @"abc";
|
sentBuilder.destination = @"abc";
|
||||||
sentBuilder.timestamp = 0;
|
sentBuilder.timestamp = 0;
|
||||||
SSKProtoDataMessageBuilder *dataBuilder =
|
SSKProtoDataMessageBuilder *dataBuilder = [SSKProtoDataMessage builder];
|
||||||
[SSKProtoDataMessageBuilder new];
|
|
||||||
dataBuilder.body = @" ";
|
dataBuilder.body = @" ";
|
||||||
SSKProtoGroupContextBuilder *groupBuilder =
|
SSKProtoGroupContextBuilder *groupBuilder = [SSKProtoGroupContext
|
||||||
[SSKProtoGroupContextBuilder new];
|
builderWithId:[Cryptography generateRandomBytes:1]
|
||||||
[groupBuilder setId:[Cryptography generateRandomBytes:1]];
|
type:SSKProtoGroupContextTypeDeliver];
|
||||||
dataBuilder.group = [groupBuilder buildIgnoringErrors];
|
dataBuilder.group = [groupBuilder buildIgnoringErrors];
|
||||||
sentBuilder.message = [dataBuilder buildIgnoringErrors];
|
sentBuilder.message = [dataBuilder buildIgnoringErrors];
|
||||||
syncMessageBuilder.sent = [sentBuilder buildIgnoringErrors];
|
syncMessageBuilder.sent = [sentBuilder buildIgnoringErrors];
|
||||||
|
@ -395,19 +387,18 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
[DebugUIStress
|
[DebugUIStress
|
||||||
sendStressMessage:thread
|
sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
||||||
[SSKProtoSyncMessageBuilder new];
|
[SSKProtoSyncMessage builder];
|
||||||
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
||||||
[SSKProtoSyncMessageSentBuilder new];
|
[SSKProtoSyncMessageSent builder];
|
||||||
sentBuilder.destination = @"abc";
|
sentBuilder.destination = @"abc";
|
||||||
sentBuilder.timestamp = 0;
|
sentBuilder.timestamp = 0;
|
||||||
SSKProtoDataMessageBuilder *dataBuilder =
|
SSKProtoDataMessageBuilder *dataBuilder = [SSKProtoDataMessage builder];
|
||||||
[SSKProtoDataMessageBuilder new];
|
|
||||||
dataBuilder.body = @" ";
|
dataBuilder.body = @" ";
|
||||||
SSKProtoGroupContextBuilder *groupBuilder =
|
SSKProtoGroupContextBuilder *groupBuilder = [SSKProtoGroupContext
|
||||||
[SSKProtoGroupContextBuilder new];
|
builderWithId:[Cryptography generateRandomBytes:1]
|
||||||
[groupBuilder setId:[Cryptography generateRandomBytes:1]];
|
type:SSKProtoGroupContextTypeDeliver];
|
||||||
dataBuilder.group = [groupBuilder buildIgnoringErrors];
|
dataBuilder.group = [groupBuilder buildIgnoringErrors];
|
||||||
sentBuilder.message = [dataBuilder buildIgnoringErrors];
|
sentBuilder.message = [dataBuilder buildIgnoringErrors];
|
||||||
syncMessageBuilder.sent = [sentBuilder buildIgnoringErrors];
|
syncMessageBuilder.sent = [sentBuilder buildIgnoringErrors];
|
||||||
|
@ -421,11 +412,11 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
[DebugUIStress sendStressMessage:thread
|
[DebugUIStress sendStressMessage:thread
|
||||||
block:^(SignalRecipient *recipient) {
|
block:^(SignalRecipient *recipient) {
|
||||||
SSKProtoContentBuilder *contentBuilder =
|
SSKProtoContentBuilder *contentBuilder =
|
||||||
[SSKProtoContentBuilder new];
|
[SSKProtoContent builder];
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
SSKProtoSyncMessageBuilder *syncMessageBuilder =
|
||||||
[SSKProtoSyncMessageBuilder new];
|
[SSKProtoSyncMessage builder];
|
||||||
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
SSKProtoSyncMessageSentBuilder *sentBuilder =
|
||||||
[SSKProtoSyncMessageSentBuilder new];
|
[SSKProtoSyncMessageSent builder];
|
||||||
sentBuilder.destination = @"abc";
|
sentBuilder.destination = @"abc";
|
||||||
syncMessageBuilder.sent =
|
syncMessageBuilder.sent =
|
||||||
[sentBuilder buildIgnoringErrors];
|
[sentBuilder buildIgnoringErrors];
|
||||||
|
@ -461,8 +452,8 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
}
|
}
|
||||||
|
|
||||||
TSGroupThread *groupThread = (TSGroupThread *)thread;
|
TSGroupThread *groupThread = (TSGroupThread *)thread;
|
||||||
SSKProtoGroupContextBuilder *groupBuilder = [SSKProtoGroupContextBuilder new];
|
SSKProtoGroupContextBuilder *groupBuilder =
|
||||||
[groupBuilder setType:SSKProtoGroupContextTypeDeliver];
|
[SSKProtoGroupContext builderWithId:groupThread.groupModel.groupId type:SSKProtoGroupContextTypeDeliver];
|
||||||
[groupBuilder setId:groupThread.groupModel.groupId];
|
[groupBuilder setId:groupThread.groupModel.groupId];
|
||||||
[dataBuilder setGroup:groupBuilder.buildIgnoringErrors];
|
[dataBuilder setGroup:groupBuilder.buildIgnoringErrors];
|
||||||
}
|
}
|
||||||
|
|
|
@ -411,7 +411,7 @@ private class SignalCallData: NSObject {
|
||||||
|
|
||||||
return peerConnectionClient.setLocalSessionDescription(sessionDescription).then {
|
return peerConnectionClient.setLocalSessionDescription(sessionDescription).then {
|
||||||
do {
|
do {
|
||||||
let offerBuilder = SSKProtoCallMessageOffer.SSKProtoCallMessageOfferBuilder(id: call.signalingId,
|
let offerBuilder = SSKProtoCallMessageOffer.builder(id: call.signalingId,
|
||||||
sessionDescription: sessionDescription.sdp)
|
sessionDescription: sessionDescription.sdp)
|
||||||
let callMessage = OWSOutgoingCallMessage(thread: call.thread, offerMessage: try offerBuilder.build())
|
let callMessage = OWSOutgoingCallMessage(thread: call.thread, offerMessage: try offerBuilder.build())
|
||||||
return self.messageSender.sendPromise(message: callMessage)
|
return self.messageSender.sendPromise(message: callMessage)
|
||||||
|
@ -547,7 +547,7 @@ private class SignalCallData: NSObject {
|
||||||
Logger.info("for call: \(call.identifiersForLogs) thread: \(call.thread.contactIdentifier())")
|
Logger.info("for call: \(call.identifiersForLogs) thread: \(call.thread.contactIdentifier())")
|
||||||
|
|
||||||
do {
|
do {
|
||||||
let busyBuilder = SSKProtoCallMessageBusy.SSKProtoCallMessageBusyBuilder(id: call.signalingId)
|
let busyBuilder = SSKProtoCallMessageBusy.builder(id: call.signalingId)
|
||||||
let callMessage = OWSOutgoingCallMessage(thread: call.thread, busyMessage: try busyBuilder.build())
|
let callMessage = OWSOutgoingCallMessage(thread: call.thread, busyMessage: try busyBuilder.build())
|
||||||
let sendPromise = messageSender.sendPromise(message: callMessage)
|
let sendPromise = messageSender.sendPromise(message: callMessage)
|
||||||
sendPromise.retainUntilComplete()
|
sendPromise.retainUntilComplete()
|
||||||
|
@ -717,7 +717,7 @@ private class SignalCallData: NSObject {
|
||||||
Logger.info("session description for incoming call: \(newCall.identifiersForLogs), sdp: \(negotiatedSessionDescription.logSafeDescription).")
|
Logger.info("session description for incoming call: \(newCall.identifiersForLogs), sdp: \(negotiatedSessionDescription.logSafeDescription).")
|
||||||
|
|
||||||
do {
|
do {
|
||||||
let answerBuilder = SSKProtoCallMessageAnswer.SSKProtoCallMessageAnswerBuilder(id: newCall.signalingId,
|
let answerBuilder = SSKProtoCallMessageAnswer.builder(id: newCall.signalingId,
|
||||||
sessionDescription: negotiatedSessionDescription.sdp)
|
sessionDescription: negotiatedSessionDescription.sdp)
|
||||||
let callAnswerMessage = OWSOutgoingCallMessage(thread: thread, answerMessage: try answerBuilder.build())
|
let callAnswerMessage = OWSOutgoingCallMessage(thread: thread, answerMessage: try answerBuilder.build())
|
||||||
|
|
||||||
|
@ -861,7 +861,7 @@ private class SignalCallData: NSObject {
|
||||||
* include network accessibility information from the perspective of each client. Once compatible ICEUpdates have been
|
* include network accessibility information from the perspective of each client. Once compatible ICEUpdates have been
|
||||||
* exchanged, the clients can connect.
|
* exchanged, the clients can connect.
|
||||||
*/
|
*/
|
||||||
let iceUpdateBuilder = SSKProtoCallMessageIceUpdate.SSKProtoCallMessageIceUpdateBuilder(id: call.signalingId,
|
let iceUpdateBuilder = SSKProtoCallMessageIceUpdate.builder(id: call.signalingId,
|
||||||
sdpMid: sdpMid,
|
sdpMid: sdpMid,
|
||||||
sdpMlineIndex: UInt32(iceCandidate.sdpMLineIndex),
|
sdpMlineIndex: UInt32(iceCandidate.sdpMLineIndex),
|
||||||
sdp: iceCandidate.sdp)
|
sdp: iceCandidate.sdp)
|
||||||
|
@ -1041,8 +1041,8 @@ private class SignalCallData: NSObject {
|
||||||
|
|
||||||
var messageData: Data
|
var messageData: Data
|
||||||
do {
|
do {
|
||||||
let connectedBuilder = WebRTCProtoConnected.WebRTCProtoConnectedBuilder(id: call.signalingId)
|
let connectedBuilder = WebRTCProtoConnected.builder(id: call.signalingId)
|
||||||
let dataBuilder = WebRTCProtoData.WebRTCProtoDataBuilder()
|
let dataBuilder = WebRTCProtoData.builder()
|
||||||
dataBuilder.setConnected(try connectedBuilder.build())
|
dataBuilder.setConnected(try connectedBuilder.build())
|
||||||
messageData = try dataBuilder.buildSerializedData()
|
messageData = try dataBuilder.buildSerializedData()
|
||||||
} catch {
|
} catch {
|
||||||
|
@ -1179,8 +1179,8 @@ private class SignalCallData: NSObject {
|
||||||
|
|
||||||
var messageData: Data
|
var messageData: Data
|
||||||
do {
|
do {
|
||||||
let hangupBuilder = WebRTCProtoHangup.WebRTCProtoHangupBuilder(id: call.signalingId)
|
let hangupBuilder = WebRTCProtoHangup.builder(id: call.signalingId)
|
||||||
let dataBuilder = WebRTCProtoData.WebRTCProtoDataBuilder()
|
let dataBuilder = WebRTCProtoData.builder()
|
||||||
dataBuilder.setHangup(try hangupBuilder.build())
|
dataBuilder.setHangup(try hangupBuilder.build())
|
||||||
messageData = try dataBuilder.buildSerializedData()
|
messageData = try dataBuilder.buildSerializedData()
|
||||||
} catch {
|
} catch {
|
||||||
|
@ -1195,7 +1195,7 @@ private class SignalCallData: NSObject {
|
||||||
|
|
||||||
// If the call hasn't started yet, we don't have a data channel to communicate the hang up. Use Signal Service Message.
|
// If the call hasn't started yet, we don't have a data channel to communicate the hang up. Use Signal Service Message.
|
||||||
do {
|
do {
|
||||||
let hangupBuilder = SSKProtoCallMessageHangup.SSKProtoCallMessageHangupBuilder(id: call.signalingId)
|
let hangupBuilder = SSKProtoCallMessageHangup.builder(id: call.signalingId)
|
||||||
let callMessage = OWSOutgoingCallMessage(thread: call.thread, hangupMessage: try hangupBuilder.build())
|
let callMessage = OWSOutgoingCallMessage(thread: call.thread, hangupMessage: try hangupBuilder.build())
|
||||||
let sendPromise = self.messageSender.sendPromise(message: callMessage).then {
|
let sendPromise = self.messageSender.sendPromise(message: callMessage).then {
|
||||||
Logger.debug("successfully sent hangup call message to \(call.thread.contactIdentifier())")
|
Logger.debug("successfully sent hangup call message to \(call.thread.contactIdentifier())")
|
||||||
|
@ -1680,9 +1680,9 @@ private class SignalCallData: NSObject {
|
||||||
|
|
||||||
var messageData: Data
|
var messageData: Data
|
||||||
do {
|
do {
|
||||||
let videoStreamingStatusBuilder = WebRTCProtoVideoStreamingStatus.WebRTCProtoVideoStreamingStatusBuilder(id: call.signalingId)
|
let videoStreamingStatusBuilder = WebRTCProtoVideoStreamingStatus.builder(id: call.signalingId)
|
||||||
videoStreamingStatusBuilder.setEnabled(shouldHaveLocalVideoTrack)
|
videoStreamingStatusBuilder.setEnabled(shouldHaveLocalVideoTrack)
|
||||||
let dataBuilder = WebRTCProtoData.WebRTCProtoDataBuilder()
|
let dataBuilder = WebRTCProtoData.builder()
|
||||||
dataBuilder.setVideoStreamingStatus(try videoStreamingStatusBuilder.build())
|
dataBuilder.setVideoStreamingStatus(try videoStreamingStatusBuilder.build())
|
||||||
messageData = try dataBuilder.buildSerializedData()
|
messageData = try dataBuilder.buildSerializedData()
|
||||||
} catch {
|
} catch {
|
||||||
|
|
|
@ -122,11 +122,11 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!self.backupSnapshotBuilder) {
|
if (!self.backupSnapshotBuilder) {
|
||||||
self.backupSnapshotBuilder = [SignalIOSProtoBackupSnapshotBuilder new];
|
self.backupSnapshotBuilder = [SignalIOSProtoBackupSnapshot builder];
|
||||||
}
|
}
|
||||||
|
|
||||||
SignalIOSProtoBackupSnapshotBackupEntityBuilder *entityBuilder =
|
SignalIOSProtoBackupSnapshotBackupEntityBuilder *entityBuilder =
|
||||||
[[SignalIOSProtoBackupSnapshotBackupEntityBuilder alloc] initWithType:entityType entityData:data];
|
[SignalIOSProtoBackupSnapshotBackupEntity builderWithType:entityType entityData:data];
|
||||||
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
SignalIOSProtoBackupSnapshotBackupEntity *_Nullable entity = [entityBuilder buildAndReturnError:&error];
|
SignalIOSProtoBackupSnapshotBackupEntity *_Nullable entity = [entityBuilder buildAndReturnError:&error];
|
||||||
|
|
|
@ -66,28 +66,14 @@ class SSKProtoEnvelopeTest: SignalBaseTest {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func testParse_buildVsRequired() {
|
|
||||||
let builder = SSKProtoEnvelope.SSKProtoEnvelopeBuilder()
|
|
||||||
|
|
||||||
XCTAssertThrowsError(try builder.build()) { (error) -> Void in
|
|
||||||
switch error {
|
|
||||||
case SSKProtoError.invalidProtobuf:
|
|
||||||
break
|
|
||||||
default:
|
|
||||||
XCTFail("unexpected error: \(error)")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func testParse_roundtrip() {
|
func testParse_roundtrip() {
|
||||||
let builder = SSKProtoEnvelope.SSKProtoEnvelopeBuilder()
|
let builder = SSKProtoEnvelope.builder(type: SSKProtoEnvelope.SSKProtoEnvelopeType.prekeyBundle,
|
||||||
|
source: "+13213214321",
|
||||||
|
sourceDevice: 1,
|
||||||
|
timestamp: 123)
|
||||||
|
|
||||||
let phonyContent = "phony data".data(using: .utf8)!
|
let phonyContent = "phony data".data(using: .utf8)!
|
||||||
|
|
||||||
builder.setType(SSKProtoEnvelope.SSKProtoEnvelopeType.prekeyBundle)
|
|
||||||
builder.setTimestamp(123)
|
|
||||||
builder.setSource("+13213214321")
|
|
||||||
builder.setSourceDevice(1)
|
|
||||||
builder.setContent(phonyContent)
|
builder.setContent(phonyContent)
|
||||||
|
|
||||||
var envelopeData: Data
|
var envelopeData: Data
|
||||||
|
|
|
@ -115,11 +115,10 @@ class PeerConnectionClientTest: SignalBaseTest {
|
||||||
func testDataChannelMessage() {
|
func testDataChannelMessage() {
|
||||||
XCTAssertEqual(0, clientDelegate.dataChannelMessages.count)
|
XCTAssertEqual(0, clientDelegate.dataChannelMessages.count)
|
||||||
|
|
||||||
let hangupBuilder = WebRTCProtoHangup.WebRTCProtoHangupBuilder()
|
let hangupBuilder = WebRTCProtoHangup.builder(id: 123)
|
||||||
hangupBuilder.setId(123)
|
|
||||||
let hangup = try! hangupBuilder.build()
|
let hangup = try! hangupBuilder.build()
|
||||||
|
|
||||||
let dataBuilder = WebRTCProtoData.WebRTCProtoDataBuilder()
|
let dataBuilder = WebRTCProtoData.builder()
|
||||||
dataBuilder.setHangup(hangup)
|
dataBuilder.setHangup(hangup)
|
||||||
let hangupData = try! dataBuilder.buildSerializedData()
|
let hangupData = try! dataBuilder.buildSerializedData()
|
||||||
let hangupBuffer = RTCDataBuffer(data: hangupData, isBinary: false)
|
let hangupBuffer = RTCDataBuffer(data: hangupData, isBinary: false)
|
||||||
|
|
|
@ -36,7 +36,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
- (nullable SSKProtoSyncMessageBuilder *)syncMessageBuilder
|
- (nullable SSKProtoSyncMessageBuilder *)syncMessageBuilder
|
||||||
{
|
{
|
||||||
SSKProtoSyncMessageBlockedBuilder *blockedBuilder = [SSKProtoSyncMessageBlockedBuilder new];
|
SSKProtoSyncMessageBlockedBuilder *blockedBuilder = [SSKProtoSyncMessageBlocked builder];
|
||||||
[blockedBuilder setNumbers:_phoneNumbers];
|
[blockedBuilder setNumbers:_phoneNumbers];
|
||||||
[blockedBuilder setGroupIds:_groupIds];
|
[blockedBuilder setGroupIds:_groupIds];
|
||||||
|
|
||||||
|
@ -47,7 +47,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder = [SSKProtoSyncMessageBuilder new];
|
SSKProtoSyncMessageBuilder *syncMessageBuilder = [SSKProtoSyncMessage builder];
|
||||||
[syncMessageBuilder setBlocked:blockedProto];
|
[syncMessageBuilder setBlocked:blockedProto];
|
||||||
return syncMessageBuilder;
|
return syncMessageBuilder;
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,9 +31,9 @@ disappearingMessagesConfiguration:(nullable OWSDisappearingMessagesConfiguration
|
||||||
OWSAssertDebug(signalAccount.contact);
|
OWSAssertDebug(signalAccount.contact);
|
||||||
OWSAssertDebug(contactsManager);
|
OWSAssertDebug(contactsManager);
|
||||||
|
|
||||||
SSKProtoContactDetailsBuilder *contactBuilder = [SSKProtoContactDetailsBuilder new];
|
SSKProtoContactDetailsBuilder *contactBuilder =
|
||||||
|
[SSKProtoContactDetails builderWithNumber:signalAccount.recipientId];
|
||||||
[contactBuilder setName:signalAccount.contact.fullName];
|
[contactBuilder setName:signalAccount.contact.fullName];
|
||||||
[contactBuilder setNumber:signalAccount.recipientId];
|
|
||||||
[contactBuilder setColor:conversationColorName];
|
[contactBuilder setColor:conversationColorName];
|
||||||
|
|
||||||
if (recipientIdentity != nil) {
|
if (recipientIdentity != nil) {
|
||||||
|
@ -53,8 +53,7 @@ disappearingMessagesConfiguration:(nullable OWSDisappearingMessagesConfiguration
|
||||||
if (rawAvatar) {
|
if (rawAvatar) {
|
||||||
avatarPng = UIImagePNGRepresentation(rawAvatar);
|
avatarPng = UIImagePNGRepresentation(rawAvatar);
|
||||||
if (avatarPng) {
|
if (avatarPng) {
|
||||||
SSKProtoContactDetailsAvatarBuilder *avatarBuilder =
|
SSKProtoContactDetailsAvatarBuilder *avatarBuilder = [SSKProtoContactDetailsAvatar builder];
|
||||||
[SSKProtoContactDetailsAvatarBuilder new];
|
|
||||||
[avatarBuilder setContentType:OWSMimeTypeImagePng];
|
[avatarBuilder setContentType:OWSMimeTypeImagePng];
|
||||||
[avatarBuilder setLength:(uint32_t)avatarPng.length];
|
[avatarBuilder setLength:(uint32_t)avatarPng.length];
|
||||||
|
|
||||||
|
|
|
@ -22,8 +22,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
TSGroupModel *group = groupThread.groupModel;
|
TSGroupModel *group = groupThread.groupModel;
|
||||||
OWSAssertDebug(group);
|
OWSAssertDebug(group);
|
||||||
|
|
||||||
SSKProtoGroupDetailsBuilder *groupBuilder = [SSKProtoGroupDetailsBuilder new];
|
SSKProtoGroupDetailsBuilder *groupBuilder = [SSKProtoGroupDetails builderWithId:group.groupId];
|
||||||
[groupBuilder setId:group.groupId];
|
|
||||||
[groupBuilder setName:group.groupName];
|
[groupBuilder setName:group.groupName];
|
||||||
[groupBuilder setMembers:group.groupMemberIds];
|
[groupBuilder setMembers:group.groupMemberIds];
|
||||||
[groupBuilder setColor:groupThread.conversationColorName];
|
[groupBuilder setColor:groupThread.conversationColorName];
|
||||||
|
@ -34,8 +33,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
NSData *avatarPng;
|
NSData *avatarPng;
|
||||||
if (group.groupImage) {
|
if (group.groupImage) {
|
||||||
SSKProtoGroupDetailsAvatarBuilder *avatarBuilder =
|
SSKProtoGroupDetailsAvatarBuilder *avatarBuilder = [SSKProtoGroupDetailsAvatar builder];
|
||||||
[SSKProtoGroupDetailsAvatarBuilder new];
|
|
||||||
|
|
||||||
[avatarBuilder setContentType:OWSMimeTypeImagePng];
|
[avatarBuilder setContentType:OWSMimeTypeImagePng];
|
||||||
avatarPng = UIImagePNGRepresentation(group.groupImage);
|
avatarPng = UIImagePNGRepresentation(group.groupImage);
|
||||||
|
|
|
@ -52,13 +52,13 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
- (nullable NSData *)buildEncryptedMessageBody
|
- (nullable NSData *)buildEncryptedMessageBody
|
||||||
{
|
{
|
||||||
ProvisioningProtoProvisionMessageBuilder *messageBuilder =
|
ProvisioningProtoProvisionMessageBuilder *messageBuilder =
|
||||||
[[ProvisioningProtoProvisionMessageBuilder alloc] initWithIdentityKeyPublic:self.myPublicKey
|
[ProvisioningProtoProvisionMessage builderWithIdentityKeyPublic:self.myPublicKey
|
||||||
identityKeyPrivate:self.myPrivateKey
|
identityKeyPrivate:self.myPrivateKey
|
||||||
number:self.accountIdentifier
|
number:self.accountIdentifier
|
||||||
provisioningCode:self.provisioningCode
|
provisioningCode:self.provisioningCode
|
||||||
userAgent:@"OWI"
|
userAgent:@"OWI"
|
||||||
profileKey:self.profileKey
|
profileKey:self.profileKey
|
||||||
readReceipts:self.areReadReceiptsEnabled];
|
readReceipts:self.areReadReceiptsEnabled];
|
||||||
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
NSData *_Nullable plainTextProvisionMessage = [messageBuilder buildSerializedDataAndReturnError:&error];
|
NSData *_Nullable plainTextProvisionMessage = [messageBuilder buildSerializedDataAndReturnError:&error];
|
||||||
|
@ -76,8 +76,8 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
// Note that this is a one-time-use *cipher* public key, not our Signal *identity* public key
|
// Note that this is a one-time-use *cipher* public key, not our Signal *identity* public key
|
||||||
ProvisioningProtoProvisionEnvelopeBuilder *envelopeBuilder =
|
ProvisioningProtoProvisionEnvelopeBuilder *envelopeBuilder =
|
||||||
[[ProvisioningProtoProvisionEnvelopeBuilder alloc] initWithPublicKey:[cipher.ourPublicKey prependKeyType]
|
[ProvisioningProtoProvisionEnvelope builderWithPublicKey:[cipher.ourPublicKey prependKeyType]
|
||||||
body:encryptedProvisionMessage];
|
body:encryptedProvisionMessage];
|
||||||
|
|
||||||
NSData *_Nullable envelopeData = [envelopeBuilder buildSerializedDataAndReturnError:&error];
|
NSData *_Nullable envelopeData = [envelopeBuilder buildSerializedDataAndReturnError:&error];
|
||||||
if (!envelopeData || error) {
|
if (!envelopeData || error) {
|
||||||
|
|
|
@ -35,11 +35,10 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
- (nullable SSKProtoSyncMessageBuilder *)syncMessageBuilder
|
- (nullable SSKProtoSyncMessageBuilder *)syncMessageBuilder
|
||||||
{
|
{
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder = [SSKProtoSyncMessageBuilder new];
|
SSKProtoSyncMessageBuilder *syncMessageBuilder = [SSKProtoSyncMessage builder];
|
||||||
for (OWSLinkedDeviceReadReceipt *readReceipt in self.readReceipts) {
|
for (OWSLinkedDeviceReadReceipt *readReceipt in self.readReceipts) {
|
||||||
SSKProtoSyncMessageReadBuilder *readProtoBuilder =
|
SSKProtoSyncMessageReadBuilder *readProtoBuilder =
|
||||||
[[SSKProtoSyncMessageReadBuilder alloc] initWithSender:readReceipt.senderId
|
[SSKProtoSyncMessageRead builderWithSender:readReceipt.senderId timestamp:readReceipt.messageIdTimestamp];
|
||||||
timestamp:readReceipt.messageIdTimestamp];
|
|
||||||
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
SSKProtoSyncMessageRead *_Nullable readProto = [readProtoBuilder buildAndReturnError:&error];
|
SSKProtoSyncMessageRead *_Nullable readProto = [readProtoBuilder buildAndReturnError:&error];
|
||||||
|
|
|
@ -64,7 +64,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
[contentBuilder setReceiptMessage:receiptMessage];
|
[contentBuilder setReceiptMessage:receiptMessage];
|
||||||
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
|
@ -78,8 +78,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
- (nullable SSKProtoReceiptMessage *)buildReceiptMessage:(NSString *)recipientId
|
- (nullable SSKProtoReceiptMessage *)buildReceiptMessage:(NSString *)recipientId
|
||||||
{
|
{
|
||||||
SSKProtoReceiptMessageBuilder *builder = [SSKProtoReceiptMessageBuilder new];
|
SSKProtoReceiptMessageBuilder *builder = [SSKProtoReceiptMessage builderWithType:SSKProtoReceiptMessageTypeRead];
|
||||||
[builder setType:SSKProtoReceiptMessageTypeRead];
|
|
||||||
|
|
||||||
OWSAssertDebug(self.messageTimestamps.count > 0);
|
OWSAssertDebug(self.messageTimestamps.count > 0);
|
||||||
for (NSNumber *messageTimestamp in self.messageTimestamps) {
|
for (NSNumber *messageTimestamp in self.messageTimestamps) {
|
||||||
|
|
|
@ -77,7 +77,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder = [SSKProtoSyncMessageBuilder new];
|
SSKProtoSyncMessageBuilder *syncMessageBuilder = [SSKProtoSyncMessage builder];
|
||||||
[syncMessageBuilder setVerified:verifiedProto];
|
[syncMessageBuilder setVerified:verifiedProto];
|
||||||
return syncMessageBuilder;
|
return syncMessageBuilder;
|
||||||
}
|
}
|
||||||
|
|
|
@ -906,9 +906,7 @@ typedef void (^OWSLoadedThumbnailSuccess)(OWSLoadedThumbnail *loadedThumbnail);
|
||||||
|
|
||||||
- (nullable SSKProtoAttachmentPointer *)buildProto
|
- (nullable SSKProtoAttachmentPointer *)buildProto
|
||||||
{
|
{
|
||||||
SSKProtoAttachmentPointerBuilder *builder = [SSKProtoAttachmentPointerBuilder new];
|
SSKProtoAttachmentPointerBuilder *builder = [SSKProtoAttachmentPointer builderWithId:self.serverId];
|
||||||
|
|
||||||
builder.id = self.serverId;
|
|
||||||
|
|
||||||
OWSAssertDebug(self.contentType.length > 0);
|
OWSAssertDebug(self.contentType.length > 0);
|
||||||
builder.contentType = self.contentType;
|
builder.contentType = self.contentType;
|
||||||
|
|
|
@ -55,7 +55,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
- (nullable SSKProtoSyncMessageBuilder *)syncMessageBuilder
|
- (nullable SSKProtoSyncMessageBuilder *)syncMessageBuilder
|
||||||
{
|
{
|
||||||
SSKProtoSyncMessageSentBuilder *sentBuilder = [SSKProtoSyncMessageSentBuilder new];
|
SSKProtoSyncMessageSentBuilder *sentBuilder = [SSKProtoSyncMessageSent builder];
|
||||||
[sentBuilder setTimestamp:self.message.timestamp];
|
[sentBuilder setTimestamp:self.message.timestamp];
|
||||||
[sentBuilder setDestination:self.sentRecipientId];
|
[sentBuilder setDestination:self.sentRecipientId];
|
||||||
|
|
||||||
|
@ -74,7 +74,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder = [SSKProtoSyncMessageBuilder new];
|
SSKProtoSyncMessageBuilder *syncMessageBuilder = [SSKProtoSyncMessage builder];
|
||||||
[syncMessageBuilder setSent:sentProto];
|
[syncMessageBuilder setSent:sentProto];
|
||||||
return syncMessageBuilder;
|
return syncMessageBuilder;
|
||||||
}
|
}
|
||||||
|
|
|
@ -72,7 +72,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
{
|
{
|
||||||
OWSAbstractMethod();
|
OWSAbstractMethod();
|
||||||
|
|
||||||
return [SSKProtoSyncMessageBuilder new];
|
return [SSKProtoSyncMessage builder];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (nullable NSData *)buildPlainTextData:(SignalRecipient *)recipient
|
- (nullable NSData *)buildPlainTextData:(SignalRecipient *)recipient
|
||||||
|
@ -82,7 +82,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
[contentBuilder setSyncMessage:syncMessage];
|
[contentBuilder setSyncMessage:syncMessage];
|
||||||
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
|
|
|
@ -34,8 +34,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
- (nullable SSKProtoSyncMessageBuilder *)syncMessageBuilder
|
- (nullable SSKProtoSyncMessageBuilder *)syncMessageBuilder
|
||||||
{
|
{
|
||||||
SSKProtoSyncMessageConfigurationBuilder *configurationBuilder =
|
SSKProtoSyncMessageConfigurationBuilder *configurationBuilder = [SSKProtoSyncMessageConfiguration builder];
|
||||||
[SSKProtoSyncMessageConfigurationBuilder new];
|
|
||||||
configurationBuilder.readReceipts = self.areReadReceiptsEnabled;
|
configurationBuilder.readReceipts = self.areReadReceiptsEnabled;
|
||||||
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
|
@ -45,7 +44,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoSyncMessageBuilder *builder = [SSKProtoSyncMessageBuilder new];
|
SSKProtoSyncMessageBuilder *builder = [SSKProtoSyncMessage builder];
|
||||||
builder.configuration = configurationProto;
|
builder.configuration = configurationProto;
|
||||||
return builder;
|
return builder;
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,9 +63,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoSyncMessageContactsBuilder *contactsBuilder =
|
SSKProtoSyncMessageContactsBuilder *contactsBuilder = [SSKProtoSyncMessageContacts builderWithBlob:attachmentProto];
|
||||||
[SSKProtoSyncMessageContactsBuilder new];
|
|
||||||
[contactsBuilder setBlob:attachmentProto];
|
|
||||||
[contactsBuilder setIsComplete:YES];
|
[contactsBuilder setIsComplete:YES];
|
||||||
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
|
@ -74,7 +72,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
OWSFailDebug(@"could not build protobuf: %@", error);
|
OWSFailDebug(@"could not build protobuf: %@", error);
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder = [SSKProtoSyncMessageBuilder new];
|
SSKProtoSyncMessageBuilder *syncMessageBuilder = [SSKProtoSyncMessage builder];
|
||||||
[syncMessageBuilder setContacts:contactsProto];
|
[syncMessageBuilder setContacts:contactsProto];
|
||||||
return syncMessageBuilder;
|
return syncMessageBuilder;
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,8 +40,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoSyncMessageGroupsBuilder *groupsBuilder =
|
SSKProtoSyncMessageGroupsBuilder *groupsBuilder = [SSKProtoSyncMessageGroups builder];
|
||||||
[SSKProtoSyncMessageGroupsBuilder new];
|
|
||||||
[groupsBuilder setBlob:attachmentProto];
|
[groupsBuilder setBlob:attachmentProto];
|
||||||
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
|
@ -51,7 +50,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoSyncMessageBuilder *syncMessageBuilder = [SSKProtoSyncMessageBuilder new];
|
SSKProtoSyncMessageBuilder *syncMessageBuilder = [SSKProtoSyncMessage builder];
|
||||||
[syncMessageBuilder setGroups:groupsProto];
|
[syncMessageBuilder setGroups:groupsProto];
|
||||||
|
|
||||||
return syncMessageBuilder;
|
return syncMessageBuilder;
|
||||||
|
|
|
@ -60,7 +60,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
- (nullable SSKProtoDataMessageBuilder *)dataMessageBuilder
|
- (nullable SSKProtoDataMessageBuilder *)dataMessageBuilder
|
||||||
{
|
{
|
||||||
SSKProtoGroupContextBuilder *groupContextBuilder =
|
SSKProtoGroupContextBuilder *groupContextBuilder =
|
||||||
[[SSKProtoGroupContextBuilder alloc] initWithId:self.groupId type:SSKProtoGroupContextTypeRequestInfo];
|
[SSKProtoGroupContext builderWithId:self.groupId type:SSKProtoGroupContextTypeRequestInfo];
|
||||||
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
SSKProtoGroupContext *_Nullable groupContextProto = [groupContextBuilder buildAndReturnError:&error];
|
SSKProtoGroupContext *_Nullable groupContextProto = [groupContextBuilder buildAndReturnError:&error];
|
||||||
|
@ -69,7 +69,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoDataMessageBuilder *builder = [SSKProtoDataMessageBuilder new];
|
SSKProtoDataMessageBuilder *builder = [SSKProtoDataMessage builder];
|
||||||
[builder setTimestamp:self.timestamp];
|
[builder setTimestamp:self.timestamp];
|
||||||
[builder setGroup:groupContextProto];
|
[builder setGroup:groupContextProto];
|
||||||
|
|
||||||
|
|
|
@ -770,11 +770,9 @@ NSString *NSStringForContactAddressType(OWSContactAddressType value)
|
||||||
{
|
{
|
||||||
OWSAssertDebug(contact);
|
OWSAssertDebug(contact);
|
||||||
|
|
||||||
SSKProtoDataMessageContactBuilder *contactBuilder =
|
SSKProtoDataMessageContactBuilder *contactBuilder = [SSKProtoDataMessageContact builder];
|
||||||
[SSKProtoDataMessageContactBuilder new];
|
|
||||||
|
|
||||||
SSKProtoDataMessageContactNameBuilder *nameBuilder =
|
SSKProtoDataMessageContactNameBuilder *nameBuilder = [SSKProtoDataMessageContactName builder];
|
||||||
[SSKProtoDataMessageContactNameBuilder new];
|
|
||||||
|
|
||||||
OWSContactName *contactName = contact.name;
|
OWSContactName *contactName = contact.name;
|
||||||
if (contactName.givenName.ows_stripped.length > 0) {
|
if (contactName.givenName.ows_stripped.length > 0) {
|
||||||
|
@ -806,8 +804,7 @@ NSString *NSStringForContactAddressType(OWSContactAddressType value)
|
||||||
}
|
}
|
||||||
|
|
||||||
for (OWSContactPhoneNumber *phoneNumber in contact.phoneNumbers) {
|
for (OWSContactPhoneNumber *phoneNumber in contact.phoneNumbers) {
|
||||||
SSKProtoDataMessageContactPhoneBuilder *phoneBuilder =
|
SSKProtoDataMessageContactPhoneBuilder *phoneBuilder = [SSKProtoDataMessageContactPhone builder];
|
||||||
[SSKProtoDataMessageContactPhoneBuilder new];
|
|
||||||
phoneBuilder.value = phoneNumber.phoneNumber;
|
phoneBuilder.value = phoneNumber.phoneNumber;
|
||||||
if (phoneNumber.label.ows_stripped.length > 0) {
|
if (phoneNumber.label.ows_stripped.length > 0) {
|
||||||
phoneBuilder.label = phoneNumber.label.ows_stripped;
|
phoneBuilder.label = phoneNumber.label.ows_stripped;
|
||||||
|
@ -835,8 +832,7 @@ NSString *NSStringForContactAddressType(OWSContactAddressType value)
|
||||||
}
|
}
|
||||||
|
|
||||||
for (OWSContactEmail *email in contact.emails) {
|
for (OWSContactEmail *email in contact.emails) {
|
||||||
SSKProtoDataMessageContactEmailBuilder *emailBuilder =
|
SSKProtoDataMessageContactEmailBuilder *emailBuilder = [SSKProtoDataMessageContactEmail builder];
|
||||||
[SSKProtoDataMessageContactEmailBuilder new];
|
|
||||||
emailBuilder.value = email.email;
|
emailBuilder.value = email.email;
|
||||||
if (email.label.ows_stripped.length > 0) {
|
if (email.label.ows_stripped.length > 0) {
|
||||||
emailBuilder.label = email.label.ows_stripped;
|
emailBuilder.label = email.label.ows_stripped;
|
||||||
|
@ -865,7 +861,7 @@ NSString *NSStringForContactAddressType(OWSContactAddressType value)
|
||||||
|
|
||||||
for (OWSContactAddress *address in contact.addresses) {
|
for (OWSContactAddress *address in contact.addresses) {
|
||||||
SSKProtoDataMessageContactPostalAddressBuilder *addressBuilder =
|
SSKProtoDataMessageContactPostalAddressBuilder *addressBuilder =
|
||||||
[SSKProtoDataMessageContactPostalAddressBuilder new];
|
[SSKProtoDataMessageContactPostalAddress builder];
|
||||||
if (address.label.ows_stripped.length > 0) {
|
if (address.label.ows_stripped.length > 0) {
|
||||||
addressBuilder.label = address.label.ows_stripped;
|
addressBuilder.label = address.label.ows_stripped;
|
||||||
}
|
}
|
||||||
|
@ -904,7 +900,7 @@ NSString *NSStringForContactAddressType(OWSContactAddressType value)
|
||||||
if (!attachmentProto) {
|
if (!attachmentProto) {
|
||||||
OWSLogError(@"could not build protobuf: %@", error);
|
OWSLogError(@"could not build protobuf: %@", error);
|
||||||
} else {
|
} else {
|
||||||
SSKProtoDataMessageContactAvatarBuilder *avatarBuilder = [SSKProtoDataMessageContactAvatarBuilder new];
|
SSKProtoDataMessageContactAvatarBuilder *avatarBuilder = [SSKProtoDataMessageContactAvatar builder];
|
||||||
avatarBuilder.avatar = attachmentProto;
|
avatarBuilder.avatar = attachmentProto;
|
||||||
SSKProtoDataMessageContactAvatar *_Nullable avatarProto = [avatarBuilder buildAndReturnError:&error];
|
SSKProtoDataMessageContactAvatar *_Nullable avatarProto = [avatarBuilder buildAndReturnError:&error];
|
||||||
if (error || !avatarProto) {
|
if (error || !avatarProto) {
|
||||||
|
|
|
@ -802,8 +802,8 @@ NSString *NSStringForOutgoingMessageRecipientState(OWSOutgoingMessageRecipientSt
|
||||||
{
|
{
|
||||||
TSThread *thread = self.thread;
|
TSThread *thread = self.thread;
|
||||||
OWSAssertDebug(thread);
|
OWSAssertDebug(thread);
|
||||||
|
|
||||||
SSKProtoDataMessageBuilder *builder = [SSKProtoDataMessageBuilder new];
|
SSKProtoDataMessageBuilder *builder = [SSKProtoDataMessage builder];
|
||||||
[builder setTimestamp:self.timestamp];
|
[builder setTimestamp:self.timestamp];
|
||||||
|
|
||||||
if ([self.body lengthOfBytesUsingEncoding:NSUTF8StringEncoding] <= kOversizeTextMessageSizeThreshold) {
|
if ([self.body lengthOfBytesUsingEncoding:NSUTF8StringEncoding] <= kOversizeTextMessageSizeThreshold) {
|
||||||
|
@ -824,36 +824,36 @@ NSString *NSStringForOutgoingMessageRecipientState(OWSOutgoingMessageRecipientSt
|
||||||
BOOL attachmentWasGroupAvatar = NO;
|
BOOL attachmentWasGroupAvatar = NO;
|
||||||
if ([thread isKindOfClass:[TSGroupThread class]]) {
|
if ([thread isKindOfClass:[TSGroupThread class]]) {
|
||||||
TSGroupThread *gThread = (TSGroupThread *)thread;
|
TSGroupThread *gThread = (TSGroupThread *)thread;
|
||||||
SSKProtoGroupContextBuilder *groupBuilder = [SSKProtoGroupContextBuilder new];
|
SSKProtoGroupContextType groupMessageType;
|
||||||
|
|
||||||
switch (self.groupMetaMessage) {
|
switch (self.groupMetaMessage) {
|
||||||
case TSGroupMetaMessageQuit:
|
case TSGroupMetaMessageQuit:
|
||||||
[groupBuilder setType:SSKProtoGroupContextTypeQuit];
|
groupMessageType = SSKProtoGroupContextTypeQuit;
|
||||||
break;
|
break;
|
||||||
case TSGroupMetaMessageUpdate:
|
case TSGroupMetaMessageUpdate:
|
||||||
case TSGroupMetaMessageNew: {
|
case TSGroupMetaMessageNew:
|
||||||
if (gThread.groupModel.groupImage != nil && self.attachmentIds.count == 1) {
|
groupMessageType = SSKProtoGroupContextTypeUpdate;
|
||||||
attachmentWasGroupAvatar = YES;
|
|
||||||
SSKProtoAttachmentPointer *_Nullable attachmentProto =
|
|
||||||
[TSAttachmentStream buildProtoForAttachmentId:self.attachmentIds.firstObject];
|
|
||||||
if (!attachmentProto) {
|
|
||||||
OWSFailDebug(@"could not build protobuf.");
|
|
||||||
return nil;
|
|
||||||
}
|
|
||||||
[groupBuilder setAvatar:attachmentProto];
|
|
||||||
}
|
|
||||||
|
|
||||||
[groupBuilder setMembers:gThread.groupModel.groupMemberIds];
|
|
||||||
[groupBuilder setName:gThread.groupModel.groupName];
|
|
||||||
[groupBuilder setType:SSKProtoGroupContextTypeUpdate];
|
|
||||||
break;
|
break;
|
||||||
}
|
|
||||||
default:
|
default:
|
||||||
[groupBuilder setType:SSKProtoGroupContextTypeDeliver];
|
groupMessageType = SSKProtoGroupContextTypeDeliver;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
[groupBuilder setId:gThread.groupModel.groupId];
|
SSKProtoGroupContextBuilder *groupBuilder =
|
||||||
|
[SSKProtoGroupContext builderWithId:gThread.groupModel.groupId type:groupMessageType];
|
||||||
|
if (groupMessageType == SSKProtoGroupContextTypeUpdate) {
|
||||||
|
if (gThread.groupModel.groupImage != nil && self.attachmentIds.count == 1) {
|
||||||
|
attachmentWasGroupAvatar = YES;
|
||||||
|
SSKProtoAttachmentPointer *_Nullable attachmentProto =
|
||||||
|
[TSAttachmentStream buildProtoForAttachmentId:self.attachmentIds.firstObject];
|
||||||
|
if (!attachmentProto) {
|
||||||
|
OWSFailDebug(@"could not build protobuf.");
|
||||||
|
return nil;
|
||||||
|
}
|
||||||
|
[groupBuilder setAvatar:attachmentProto];
|
||||||
|
}
|
||||||
|
|
||||||
|
[groupBuilder setMembers:gThread.groupModel.groupMemberIds];
|
||||||
|
[groupBuilder setName:gThread.groupModel.groupName];
|
||||||
|
}
|
||||||
NSError *error;
|
NSError *error;
|
||||||
SSKProtoGroupContext *_Nullable groupContextProto = [groupBuilder buildAndReturnError:&error];
|
SSKProtoGroupContext *_Nullable groupContextProto = [groupBuilder buildAndReturnError:&error];
|
||||||
if (error || !groupContextProto) {
|
if (error || !groupContextProto) {
|
||||||
|
@ -911,9 +911,8 @@ NSString *NSStringForOutgoingMessageRecipientState(OWSOutgoingMessageRecipientSt
|
||||||
}
|
}
|
||||||
TSQuotedMessage *quotedMessage = self.quotedMessage;
|
TSQuotedMessage *quotedMessage = self.quotedMessage;
|
||||||
|
|
||||||
SSKProtoDataMessageQuoteBuilder *quoteBuilder = [SSKProtoDataMessageQuoteBuilder new];
|
SSKProtoDataMessageQuoteBuilder *quoteBuilder =
|
||||||
[quoteBuilder setId:quotedMessage.timestamp];
|
[SSKProtoDataMessageQuote builderWithId:quotedMessage.timestamp author:quotedMessage.authorId];
|
||||||
[quoteBuilder setAuthor:quotedMessage.authorId];
|
|
||||||
|
|
||||||
BOOL hasQuotedText = NO;
|
BOOL hasQuotedText = NO;
|
||||||
BOOL hasQuotedAttachment = NO;
|
BOOL hasQuotedAttachment = NO;
|
||||||
|
@ -927,7 +926,7 @@ NSString *NSStringForOutgoingMessageRecipientState(OWSOutgoingMessageRecipientSt
|
||||||
hasQuotedAttachment = YES;
|
hasQuotedAttachment = YES;
|
||||||
|
|
||||||
SSKProtoDataMessageQuoteQuotedAttachmentBuilder *quotedAttachmentBuilder =
|
SSKProtoDataMessageQuoteQuotedAttachmentBuilder *quotedAttachmentBuilder =
|
||||||
[SSKProtoDataMessageQuoteQuotedAttachmentBuilder new];
|
[SSKProtoDataMessageQuoteQuotedAttachment builder];
|
||||||
|
|
||||||
quotedAttachmentBuilder.contentType = attachment.contentType;
|
quotedAttachmentBuilder.contentType = attachment.contentType;
|
||||||
quotedAttachmentBuilder.fileName = attachment.sourceFilename;
|
quotedAttachmentBuilder.fileName = attachment.sourceFilename;
|
||||||
|
@ -986,7 +985,7 @@ NSString *NSStringForOutgoingMessageRecipientState(OWSOutgoingMessageRecipientSt
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
[contentBuilder setDataMessage:dataMessage];
|
[contentBuilder setDataMessage:dataMessage];
|
||||||
NSData *_Nullable contentData = [contentBuilder buildSerializedDataAndReturnError:&error];
|
NSData *_Nullable contentData = [contentBuilder buildSerializedDataAndReturnError:&error];
|
||||||
if (error || !contentData) {
|
if (error || !contentData) {
|
||||||
|
|
|
@ -125,7 +125,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
{
|
{
|
||||||
OWSAssertDebug(recipient);
|
OWSAssertDebug(recipient);
|
||||||
|
|
||||||
SSKProtoContentBuilder *builder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *builder = [SSKProtoContent builder];
|
||||||
[builder setCallMessage:[self buildCallMessage:recipient.recipientId]];
|
[builder setCallMessage:[self buildCallMessage:recipient.recipientId]];
|
||||||
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
|
@ -139,7 +139,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
- (nullable SSKProtoCallMessage *)buildCallMessage:(NSString *)recipientId
|
- (nullable SSKProtoCallMessage *)buildCallMessage:(NSString *)recipientId
|
||||||
{
|
{
|
||||||
SSKProtoCallMessageBuilder *builder = [SSKProtoCallMessageBuilder new];
|
SSKProtoCallMessageBuilder *builder = [SSKProtoCallMessage builder];
|
||||||
|
|
||||||
if (self.offerMessage) {
|
if (self.offerMessage) {
|
||||||
[builder setOffer:self.offerMessage];
|
[builder setOffer:self.offerMessage];
|
||||||
|
|
|
@ -47,7 +47,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
- (nullable NSData *)buildPlainTextData:(SignalRecipient *)recipient
|
- (nullable NSData *)buildPlainTextData:(SignalRecipient *)recipient
|
||||||
{
|
{
|
||||||
SSKProtoNullMessageBuilder *nullMessageBuilder = [SSKProtoNullMessageBuilder new];
|
SSKProtoNullMessageBuilder *nullMessageBuilder = [SSKProtoNullMessage builder];
|
||||||
|
|
||||||
NSUInteger contentLength = self.verificationStateSyncMessage.unpaddedVerifiedLength;
|
NSUInteger contentLength = self.verificationStateSyncMessage.unpaddedVerifiedLength;
|
||||||
|
|
||||||
|
@ -71,7 +71,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
|
SSKProtoContentBuilder *contentBuilder = [SSKProtoContent builder];
|
||||||
contentBuilder.nullMessage = nullMessage;
|
contentBuilder.nullMessage = nullMessage;
|
||||||
|
|
||||||
NSData *_Nullable contentData = [contentBuilder buildSerializedDataAndReturnError:&error];
|
NSData *_Nullable contentData = [contentBuilder buildSerializedDataAndReturnError:&error];
|
||||||
|
|
|
@ -491,9 +491,9 @@ NSString *const kNSNotification_SocketManagerStateDidChange = @"kNSNotification_
|
||||||
}
|
}
|
||||||
|
|
||||||
WebSocketProtoWebSocketRequestMessageBuilder *requestBuilder =
|
WebSocketProtoWebSocketRequestMessageBuilder *requestBuilder =
|
||||||
[[WebSocketProtoWebSocketRequestMessageBuilder alloc] initWithVerb:request.HTTPMethod
|
[WebSocketProtoWebSocketRequestMessage builderWithVerb:request.HTTPMethod
|
||||||
path:requestPath
|
path:requestPath
|
||||||
requestID:socketMessage.requestId];
|
requestID:socketMessage.requestId];
|
||||||
if (jsonData) {
|
if (jsonData) {
|
||||||
// TODO: Do we need body & headers for requests with no parameters?
|
// TODO: Do we need body & headers for requests with no parameters?
|
||||||
[requestBuilder setBody:jsonData];
|
[requestBuilder setBody:jsonData];
|
||||||
|
@ -509,8 +509,8 @@ NSString *const kNSNotification_SocketManagerStateDidChange = @"kNSNotification_
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
WebSocketProtoWebSocketMessageBuilder *messageBuilder = [WebSocketProtoWebSocketMessageBuilder new];
|
WebSocketProtoWebSocketMessageBuilder *messageBuilder =
|
||||||
[messageBuilder setType:WebSocketProtoWebSocketMessageTypeRequest];
|
[WebSocketProtoWebSocketMessage builderWithType:WebSocketProtoWebSocketMessageTypeRequest];
|
||||||
[messageBuilder setRequest:requestProto];
|
[messageBuilder setRequest:requestProto];
|
||||||
|
|
||||||
NSData *_Nullable messageData = [messageBuilder buildSerializedDataAndReturnError:&error];
|
NSData *_Nullable messageData = [messageBuilder buildSerializedDataAndReturnError:&error];
|
||||||
|
@ -778,7 +778,7 @@ NSString *const kNSNotification_SocketManagerStateDidChange = @"kNSNotification_
|
||||||
NSError *error;
|
NSError *error;
|
||||||
|
|
||||||
WebSocketProtoWebSocketResponseMessageBuilder *responseBuilder =
|
WebSocketProtoWebSocketResponseMessageBuilder *responseBuilder =
|
||||||
[[WebSocketProtoWebSocketResponseMessageBuilder alloc] initWithRequestID:request.requestID status:200];
|
[WebSocketProtoWebSocketResponseMessage builderWithRequestID:request.requestID status:200];
|
||||||
[responseBuilder setMessage:@"OK"];
|
[responseBuilder setMessage:@"OK"];
|
||||||
WebSocketProtoWebSocketResponseMessage *_Nullable response = [responseBuilder buildAndReturnError:&error];
|
WebSocketProtoWebSocketResponseMessage *_Nullable response = [responseBuilder buildAndReturnError:&error];
|
||||||
if (!response || error) {
|
if (!response || error) {
|
||||||
|
@ -786,9 +786,9 @@ NSString *const kNSNotification_SocketManagerStateDidChange = @"kNSNotification_
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
WebSocketProtoWebSocketMessageBuilder *messageBuilder = [WebSocketProtoWebSocketMessageBuilder new];
|
WebSocketProtoWebSocketMessageBuilder *messageBuilder =
|
||||||
|
[WebSocketProtoWebSocketMessage builderWithType:WebSocketProtoWebSocketMessageTypeResponse];
|
||||||
[messageBuilder setResponse:response];
|
[messageBuilder setResponse:response];
|
||||||
[messageBuilder setType:WebSocketProtoWebSocketMessageTypeResponse];
|
|
||||||
|
|
||||||
NSData *_Nullable messageData = [messageBuilder buildSerializedDataAndReturnError:&error];
|
NSData *_Nullable messageData = [messageBuilder buildSerializedDataAndReturnError:&error];
|
||||||
if (!messageData || error) {
|
if (!messageData || error) {
|
||||||
|
|
|
@ -296,27 +296,27 @@ extension SSKProtoEnvelope.SSKProtoEnvelopeBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
fileprivate class func parseProto(_ proto: SignalServiceProtos_Content) throws -> SSKProtoContent {
|
fileprivate class func parseProto(_ proto: SignalServiceProtos_Content) throws -> SSKProtoContent {
|
||||||
var dataMessage: SSKProtoDataMessage? = nil
|
var dataMessage: SSKProtoDataMessage?
|
||||||
if proto.hasDataMessage {
|
if proto.hasDataMessage {
|
||||||
dataMessage = try SSKProtoDataMessage.parseProto(proto.dataMessage)
|
dataMessage = try SSKProtoDataMessage.parseProto(proto.dataMessage)
|
||||||
}
|
}
|
||||||
|
|
||||||
var syncMessage: SSKProtoSyncMessage? = nil
|
var syncMessage: SSKProtoSyncMessage?
|
||||||
if proto.hasSyncMessage {
|
if proto.hasSyncMessage {
|
||||||
syncMessage = try SSKProtoSyncMessage.parseProto(proto.syncMessage)
|
syncMessage = try SSKProtoSyncMessage.parseProto(proto.syncMessage)
|
||||||
}
|
}
|
||||||
|
|
||||||
var callMessage: SSKProtoCallMessage? = nil
|
var callMessage: SSKProtoCallMessage?
|
||||||
if proto.hasCallMessage {
|
if proto.hasCallMessage {
|
||||||
callMessage = try SSKProtoCallMessage.parseProto(proto.callMessage)
|
callMessage = try SSKProtoCallMessage.parseProto(proto.callMessage)
|
||||||
}
|
}
|
||||||
|
|
||||||
var nullMessage: SSKProtoNullMessage? = nil
|
var nullMessage: SSKProtoNullMessage?
|
||||||
if proto.hasNullMessage {
|
if proto.hasNullMessage {
|
||||||
nullMessage = try SSKProtoNullMessage.parseProto(proto.nullMessage)
|
nullMessage = try SSKProtoNullMessage.parseProto(proto.nullMessage)
|
||||||
}
|
}
|
||||||
|
|
||||||
var receiptMessage: SSKProtoReceiptMessage? = nil
|
var receiptMessage: SSKProtoReceiptMessage?
|
||||||
if proto.hasReceiptMessage {
|
if proto.hasReceiptMessage {
|
||||||
receiptMessage = try SSKProtoReceiptMessage.parseProto(proto.receiptMessage)
|
receiptMessage = try SSKProtoReceiptMessage.parseProto(proto.receiptMessage)
|
||||||
}
|
}
|
||||||
|
@ -963,12 +963,12 @@ extension SSKProtoCallMessageHangup.SSKProtoCallMessageHangupBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
fileprivate class func parseProto(_ proto: SignalServiceProtos_CallMessage) throws -> SSKProtoCallMessage {
|
fileprivate class func parseProto(_ proto: SignalServiceProtos_CallMessage) throws -> SSKProtoCallMessage {
|
||||||
var offer: SSKProtoCallMessageOffer? = nil
|
var offer: SSKProtoCallMessageOffer?
|
||||||
if proto.hasOffer {
|
if proto.hasOffer {
|
||||||
offer = try SSKProtoCallMessageOffer.parseProto(proto.offer)
|
offer = try SSKProtoCallMessageOffer.parseProto(proto.offer)
|
||||||
}
|
}
|
||||||
|
|
||||||
var answer: SSKProtoCallMessageAnswer? = nil
|
var answer: SSKProtoCallMessageAnswer?
|
||||||
if proto.hasAnswer {
|
if proto.hasAnswer {
|
||||||
answer = try SSKProtoCallMessageAnswer.parseProto(proto.answer)
|
answer = try SSKProtoCallMessageAnswer.parseProto(proto.answer)
|
||||||
}
|
}
|
||||||
|
@ -976,12 +976,12 @@ extension SSKProtoCallMessageHangup.SSKProtoCallMessageHangupBuilder {
|
||||||
var iceUpdate: [SSKProtoCallMessageIceUpdate] = []
|
var iceUpdate: [SSKProtoCallMessageIceUpdate] = []
|
||||||
iceUpdate = try proto.iceUpdate.map { try SSKProtoCallMessageIceUpdate.parseProto($0) }
|
iceUpdate = try proto.iceUpdate.map { try SSKProtoCallMessageIceUpdate.parseProto($0) }
|
||||||
|
|
||||||
var hangup: SSKProtoCallMessageHangup? = nil
|
var hangup: SSKProtoCallMessageHangup?
|
||||||
if proto.hasHangup {
|
if proto.hasHangup {
|
||||||
hangup = try SSKProtoCallMessageHangup.parseProto(proto.hangup)
|
hangup = try SSKProtoCallMessageHangup.parseProto(proto.hangup)
|
||||||
}
|
}
|
||||||
|
|
||||||
var busy: SSKProtoCallMessageBusy? = nil
|
var busy: SSKProtoCallMessageBusy?
|
||||||
if proto.hasBusy {
|
if proto.hasBusy {
|
||||||
busy = try SSKProtoCallMessageBusy.parseProto(proto.busy)
|
busy = try SSKProtoCallMessageBusy.parseProto(proto.busy)
|
||||||
}
|
}
|
||||||
|
@ -1123,7 +1123,7 @@ extension SSKProtoCallMessage.SSKProtoCallMessageBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
fileprivate class func parseProto(_ proto: SignalServiceProtos_DataMessage.Quote.QuotedAttachment) throws -> SSKProtoDataMessageQuoteQuotedAttachment {
|
fileprivate class func parseProto(_ proto: SignalServiceProtos_DataMessage.Quote.QuotedAttachment) throws -> SSKProtoDataMessageQuoteQuotedAttachment {
|
||||||
var thumbnail: SSKProtoAttachmentPointer? = nil
|
var thumbnail: SSKProtoAttachmentPointer?
|
||||||
if proto.hasThumbnail {
|
if proto.hasThumbnail {
|
||||||
thumbnail = try SSKProtoAttachmentPointer.parseProto(proto.thumbnail)
|
thumbnail = try SSKProtoAttachmentPointer.parseProto(proto.thumbnail)
|
||||||
}
|
}
|
||||||
|
@ -1980,7 +1980,7 @@ extension SSKProtoDataMessageContactPostalAddress.SSKProtoDataMessageContactPost
|
||||||
}
|
}
|
||||||
|
|
||||||
fileprivate class func parseProto(_ proto: SignalServiceProtos_DataMessage.Contact.Avatar) throws -> SSKProtoDataMessageContactAvatar {
|
fileprivate class func parseProto(_ proto: SignalServiceProtos_DataMessage.Contact.Avatar) throws -> SSKProtoDataMessageContactAvatar {
|
||||||
var avatar: SSKProtoAttachmentPointer? = nil
|
var avatar: SSKProtoAttachmentPointer?
|
||||||
if proto.hasAvatar {
|
if proto.hasAvatar {
|
||||||
avatar = try SSKProtoAttachmentPointer.parseProto(proto.avatar)
|
avatar = try SSKProtoAttachmentPointer.parseProto(proto.avatar)
|
||||||
}
|
}
|
||||||
|
@ -2125,7 +2125,7 @@ extension SSKProtoDataMessageContactAvatar.SSKProtoDataMessageContactAvatarBuild
|
||||||
}
|
}
|
||||||
|
|
||||||
fileprivate class func parseProto(_ proto: SignalServiceProtos_DataMessage.Contact) throws -> SSKProtoDataMessageContact {
|
fileprivate class func parseProto(_ proto: SignalServiceProtos_DataMessage.Contact) throws -> SSKProtoDataMessageContact {
|
||||||
var name: SSKProtoDataMessageContactName? = nil
|
var name: SSKProtoDataMessageContactName?
|
||||||
if proto.hasName {
|
if proto.hasName {
|
||||||
name = try SSKProtoDataMessageContactName.parseProto(proto.name)
|
name = try SSKProtoDataMessageContactName.parseProto(proto.name)
|
||||||
}
|
}
|
||||||
|
@ -2139,7 +2139,7 @@ extension SSKProtoDataMessageContactAvatar.SSKProtoDataMessageContactAvatarBuild
|
||||||
var address: [SSKProtoDataMessageContactPostalAddress] = []
|
var address: [SSKProtoDataMessageContactPostalAddress] = []
|
||||||
address = try proto.address.map { try SSKProtoDataMessageContactPostalAddress.parseProto($0) }
|
address = try proto.address.map { try SSKProtoDataMessageContactPostalAddress.parseProto($0) }
|
||||||
|
|
||||||
var avatar: SSKProtoDataMessageContactAvatar? = nil
|
var avatar: SSKProtoDataMessageContactAvatar?
|
||||||
if proto.hasAvatar {
|
if proto.hasAvatar {
|
||||||
avatar = try SSKProtoDataMessageContactAvatar.parseProto(proto.avatar)
|
avatar = try SSKProtoDataMessageContactAvatar.parseProto(proto.avatar)
|
||||||
}
|
}
|
||||||
|
@ -2348,12 +2348,12 @@ extension SSKProtoDataMessageContact.SSKProtoDataMessageContactBuilder {
|
||||||
var attachments: [SSKProtoAttachmentPointer] = []
|
var attachments: [SSKProtoAttachmentPointer] = []
|
||||||
attachments = try proto.attachments.map { try SSKProtoAttachmentPointer.parseProto($0) }
|
attachments = try proto.attachments.map { try SSKProtoAttachmentPointer.parseProto($0) }
|
||||||
|
|
||||||
var group: SSKProtoGroupContext? = nil
|
var group: SSKProtoGroupContext?
|
||||||
if proto.hasGroup {
|
if proto.hasGroup {
|
||||||
group = try SSKProtoGroupContext.parseProto(proto.group)
|
group = try SSKProtoGroupContext.parseProto(proto.group)
|
||||||
}
|
}
|
||||||
|
|
||||||
var quote: SSKProtoDataMessageQuote? = nil
|
var quote: SSKProtoDataMessageQuote?
|
||||||
if proto.hasQuote {
|
if proto.hasQuote {
|
||||||
quote = try SSKProtoDataMessageQuote.parseProto(proto.quote)
|
quote = try SSKProtoDataMessageQuote.parseProto(proto.quote)
|
||||||
}
|
}
|
||||||
|
@ -2829,7 +2829,7 @@ extension SSKProtoVerified.SSKProtoVerifiedBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
fileprivate class func parseProto(_ proto: SignalServiceProtos_SyncMessage.Sent) throws -> SSKProtoSyncMessageSent {
|
fileprivate class func parseProto(_ proto: SignalServiceProtos_SyncMessage.Sent) throws -> SSKProtoSyncMessageSent {
|
||||||
var message: SSKProtoDataMessage? = nil
|
var message: SSKProtoDataMessage?
|
||||||
if proto.hasMessage {
|
if proto.hasMessage {
|
||||||
message = try SSKProtoDataMessage.parseProto(proto.message)
|
message = try SSKProtoDataMessage.parseProto(proto.message)
|
||||||
}
|
}
|
||||||
|
@ -3008,7 +3008,7 @@ extension SSKProtoSyncMessageContacts.SSKProtoSyncMessageContactsBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
fileprivate class func parseProto(_ proto: SignalServiceProtos_SyncMessage.Groups) throws -> SSKProtoSyncMessageGroups {
|
fileprivate class func parseProto(_ proto: SignalServiceProtos_SyncMessage.Groups) throws -> SSKProtoSyncMessageGroups {
|
||||||
var blob: SSKProtoAttachmentPointer? = nil
|
var blob: SSKProtoAttachmentPointer?
|
||||||
if proto.hasBlob {
|
if proto.hasBlob {
|
||||||
blob = try SSKProtoAttachmentPointer.parseProto(proto.blob)
|
blob = try SSKProtoAttachmentPointer.parseProto(proto.blob)
|
||||||
}
|
}
|
||||||
|
@ -3557,22 +3557,22 @@ extension SSKProtoSyncMessageConfiguration.SSKProtoSyncMessageConfigurationBuild
|
||||||
}
|
}
|
||||||
|
|
||||||
fileprivate class func parseProto(_ proto: SignalServiceProtos_SyncMessage) throws -> SSKProtoSyncMessage {
|
fileprivate class func parseProto(_ proto: SignalServiceProtos_SyncMessage) throws -> SSKProtoSyncMessage {
|
||||||
var sent: SSKProtoSyncMessageSent? = nil
|
var sent: SSKProtoSyncMessageSent?
|
||||||
if proto.hasSent {
|
if proto.hasSent {
|
||||||
sent = try SSKProtoSyncMessageSent.parseProto(proto.sent)
|
sent = try SSKProtoSyncMessageSent.parseProto(proto.sent)
|
||||||
}
|
}
|
||||||
|
|
||||||
var contacts: SSKProtoSyncMessageContacts? = nil
|
var contacts: SSKProtoSyncMessageContacts?
|
||||||
if proto.hasContacts {
|
if proto.hasContacts {
|
||||||
contacts = try SSKProtoSyncMessageContacts.parseProto(proto.contacts)
|
contacts = try SSKProtoSyncMessageContacts.parseProto(proto.contacts)
|
||||||
}
|
}
|
||||||
|
|
||||||
var groups: SSKProtoSyncMessageGroups? = nil
|
var groups: SSKProtoSyncMessageGroups?
|
||||||
if proto.hasGroups {
|
if proto.hasGroups {
|
||||||
groups = try SSKProtoSyncMessageGroups.parseProto(proto.groups)
|
groups = try SSKProtoSyncMessageGroups.parseProto(proto.groups)
|
||||||
}
|
}
|
||||||
|
|
||||||
var request: SSKProtoSyncMessageRequest? = nil
|
var request: SSKProtoSyncMessageRequest?
|
||||||
if proto.hasRequest {
|
if proto.hasRequest {
|
||||||
request = try SSKProtoSyncMessageRequest.parseProto(proto.request)
|
request = try SSKProtoSyncMessageRequest.parseProto(proto.request)
|
||||||
}
|
}
|
||||||
|
@ -3580,17 +3580,17 @@ extension SSKProtoSyncMessageConfiguration.SSKProtoSyncMessageConfigurationBuild
|
||||||
var read: [SSKProtoSyncMessageRead] = []
|
var read: [SSKProtoSyncMessageRead] = []
|
||||||
read = try proto.read.map { try SSKProtoSyncMessageRead.parseProto($0) }
|
read = try proto.read.map { try SSKProtoSyncMessageRead.parseProto($0) }
|
||||||
|
|
||||||
var blocked: SSKProtoSyncMessageBlocked? = nil
|
var blocked: SSKProtoSyncMessageBlocked?
|
||||||
if proto.hasBlocked {
|
if proto.hasBlocked {
|
||||||
blocked = try SSKProtoSyncMessageBlocked.parseProto(proto.blocked)
|
blocked = try SSKProtoSyncMessageBlocked.parseProto(proto.blocked)
|
||||||
}
|
}
|
||||||
|
|
||||||
var verified: SSKProtoVerified? = nil
|
var verified: SSKProtoVerified?
|
||||||
if proto.hasVerified {
|
if proto.hasVerified {
|
||||||
verified = try SSKProtoVerified.parseProto(proto.verified)
|
verified = try SSKProtoVerified.parseProto(proto.verified)
|
||||||
}
|
}
|
||||||
|
|
||||||
var configuration: SSKProtoSyncMessageConfiguration? = nil
|
var configuration: SSKProtoSyncMessageConfiguration?
|
||||||
if proto.hasConfiguration {
|
if proto.hasConfiguration {
|
||||||
configuration = try SSKProtoSyncMessageConfiguration.parseProto(proto.configuration)
|
configuration = try SSKProtoSyncMessageConfiguration.parseProto(proto.configuration)
|
||||||
}
|
}
|
||||||
|
@ -3988,7 +3988,7 @@ extension SSKProtoAttachmentPointer.SSKProtoAttachmentPointerBuilder {
|
||||||
}
|
}
|
||||||
let type = SSKProtoGroupContextTypeWrap(proto.type)
|
let type = SSKProtoGroupContextTypeWrap(proto.type)
|
||||||
|
|
||||||
var avatar: SSKProtoAttachmentPointer? = nil
|
var avatar: SSKProtoAttachmentPointer?
|
||||||
if proto.hasAvatar {
|
if proto.hasAvatar {
|
||||||
avatar = try SSKProtoAttachmentPointer.parseProto(proto.avatar)
|
avatar = try SSKProtoAttachmentPointer.parseProto(proto.avatar)
|
||||||
}
|
}
|
||||||
|
@ -4254,12 +4254,12 @@ extension SSKProtoContactDetailsAvatar.SSKProtoContactDetailsAvatarBuilder {
|
||||||
}
|
}
|
||||||
let number = proto.number
|
let number = proto.number
|
||||||
|
|
||||||
var avatar: SSKProtoContactDetailsAvatar? = nil
|
var avatar: SSKProtoContactDetailsAvatar?
|
||||||
if proto.hasAvatar {
|
if proto.hasAvatar {
|
||||||
avatar = try SSKProtoContactDetailsAvatar.parseProto(proto.avatar)
|
avatar = try SSKProtoContactDetailsAvatar.parseProto(proto.avatar)
|
||||||
}
|
}
|
||||||
|
|
||||||
var verified: SSKProtoVerified? = nil
|
var verified: SSKProtoVerified?
|
||||||
if proto.hasVerified {
|
if proto.hasVerified {
|
||||||
verified = try SSKProtoVerified.parseProto(proto.verified)
|
verified = try SSKProtoVerified.parseProto(proto.verified)
|
||||||
}
|
}
|
||||||
|
@ -4528,7 +4528,7 @@ extension SSKProtoGroupDetailsAvatar.SSKProtoGroupDetailsAvatarBuilder {
|
||||||
}
|
}
|
||||||
let id = proto.id
|
let id = proto.id
|
||||||
|
|
||||||
var avatar: SSKProtoGroupDetailsAvatar? = nil
|
var avatar: SSKProtoGroupDetailsAvatar?
|
||||||
if proto.hasAvatar {
|
if proto.hasAvatar {
|
||||||
avatar = try SSKProtoGroupDetailsAvatar.parseProto(proto.avatar)
|
avatar = try SSKProtoGroupDetailsAvatar.parseProto(proto.avatar)
|
||||||
}
|
}
|
||||||
|
|
|
@ -400,12 +400,12 @@ extension WebSocketProtoWebSocketResponseMessage.WebSocketProtoWebSocketResponse
|
||||||
}
|
}
|
||||||
let type = WebSocketProtoWebSocketMessageTypeWrap(proto.type)
|
let type = WebSocketProtoWebSocketMessageTypeWrap(proto.type)
|
||||||
|
|
||||||
var request: WebSocketProtoWebSocketRequestMessage? = nil
|
var request: WebSocketProtoWebSocketRequestMessage?
|
||||||
if proto.hasRequest {
|
if proto.hasRequest {
|
||||||
request = try WebSocketProtoWebSocketRequestMessage.parseProto(proto.request)
|
request = try WebSocketProtoWebSocketRequestMessage.parseProto(proto.request)
|
||||||
}
|
}
|
||||||
|
|
||||||
var response: WebSocketProtoWebSocketResponseMessage? = nil
|
var response: WebSocketProtoWebSocketResponseMessage?
|
||||||
if proto.hasResponse {
|
if proto.hasResponse {
|
||||||
response = try WebSocketProtoWebSocketResponseMessage.parseProto(proto.response)
|
response = try WebSocketProtoWebSocketResponseMessage.parseProto(proto.response)
|
||||||
}
|
}
|
||||||
|
|
|
@ -277,8 +277,7 @@ static uint32_t const OWSFingerprintDefaultHashIterations = 5200;
|
||||||
- (nullable UIImage *)image
|
- (nullable UIImage *)image
|
||||||
{
|
{
|
||||||
FingerprintProtoLogicalFingerprintBuilder *remoteFingerprintBuilder =
|
FingerprintProtoLogicalFingerprintBuilder *remoteFingerprintBuilder =
|
||||||
[FingerprintProtoLogicalFingerprintBuilder new];
|
[FingerprintProtoLogicalFingerprint builderWithIdentityData:[self scannableData:self.theirFingerprintData]];
|
||||||
remoteFingerprintBuilder.identityData = [self scannableData:self.theirFingerprintData];
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
FingerprintProtoLogicalFingerprint *_Nullable remoteFingerprint =
|
FingerprintProtoLogicalFingerprint *_Nullable remoteFingerprint =
|
||||||
[remoteFingerprintBuilder buildAndReturnError:&error];
|
[remoteFingerprintBuilder buildAndReturnError:&error];
|
||||||
|
@ -288,8 +287,7 @@ static uint32_t const OWSFingerprintDefaultHashIterations = 5200;
|
||||||
}
|
}
|
||||||
|
|
||||||
FingerprintProtoLogicalFingerprintBuilder *localFingerprintBuilder =
|
FingerprintProtoLogicalFingerprintBuilder *localFingerprintBuilder =
|
||||||
[FingerprintProtoLogicalFingerprintBuilder new];
|
[FingerprintProtoLogicalFingerprint builderWithIdentityData:[self scannableData:self.myFingerprintData]];
|
||||||
localFingerprintBuilder.identityData = [self scannableData:self.myFingerprintData];
|
|
||||||
FingerprintProtoLogicalFingerprint *_Nullable localFingerprint =
|
FingerprintProtoLogicalFingerprint *_Nullable localFingerprint =
|
||||||
[localFingerprintBuilder buildAndReturnError:&error];
|
[localFingerprintBuilder buildAndReturnError:&error];
|
||||||
if (!localFingerprint || error) {
|
if (!localFingerprint || error) {
|
||||||
|
@ -298,9 +296,9 @@ static uint32_t const OWSFingerprintDefaultHashIterations = 5200;
|
||||||
}
|
}
|
||||||
|
|
||||||
FingerprintProtoLogicalFingerprintsBuilder *logicalFingerprintsBuilder =
|
FingerprintProtoLogicalFingerprintsBuilder *logicalFingerprintsBuilder =
|
||||||
[[FingerprintProtoLogicalFingerprintsBuilder alloc] initWithVersion:OWSFingerprintScannableFormatVersion
|
[FingerprintProtoLogicalFingerprints builderWithVersion:OWSFingerprintScannableFormatVersion
|
||||||
localFingerprint:localFingerprint
|
localFingerprint:localFingerprint
|
||||||
remoteFingerprint:remoteFingerprint];
|
remoteFingerprint:remoteFingerprint];
|
||||||
|
|
||||||
// Build ByteMode QR (Latin-1 encodable data)
|
// Build ByteMode QR (Latin-1 encodable data)
|
||||||
NSData *_Nullable fingerprintData = [logicalFingerprintsBuilder buildSerializedDataAndReturnError:&error];
|
NSData *_Nullable fingerprintData = [logicalFingerprintsBuilder buildSerializedDataAndReturnError:&error];
|
||||||
|
|
|
@ -47,8 +47,7 @@ SSKProtoVerified *_Nullable BuildVerifiedProtoWithRecipientId(NSString *destinat
|
||||||
// will figure that out on it's own.
|
// will figure that out on it's own.
|
||||||
OWSCAssertDebug(verificationState != OWSVerificationStateNoLongerVerified);
|
OWSCAssertDebug(verificationState != OWSVerificationStateNoLongerVerified);
|
||||||
|
|
||||||
SSKProtoVerifiedBuilder *verifiedBuilder = [SSKProtoVerifiedBuilder new];
|
SSKProtoVerifiedBuilder *verifiedBuilder = [SSKProtoVerified builderWithDestination:destinationRecipientId];
|
||||||
verifiedBuilder.destination = destinationRecipientId;
|
|
||||||
verifiedBuilder.identityKey = identityKey;
|
verifiedBuilder.identityKey = identityKey;
|
||||||
verifiedBuilder.state = OWSVerificationStateToProtoState(verificationState);
|
verifiedBuilder.state = OWSVerificationStateToProtoState(verificationState);
|
||||||
|
|
||||||
|
|
|
@ -69,13 +69,13 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
OWSMessageManager *messagesManager = OWSMessageManager.sharedManager;
|
OWSMessageManager *messagesManager = OWSMessageManager.sharedManager;
|
||||||
|
|
||||||
SSKProtoSyncMessageRequestBuilder *requestBuilder = [SSKProtoSyncMessageRequestBuilder new];
|
SSKProtoSyncMessageRequestBuilder *requestBuilder = [SSKProtoSyncMessageRequest builder];
|
||||||
[requestBuilder setType:SSKProtoSyncMessageRequestTypeGroups];
|
[requestBuilder setType:SSKProtoSyncMessageRequestTypeGroups];
|
||||||
|
|
||||||
SSKProtoSyncMessageBuilder *messageBuilder = [SSKProtoSyncMessageBuilder new];
|
SSKProtoSyncMessageBuilder *messageBuilder = [SSKProtoSyncMessage builder];
|
||||||
[messageBuilder setRequest:[requestBuilder buildIgnoringErrors]];
|
[messageBuilder setRequest:[requestBuilder buildIgnoringErrors]];
|
||||||
|
|
||||||
SSKProtoEnvelopeBuilder *envelopeBuilder = [SSKProtoEnvelopeBuilder new];
|
SSKProtoEnvelopeBuilder *envelopeBuilder = [SSKProtoEnvelope builder];
|
||||||
[envelopeBuilder setType:SSKProtoEnvelopeTypeCiphertext];
|
[envelopeBuilder setType:SSKProtoEnvelopeTypeCiphertext];
|
||||||
[envelopeBuilder setSource:@"+13213214321"];
|
[envelopeBuilder setSource:@"+13213214321"];
|
||||||
[envelopeBuilder setSourceDevice:1];
|
[envelopeBuilder setSourceDevice:1];
|
||||||
|
@ -99,14 +99,14 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
OWSMessageManager *messagesManager = SSKEnvironment.shared.messageManager;
|
OWSMessageManager *messagesManager = SSKEnvironment.shared.messageManager;
|
||||||
|
|
||||||
SSKProtoEnvelopeBuilder *envelopeBuilder = [SSKProtoEnvelopeBuilder new];
|
SSKProtoEnvelopeBuilder *envelopeBuilder = [SSKProtoEnvelope builder];
|
||||||
|
|
||||||
SSKProtoGroupContextBuilder *groupContextBuilder = [SSKProtoGroupContextBuilder new];
|
SSKProtoGroupContextBuilder *groupContextBuilder = [SSKProtoGroupContext builder];
|
||||||
groupContextBuilder.name = @"Newly created Group Name";
|
groupContextBuilder.name = @"Newly created Group Name";
|
||||||
groupContextBuilder.id = groupIdData;
|
groupContextBuilder.id = groupIdData;
|
||||||
groupContextBuilder.type = SSKProtoGroupContextTypeUpdate;
|
groupContextBuilder.type = SSKProtoGroupContextTypeUpdate;
|
||||||
|
|
||||||
SSKProtoDataMessageBuilder *messageBuilder = [SSKProtoDataMessageBuilder new];
|
SSKProtoDataMessageBuilder *messageBuilder = [SSKProtoDataMessage builder];
|
||||||
messageBuilder.group = [groupContextBuilder buildIgnoringErrors];
|
messageBuilder.group = [groupContextBuilder buildIgnoringErrors];
|
||||||
|
|
||||||
[messagesManager handleIncomingEnvelope:[envelopeBuilder buildIgnoringErrors]
|
[messagesManager handleIncomingEnvelope:[envelopeBuilder buildIgnoringErrors]
|
||||||
|
@ -126,21 +126,21 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
OWSMessageManager *messagesManager = SSKEnvironment.shared.messageManager;
|
OWSMessageManager *messagesManager = SSKEnvironment.shared.messageManager;
|
||||||
|
|
||||||
SSKProtoEnvelopeBuilder *envelopeBuilder = [SSKProtoEnvelopeBuilder new];
|
SSKProtoEnvelopeBuilder *envelopeBuilder = [SSKProtoEnvelope builder];
|
||||||
|
|
||||||
SSKProtoGroupContextBuilder *groupContextBuilder = [SSKProtoGroupContextBuilder new];
|
SSKProtoGroupContextBuilder *groupContextBuilder = [SSKProtoGroupContext builder];
|
||||||
groupContextBuilder.name = @"Newly created Group with Avatar Name";
|
groupContextBuilder.name = @"Newly created Group with Avatar Name";
|
||||||
groupContextBuilder.id = groupIdData;
|
groupContextBuilder.id = groupIdData;
|
||||||
groupContextBuilder.type = SSKProtoGroupContextTypeUpdate;
|
groupContextBuilder.type = SSKProtoGroupContextTypeUpdate;
|
||||||
|
|
||||||
SSKProtoAttachmentPointerBuilder *attachmentBuilder = [SSKProtoAttachmentPointerBuilder new];
|
SSKProtoAttachmentPointerBuilder *attachmentBuilder = [SSKProtoAttachmentPointer builder];
|
||||||
attachmentBuilder.id = 1234;
|
attachmentBuilder.id = 1234;
|
||||||
attachmentBuilder.contentType = @"image/png";
|
attachmentBuilder.contentType = @"image/png";
|
||||||
attachmentBuilder.key = [NSData new];
|
attachmentBuilder.key = [NSData new];
|
||||||
attachmentBuilder.size = 123;
|
attachmentBuilder.size = 123;
|
||||||
groupContextBuilder.avatar = [attachmentBuilder buildIgnoringErrors];
|
groupContextBuilder.avatar = [attachmentBuilder buildIgnoringErrors];
|
||||||
|
|
||||||
SSKProtoDataMessageBuilder *messageBuilder = [SSKProtoDataMessageBuilder new];
|
SSKProtoDataMessageBuilder *messageBuilder = [SSKProtoDataMessage builder];
|
||||||
messageBuilder.group = [groupContextBuilder buildIgnoringErrors];
|
messageBuilder.group = [groupContextBuilder buildIgnoringErrors];
|
||||||
|
|
||||||
[messagesManager handleIncomingEnvelope:[envelopeBuilder buildIgnoringErrors]
|
[messagesManager handleIncomingEnvelope:[envelopeBuilder buildIgnoringErrors]
|
||||||
|
@ -161,16 +161,16 @@ NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
OWSMessageManager *messagesManager = SSKEnvironment.shared.messageManager;
|
OWSMessageManager *messagesManager = SSKEnvironment.shared.messageManager;
|
||||||
|
|
||||||
SSKProtoEnvelopeBuilder *envelopeBuilder = [SSKProtoEnvelopeBuilder new];
|
SSKProtoEnvelopeBuilder *envelopeBuilder = [SSKProtoEnvelope builder];
|
||||||
|
|
||||||
SSKProtoGroupContextBuilder *groupContextBuilder = [SSKProtoGroupContextBuilder new];
|
SSKProtoGroupContextBuilder *groupContextBuilder = [SSKProtoGroupContext builder];
|
||||||
groupContextBuilder.name = @"Newly created Group with Avatar Name";
|
groupContextBuilder.name = @"Newly created Group with Avatar Name";
|
||||||
groupContextBuilder.id = groupIdData;
|
groupContextBuilder.id = groupIdData;
|
||||||
|
|
||||||
// e.g. some future feature sent from another device that we don't yet support.
|
// e.g. some future feature sent from another device that we don't yet support.
|
||||||
groupContextBuilder.type = 666;
|
groupContextBuilder.type = 666;
|
||||||
|
|
||||||
SSKProtoDataMessageBuilder *messageBuilder = [SSKProtoDataMessageBuilder new];
|
SSKProtoDataMessageBuilder *messageBuilder = [SSKProtoDataMessage builder];
|
||||||
messageBuilder.group = [groupContextBuilder buildIgnoringErrors];
|
messageBuilder.group = [groupContextBuilder buildIgnoringErrors];
|
||||||
|
|
||||||
[messagesManager handleIncomingEnvelope:[envelopeBuilder buildIgnoringErrors]
|
[messagesManager handleIncomingEnvelope:[envelopeBuilder buildIgnoringErrors]
|
||||||
|
|
Loading…
Reference in New Issue