private async Task <byte[]> createMultiDeviceGroupsContent(TextSecureAttachmentStream groups) { Content.Builder container = Content.CreateBuilder(); SyncMessage.Builder builder = SyncMessage.CreateBuilder(); builder.SetGroups(SyncMessage.Types.Groups.CreateBuilder() .SetBlob(await createAttachmentPointer(groups))); return(container.SetSyncMessage(builder).Build().ToByteArray()); }
private async Task <AttachmentPointer> createAttachmentPointer(TextSecureAttachmentStream attachment) { byte[] attachmentKey = Util.getSecretBytes(64); PushAttachmentData attachmentData = new PushAttachmentData(attachment.getContentType(), attachment.getInputStream(), attachment.getLength(), attachmentKey); ulong attachmentId = await socket.sendAttachment(attachmentData); var builder = AttachmentPointer.CreateBuilder() .SetContentType(attachment.getContentType()) .SetId(attachmentId) .SetKey(ByteString.CopyFrom(attachmentKey)) .SetSize((uint)attachment.getLength()); if (attachment.getPreview().HasValue) { builder.SetThumbnail(ByteString.CopyFrom(attachment.getPreview().ForceGetValue())); } return(builder.Build()); }
private AttachmentPointer createAttachmentPointer(TextSecureAttachmentStream attachment) { byte[] attachmentKey = Util.getSecretBytes(64); PushAttachmentData attachmentData = new PushAttachmentData(attachment.getContentType(), attachment.getInputStream(), attachment.getLength(), attachmentKey); ulong attachmentId = socket.sendAttachment(attachmentData).Result; var builder = AttachmentPointer.CreateBuilder() .SetContentType(attachment.getContentType()) .SetId(attachmentId) .SetKey(ByteString.CopyFrom(attachmentKey)) .SetSize((uint)attachment.getLength()); if (attachment.getPreview().HasValue) { builder.SetThumbnail(ByteString.CopyFrom(attachment.getPreview().ForceGetValue())); } return builder.Build(); }
private byte[] createMultiDeviceGroupsContent(TextSecureAttachmentStream groups) { Content.Builder container = Content.CreateBuilder(); SyncMessage.Builder builder = SyncMessage.CreateBuilder(); builder.SetGroups(SyncMessage.Types.Groups.CreateBuilder() .SetBlob(createAttachmentPointer(groups))); return container.SetSyncMessage(builder).Build().ToByteArray(); }