Signal-iOS/SignalServiceKit/protobuf
Matthew Chen 8e4f2ca0ed Rework proto schema changes for quoted replies.
Sketch out model changes for quoted replies.

Sketch out quoted reply input preview.

Send quoted messages protos.

Update models to reflect quoted messages.

Rework interaction initializers.

Rework interaction initializers.

Add debug UI methods for generating quoted reply variations.

Add debug UI methods for generating quoted reply variations.
2018-04-02 16:17:46 -04:00
..
Makefile Clean up ahead of PR. 2018-03-20 11:23:56 -04:00
OWSFingerprintProtos.proto Import SSK (and history) into Signal-iOS 2017-07-21 13:55:01 -04:00
OWSProvisioningProtos.proto Add read receipts field/configuration protos 2017-10-02 16:03:17 -04:00
OWSSignaliOSProtos.proto Move backup protos to their own proto schema. 2018-03-20 11:23:56 -04:00
OWSSignalServiceProtos.proto Rework proto schema changes for quoted replies. 2018-04-02 16:17:46 -04:00
README.md Import SSK (and history) into Signal-iOS 2017-07-21 13:55:01 -04:00

SignalServiceKit Protobufs

These protobuf definitions are copied from Signal-Android, but modified to include a conventional ObjC classnames.

e.g.

import "objectivec-descriptor.proto";
option (google.protobuf.objectivec_file_options).class_prefix = "OWSFingerprintProtos";

Prequisites

Install protobuf 2.6, the objc plugin doesn't currently work with protobuf 3.0

brew install protobuf@2.6
# Beware if you are depending on protobuf 3.0 elsewhere
brew link --force protobuf@2.6

Install the objc plugin to $SignalServiceKitRoot/..

e.g. I have SignalServiceKit installed to ~/src/WhisperSystems/SignalServiceKit

So I run

cd ~/src/WhisperSystems
git clone https://github.com/alexeyxo/protobuf-objc

Follow the install instructions at https://github.com/alexeyxo/protobuf-objc

Building Protobuf

After changes are made to any proto, generate the ObjC classes by running:

cd ~/src/WhisperSystems/SignalServiceKit/protobuf
make