From b73594b234a1957cd0506357d4135fa7cfeebb56 Mon Sep 17 00:00:00 2001 From: Michael Kirk Date: Thu, 23 Mar 2017 15:21:46 -0400 Subject: [PATCH] Better envelop logging. Previously it was basically impossible to trace recipients in debug logs. // FREEBIE --- src/Messages/TSMessagesManager.m | 41 ++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/src/Messages/TSMessagesManager.m b/src/Messages/TSMessagesManager.m index 4fa871305..232314616 100644 --- a/src/Messages/TSMessagesManager.m +++ b/src/Messages/TSMessagesManager.m @@ -111,9 +111,50 @@ NS_ASSUME_NONNULL_BEGIN #pragma mark - message handling +- (NSString *)descriptionForEnvelope:(OWSSignalServiceProtosEnvelope *)envelope +{ + OWSAssert(envelope != nil); + NSString *envelopeType; + switch (envelope.type) { + case OWSSignalServiceProtosEnvelopeTypeReceipt: + envelopeType = @"DeliveryReceipt"; + break; + case OWSSignalServiceProtosEnvelopeTypeUnknown: + // Shouldn't happen + OWSAssert(NO); + envelopeType = @"Unknown"; + break; + case OWSSignalServiceProtosEnvelopeTypeCiphertext: + envelopeType = @"SignalEncryptedMessage"; + break; + case OWSSignalServiceProtosEnvelopeTypeKeyExchange: + // Unsupported + OWSAssert(NO); + envelopeType = @"KeyExchange"; + break; + case OWSSignalServiceProtosEnvelopeTypePrekeyBundle: + envelopeType = @"PreKeyEncryptedMessage"; + break; + default: + // Shouldn't happen + OWSAssert(NO); + envelopeType = @"Other"; + break; + } + + return [NSString stringWithFormat:@"", + envelopeType, + envelope.source, + envelope.sourceDevice, + envelope.timestamp, + (unsigned long)envelope.content.length]; +} + - (void)handleReceivedEnvelope:(OWSSignalServiceProtosEnvelope *)envelope { OWSAssert([NSThread isMainThread]); + + DDLogInfo(@"%@ received envelope: %@", self.tag, [self descriptionForEnvelope:envelope]); @try { switch (envelope.type) { case OWSSignalServiceProtosEnvelopeTypeCiphertext: {