Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / components / copresence / proto / data.proto
1 syntax = "proto2";
2 package copresence;
3 option optimize_for = LITE_RUNTIME;
4 import "enums.proto";
5 import "identity.proto";
6 message ClientVersion {
7   optional string client = 1;
8   optional string version_name = 2;
9   optional int64 version_code = 3;
10   optional string certificate_fingerprint = 4;
11 }
12 message Status {
13   optional StatusCode code = 1;
14   optional string message = 2;
15 }
16 message PushServiceRegistration {
17   optional PushService service = 1;
18 }
19 message DeviceIdentifiers {
20   optional int32 ulr_device_id = 1;
21   optional DeviceIdentity device_identity = 2;
22   optional Identity registrant = 3;
23 }
24 message Token {
25   message Debug {
26     repeated string email = 2;
27   }
28   optional string id = 1;
29   optional TokenStatus status = 3;
30   optional Debug debug = 4;
31 }
32 message DeviceFingerprint {
33   optional string manufacturer = 1;
34   optional string model = 2;
35   optional PlatformType type = 3;
36   optional string platform_version = 4;
37 }
38 message TokenTechnology {
39   optional TokenMedium medium = 1;
40   repeated TokenInstructionType instruction_type = 2;
41 }
42 message DeviceCapabilities {
43   repeated TokenTechnology token_technology = 2;
44 }
45 message TokenInstruction {
46   optional TokenInstructionType token_instruction_type = 1;
47   optional TokenMedium medium = 2;
48   optional string token_id = 4;
49 }
50 message Directive {
51   optional InstructionType instruction_type = 1;
52   optional TokenInstruction token_instruction = 2;
53   optional int64 delay_millis = 3;
54   optional int64 ttl_millis = 4;
55   optional string published_message_id = 5;
56   optional string subscription_id = 6;
57 }
58 message DeviceState {
59   optional DeviceCapabilities capabilities = 1;
60   repeated Directive active_directive = 2;
61 }
62 message DebugInfo {
63   optional string served_by_task = 1;
64   repeated string token_id = 3;
65   optional int64 request_time_millis = 4;
66 }
67 message TokenObservation {
68   optional string token_id = 1;
69   repeated TokenSignals signals = 2;
70 }
71 message TokenSignals {
72   optional TokenMedium medium = 1;
73   optional int32 rssi = 2;
74   optional int64 observed_time_millis = 3;
75 }
76 message AccessPolicy {
77   optional int64 ttl_millis = 1;
78   optional Acl acl = 2;
79 }
80 message Acl {
81   optional AclType acl_type = 1;
82   optional string named_acl_name = 2;
83   optional bytes referenced_acl_consistency_token = 5;
84 }
85 message PublishedMessage {
86   optional string id = 1;
87   optional AccessPolicy access_policy = 2;
88   optional Message message = 3;
89   optional TokenExchangeStrategy token_exchange_strategy = 5;
90   optional OptInStateFilter opt_in_state_filter = 6;
91 }
92 message TokenExchangeStrategy {
93   optional AudioConfiguration audio_configuration = 1;
94   optional BroadcastScanConfiguration broadcast_scan_configuration = 2;
95 }
96 message SubscribedMessage {
97   message Debug {
98     optional string published_message_id = 1;
99     optional string publisher_identity_id = 2;
100     optional string publisher_device_id = 3;
101     optional int64 creation_timestamp_millis = 4;
102     optional int64 ttl_millis = 5;
103     optional TokenExchangeStrategy token_exchange_strategy = 7;
104   }
105   repeated string subscription_id = 1;
106   optional Message published_message = 2;
107   optional Debug debug = 3;
108 }
109 message Message {
110   optional MessageType type = 2;
111   optional bytes payload = 3;
112 }
113 message MessageType {
114   optional string type = 2;
115 }
116 message Subscription {
117   optional string id = 1;
118   optional int64 ttl_millis = 3;
119   optional MessageType message_type = 4;
120   optional TokenExchangeStrategy token_exchange_strategy = 7;
121   optional OptInStateFilter opt_in_state_filter = 8;
122 }
123 message MessageResult {
124   optional string published_message_id = 1;
125 }
126 message SubscriptionResult {
127   optional string subscription_id = 1;
128 }
129 message OptInStateFilter {
130   repeated OptInState allowed_opt_in_state = 1;
131 }