diff --git a/Podfile.lock b/Podfile.lock index 4f85ef908..bb4b3fb1a 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -136,7 +136,7 @@ CHECKOUT OPTIONS: :commit: 7054e4b13ee5bcd6d524adb6dc9a726e8c466308 :git: https://github.com/WhisperSystems/JSQMessagesViewController.git SignalServiceKit: - :commit: 92de9a5e72f12dc242beaba8b62388207de19d9b + :commit: 4e08b8092dbcbac05cee0e02049a02f11016243d :git: https://github.com/WhisperSystems/SignalServiceKit.git SocketRocket: :commit: 877ac7438be3ad0b45ef5ca3969574e4b97112bf diff --git a/Signal/src/ViewControllers/MessagesViewController.m b/Signal/src/ViewControllers/MessagesViewController.m index 484865894..53aa1c54b 100644 --- a/Signal/src/ViewControllers/MessagesViewController.m +++ b/Signal/src/ViewControllers/MessagesViewController.m @@ -3165,8 +3165,9 @@ typedef enum : NSUInteger { NSString *filename = [NSLocalizedString(@"VOICE_MESSAGE_FILE_NAME", @"Filename for voice messages.") stringByAppendingPathExtension:@".m4a"]; - SignalAttachment *attachment = - [SignalAttachment attachmentWithData:audioData dataUTI:(NSString *)kUTTypeMPEG4Audio filename:filename]; + SignalAttachment *attachment = [SignalAttachment voiceMessageAttachmentWithData:audioData + dataUTI:(NSString *)kUTTypeMPEG4Audio + filename:filename]; if (!attachment || [attachment hasError]) { DDLogWarn(@"%@ %s Invalid attachment: %@.", self.tag, diff --git a/Signal/src/ViewControllers/SignalAttachment.swift b/Signal/src/ViewControllers/SignalAttachment.swift index 4d78694ac..1337423a8 100644 --- a/Signal/src/ViewControllers/SignalAttachment.swift +++ b/Signal/src/ViewControllers/SignalAttachment.swift @@ -89,6 +89,8 @@ class SignalAttachment: NSObject { // possible. public var image: UIImage? + private(set) public var isVoiceMessage = false + // MARK: Constants /** @@ -632,6 +634,14 @@ class SignalAttachment: NSObject { filename : filename) } + // MARK: Voice Messages + + public class func voiceMessageAttachment(data: Data?, dataUTI: String, filename: String?) -> SignalAttachment { + let attachment = audioAttachment(data : data, dataUTI : dataUTI, filename: filename) + attachment.isVoiceMessage = true + return attachment + } + // MARK: Attachments // Factory method for attachments of any kind. diff --git a/Signal/src/util/ThreadUtil.m b/Signal/src/util/ThreadUtil.m index 9feabdab8..cf1e61d7c 100644 --- a/Signal/src/util/ThreadUtil.m +++ b/Signal/src/util/ThreadUtil.m @@ -59,8 +59,7 @@ NS_ASSUME_NONNULL_BEGIN TSOutgoingMessage *message = [[TSOutgoingMessage alloc] initWithTimestamp:[NSDate ows_millisecondTimeStamp] inThread:thread - messageBody:nil - attachmentIds:[NSMutableArray new] + isVoiceMessage:[attachment isVoiceMessage] expiresInSeconds:(configuration.isEnabled ? configuration.durationSeconds : 0)]; [messageSender sendAttachmentData:attachment.data contentType:attachment.mimeType