blob: c138f9a87fdb1e053c7379db8b0ec3986fea6faa [file] [log] [blame]
syntax = "proto2";
package copresence;
option optimize_for = LITE_RUNTIME;
import "codes.proto";
import "enums.proto";
import "data.proto";
message RequestHeader {
optional ClientVersion client_version = 4;
optional ClientVersion framework_version = 5;
optional int64 current_time_millis = 6;
optional string registered_device_id = 7;
repeated string experiment_override = 8;
optional DeviceFingerprint device_fingerprint = 10;
optional string configuration_etag = 11;
}
message ResponseHeader {
optional DebugInfo debug_info = 2;
optional Status status = 3;
}
message RegisterDeviceRequest {
optional RequestHeader header = 1;
optional PushServiceRegistration push_service = 5;
optional DeviceIdentifiers device_identifiers = 6;
}
message RegisterDeviceResponse {
optional ResponseHeader header = 1;
optional string registered_device_id = 2;
}
message ReportRequest {
optional RequestHeader header = 1;
optional ManageMessagesRequest manage_messages_request = 2;
optional ManageSubscriptionsRequest manage_subscriptions_request = 3;
optional UpdateSignalsRequest update_signals_request = 4;
}
message UpdateSignalsRequest {
repeated TokenObservation token_observation = 1;
optional DeviceState state = 3;
}
message ManageMessagesRequest {
repeated PublishedMessage message_to_publish = 1;
repeated string id_to_unpublish = 2;
}
message ManageSubscriptionsRequest {
repeated Subscription subscription = 1;
repeated string id_to_unsubscribe = 2;
}
message ReportResponse {
optional ResponseHeader header = 1;
optional ManageMessagesResponse manage_messages_response = 2;
optional ManageSubscriptionsResponse manage_subscriptions_response = 3;
optional UpdateSignalsResponse update_signals_response = 4;
}
message UpdateSignalsResponse {
optional util.error.Code status = 1;
repeated Token token = 2;
repeated SubscribedMessage message = 3;
repeated Directive directive = 4;
}
message ManageMessagesResponse {
optional util.error.Code status = 1;
repeated MessageResult published_message_result = 3;
}
message ManageSubscriptionsResponse {
optional util.error.Code status = 1;
repeated SubscriptionResult subscription_result = 3;
}