google-cloud-iot-v1 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.yardopts +12 -0
- data/AUTHENTICATION.md +169 -0
- data/LICENSE.md +203 -0
- data/README.md +71 -0
- data/lib/google-cloud-iot-v1.rb +21 -0
- data/lib/google/cloud/iot/v1.rb +35 -0
- data/lib/google/cloud/iot/v1/device_manager.rb +49 -0
- data/lib/google/cloud/iot/v1/device_manager/client.rb +1936 -0
- data/lib/google/cloud/iot/v1/device_manager/credentials.rb +52 -0
- data/lib/google/cloud/iot/v1/device_manager/paths.rb +90 -0
- data/lib/google/cloud/iot/v1/device_manager_pb.rb +150 -0
- data/lib/google/cloud/iot/v1/device_manager_services_pb.rb +103 -0
- data/lib/google/cloud/iot/v1/resources_pb.rb +167 -0
- data/lib/google/cloud/iot/v1/version.rb +28 -0
- data/proto_docs/README.md +4 -0
- data/proto_docs/google/api/field_behavior.rb +59 -0
- data/proto_docs/google/api/resource.rb +247 -0
- data/proto_docs/google/cloud/iot/v1/device_manager.rb +397 -0
- data/proto_docs/google/cloud/iot/v1/resources.rb +517 -0
- data/proto_docs/google/iam/v1/iam_policy.rb +80 -0
- data/proto_docs/google/iam/v1/options.rb +40 -0
- data/proto_docs/google/iam/v1/policy.rb +248 -0
- data/proto_docs/google/protobuf/any.rb +138 -0
- data/proto_docs/google/protobuf/empty.rb +36 -0
- data/proto_docs/google/protobuf/field_mask.rb +229 -0
- data/proto_docs/google/protobuf/timestamp.rb +120 -0
- data/proto_docs/google/rpc/status.rb +46 -0
- data/proto_docs/google/type/expr.rb +52 -0
- metadata +231 -0
@@ -0,0 +1,517 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2020 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module Iot
|
23
|
+
module V1
|
24
|
+
# The device resource.
|
25
|
+
# @!attribute [rw] id
|
26
|
+
# @return [::String]
|
27
|
+
# The user-defined device identifier. The device ID must be unique
|
28
|
+
# within a device registry.
|
29
|
+
# @!attribute [rw] name
|
30
|
+
# @return [::String]
|
31
|
+
# The resource path name. For example,
|
32
|
+
# `projects/p1/locations/us-central1/registries/registry0/devices/dev0` or
|
33
|
+
# `projects/p1/locations/us-central1/registries/registry0/devices/{num_id}`.
|
34
|
+
# When `name` is populated as a response from the service, it always ends
|
35
|
+
# in the device numeric ID.
|
36
|
+
# @!attribute [rw] num_id
|
37
|
+
# @return [::Integer]
|
38
|
+
# [Output only] A server-defined unique numeric ID for the device. This is a
|
39
|
+
# more compact way to identify devices, and it is globally unique.
|
40
|
+
# @!attribute [rw] credentials
|
41
|
+
# @return [::Array<::Google::Cloud::Iot::V1::DeviceCredential>]
|
42
|
+
# The credentials used to authenticate this device. To allow credential
|
43
|
+
# rotation without interruption, multiple device credentials can be bound to
|
44
|
+
# this device. No more than 3 credentials can be bound to a single device at
|
45
|
+
# a time. When new credentials are added to a device, they are verified
|
46
|
+
# against the registry credentials. For details, see the description of the
|
47
|
+
# `DeviceRegistry.credentials` field.
|
48
|
+
# @!attribute [rw] last_heartbeat_time
|
49
|
+
# @return [::Google::Protobuf::Timestamp]
|
50
|
+
# [Output only] The last time an MQTT `PINGREQ` was received. This field
|
51
|
+
# applies only to devices connecting through MQTT. MQTT clients usually only
|
52
|
+
# send `PINGREQ` messages if the connection is idle, and no other messages
|
53
|
+
# have been sent. Timestamps are periodically collected and written to
|
54
|
+
# storage; they may be stale by a few minutes.
|
55
|
+
# @!attribute [rw] last_event_time
|
56
|
+
# @return [::Google::Protobuf::Timestamp]
|
57
|
+
# [Output only] The last time a telemetry event was received. Timestamps are
|
58
|
+
# periodically collected and written to storage; they may be stale by a few
|
59
|
+
# minutes.
|
60
|
+
# @!attribute [rw] last_state_time
|
61
|
+
# @return [::Google::Protobuf::Timestamp]
|
62
|
+
# [Output only] The last time a state event was received. Timestamps are
|
63
|
+
# periodically collected and written to storage; they may be stale by a few
|
64
|
+
# minutes.
|
65
|
+
# @!attribute [rw] last_config_ack_time
|
66
|
+
# @return [::Google::Protobuf::Timestamp]
|
67
|
+
# [Output only] The last time a cloud-to-device config version acknowledgment
|
68
|
+
# was received from the device. This field is only for configurations
|
69
|
+
# sent through MQTT.
|
70
|
+
# @!attribute [rw] last_config_send_time
|
71
|
+
# @return [::Google::Protobuf::Timestamp]
|
72
|
+
# [Output only] The last time a cloud-to-device config version was sent to
|
73
|
+
# the device.
|
74
|
+
# @!attribute [rw] blocked
|
75
|
+
# @return [::Boolean]
|
76
|
+
# If a device is blocked, connections or requests from this device will fail.
|
77
|
+
# Can be used to temporarily prevent the device from connecting if, for
|
78
|
+
# example, the sensor is generating bad data and needs maintenance.
|
79
|
+
# @!attribute [rw] last_error_time
|
80
|
+
# @return [::Google::Protobuf::Timestamp]
|
81
|
+
# [Output only] The time the most recent error occurred, such as a failure to
|
82
|
+
# publish to Cloud Pub/Sub. This field is the timestamp of
|
83
|
+
# 'last_error_status'.
|
84
|
+
# @!attribute [rw] last_error_status
|
85
|
+
# @return [::Google::Rpc::Status]
|
86
|
+
# [Output only] The error message of the most recent error, such as a failure
|
87
|
+
# to publish to Cloud Pub/Sub. 'last_error_time' is the timestamp of this
|
88
|
+
# field. If no errors have occurred, this field has an empty message
|
89
|
+
# and the status code 0 == OK. Otherwise, this field is expected to have a
|
90
|
+
# status code other than OK.
|
91
|
+
# @!attribute [rw] config
|
92
|
+
# @return [::Google::Cloud::Iot::V1::DeviceConfig]
|
93
|
+
# The most recent device configuration, which is eventually sent from
|
94
|
+
# Cloud IoT Core to the device. If not present on creation, the
|
95
|
+
# configuration will be initialized with an empty payload and version value
|
96
|
+
# of `1`. To update this field after creation, use the
|
97
|
+
# `DeviceManager.ModifyCloudToDeviceConfig` method.
|
98
|
+
# @!attribute [rw] state
|
99
|
+
# @return [::Google::Cloud::Iot::V1::DeviceState]
|
100
|
+
# [Output only] The state most recently received from the device. If no state
|
101
|
+
# has been reported, this field is not present.
|
102
|
+
# @!attribute [rw] log_level
|
103
|
+
# @return [::Google::Cloud::Iot::V1::LogLevel]
|
104
|
+
# **Beta Feature**
|
105
|
+
#
|
106
|
+
# The logging verbosity for device activity. If unspecified,
|
107
|
+
# DeviceRegistry.log_level will be used.
|
108
|
+
# @!attribute [rw] metadata
|
109
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
110
|
+
# The metadata key-value pairs assigned to the device. This metadata is not
|
111
|
+
# interpreted or indexed by Cloud IoT Core. It can be used to add contextual
|
112
|
+
# information for the device.
|
113
|
+
#
|
114
|
+
# Keys must conform to the regular expression [a-zA-Z][a-zA-Z0-9-_.+~%]+ and
|
115
|
+
# be less than 128 bytes in length.
|
116
|
+
#
|
117
|
+
# Values are free-form strings. Each value must be less than or equal to 32
|
118
|
+
# KB in size.
|
119
|
+
#
|
120
|
+
# The total size of all keys and values must be less than 256 KB, and the
|
121
|
+
# maximum number of key-value pairs is 500.
|
122
|
+
# @!attribute [rw] gateway_config
|
123
|
+
# @return [::Google::Cloud::Iot::V1::GatewayConfig]
|
124
|
+
# Gateway-related configuration and state.
|
125
|
+
class Device
|
126
|
+
include ::Google::Protobuf::MessageExts
|
127
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
128
|
+
|
129
|
+
# @!attribute [rw] key
|
130
|
+
# @return [::String]
|
131
|
+
# @!attribute [rw] value
|
132
|
+
# @return [::String]
|
133
|
+
class MetadataEntry
|
134
|
+
include ::Google::Protobuf::MessageExts
|
135
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
136
|
+
end
|
137
|
+
end
|
138
|
+
|
139
|
+
# Gateway-related configuration and state.
|
140
|
+
# @!attribute [rw] gateway_type
|
141
|
+
# @return [::Google::Cloud::Iot::V1::GatewayType]
|
142
|
+
# Indicates whether the device is a gateway.
|
143
|
+
# @!attribute [rw] gateway_auth_method
|
144
|
+
# @return [::Google::Cloud::Iot::V1::GatewayAuthMethod]
|
145
|
+
# Indicates how to authorize and/or authenticate devices to access the
|
146
|
+
# gateway.
|
147
|
+
# @!attribute [rw] last_accessed_gateway_id
|
148
|
+
# @return [::String]
|
149
|
+
# [Output only] The ID of the gateway the device accessed most recently.
|
150
|
+
# @!attribute [rw] last_accessed_gateway_time
|
151
|
+
# @return [::Google::Protobuf::Timestamp]
|
152
|
+
# [Output only] The most recent time at which the device accessed the gateway
|
153
|
+
# specified in `last_accessed_gateway`.
|
154
|
+
class GatewayConfig
|
155
|
+
include ::Google::Protobuf::MessageExts
|
156
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
157
|
+
end
|
158
|
+
|
159
|
+
# A container for a group of devices.
|
160
|
+
# @!attribute [rw] id
|
161
|
+
# @return [::String]
|
162
|
+
# The identifier of this device registry. For example, `myRegistry`.
|
163
|
+
# @!attribute [rw] name
|
164
|
+
# @return [::String]
|
165
|
+
# The resource path name. For example,
|
166
|
+
# `projects/example-project/locations/us-central1/registries/my-registry`.
|
167
|
+
# @!attribute [rw] event_notification_configs
|
168
|
+
# @return [::Array<::Google::Cloud::Iot::V1::EventNotificationConfig>]
|
169
|
+
# The configuration for notification of telemetry events received from the
|
170
|
+
# device. All telemetry events that were successfully published by the
|
171
|
+
# device and acknowledged by Cloud IoT Core are guaranteed to be
|
172
|
+
# delivered to Cloud Pub/Sub. If multiple configurations match a message,
|
173
|
+
# only the first matching configuration is used. If you try to publish a
|
174
|
+
# device telemetry event using MQTT without specifying a Cloud Pub/Sub topic
|
175
|
+
# for the device's registry, the connection closes automatically. If you try
|
176
|
+
# to do so using an HTTP connection, an error is returned. Up to 10
|
177
|
+
# configurations may be provided.
|
178
|
+
# @!attribute [rw] state_notification_config
|
179
|
+
# @return [::Google::Cloud::Iot::V1::StateNotificationConfig]
|
180
|
+
# The configuration for notification of new states received from the device.
|
181
|
+
# State updates are guaranteed to be stored in the state history, but
|
182
|
+
# notifications to Cloud Pub/Sub are not guaranteed. For example, if
|
183
|
+
# permissions are misconfigured or the specified topic doesn't exist, no
|
184
|
+
# notification will be published but the state will still be stored in Cloud
|
185
|
+
# IoT Core.
|
186
|
+
# @!attribute [rw] mqtt_config
|
187
|
+
# @return [::Google::Cloud::Iot::V1::MqttConfig]
|
188
|
+
# The MQTT configuration for this device registry.
|
189
|
+
# @!attribute [rw] http_config
|
190
|
+
# @return [::Google::Cloud::Iot::V1::HttpConfig]
|
191
|
+
# The DeviceService (HTTP) configuration for this device registry.
|
192
|
+
# @!attribute [rw] log_level
|
193
|
+
# @return [::Google::Cloud::Iot::V1::LogLevel]
|
194
|
+
# **Beta Feature**
|
195
|
+
#
|
196
|
+
# The default logging verbosity for activity from devices in this registry.
|
197
|
+
# The verbosity level can be overridden by Device.log_level.
|
198
|
+
# @!attribute [rw] credentials
|
199
|
+
# @return [::Array<::Google::Cloud::Iot::V1::RegistryCredential>]
|
200
|
+
# The credentials used to verify the device credentials. No more than 10
|
201
|
+
# credentials can be bound to a single registry at a time. The verification
|
202
|
+
# process occurs at the time of device creation or update. If this field is
|
203
|
+
# empty, no verification is performed. Otherwise, the credentials of a newly
|
204
|
+
# created device or added credentials of an updated device should be signed
|
205
|
+
# with one of these registry credentials.
|
206
|
+
#
|
207
|
+
# Note, however, that existing devices will never be affected by
|
208
|
+
# modifications to this list of credentials: after a device has been
|
209
|
+
# successfully created in a registry, it should be able to connect even if
|
210
|
+
# its registry credentials are revoked, deleted, or modified.
|
211
|
+
class DeviceRegistry
|
212
|
+
include ::Google::Protobuf::MessageExts
|
213
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
214
|
+
end
|
215
|
+
|
216
|
+
# The configuration of MQTT for a device registry.
|
217
|
+
# @!attribute [rw] mqtt_enabled_state
|
218
|
+
# @return [::Google::Cloud::Iot::V1::MqttState]
|
219
|
+
# If enabled, allows connections using the MQTT protocol. Otherwise, MQTT
|
220
|
+
# connections to this registry will fail.
|
221
|
+
class MqttConfig
|
222
|
+
include ::Google::Protobuf::MessageExts
|
223
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
224
|
+
end
|
225
|
+
|
226
|
+
# The configuration of the HTTP bridge for a device registry.
|
227
|
+
# @!attribute [rw] http_enabled_state
|
228
|
+
# @return [::Google::Cloud::Iot::V1::HttpState]
|
229
|
+
# If enabled, allows devices to use DeviceService via the HTTP protocol.
|
230
|
+
# Otherwise, any requests to DeviceService will fail for this registry.
|
231
|
+
class HttpConfig
|
232
|
+
include ::Google::Protobuf::MessageExts
|
233
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
234
|
+
end
|
235
|
+
|
236
|
+
# The configuration for forwarding telemetry events.
|
237
|
+
# @!attribute [rw] subfolder_matches
|
238
|
+
# @return [::String]
|
239
|
+
# If the subfolder name matches this string exactly, this configuration will
|
240
|
+
# be used. The string must not include the leading '/' character. If empty,
|
241
|
+
# all strings are matched. This field is used only for telemetry events;
|
242
|
+
# subfolders are not supported for state changes.
|
243
|
+
# @!attribute [rw] pubsub_topic_name
|
244
|
+
# @return [::String]
|
245
|
+
# A Cloud Pub/Sub topic name. For example,
|
246
|
+
# `projects/myProject/topics/deviceEvents`.
|
247
|
+
class EventNotificationConfig
|
248
|
+
include ::Google::Protobuf::MessageExts
|
249
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
250
|
+
end
|
251
|
+
|
252
|
+
# The configuration for notification of new states received from the device.
|
253
|
+
# @!attribute [rw] pubsub_topic_name
|
254
|
+
# @return [::String]
|
255
|
+
# A Cloud Pub/Sub topic name. For example,
|
256
|
+
# `projects/myProject/topics/deviceEvents`.
|
257
|
+
class StateNotificationConfig
|
258
|
+
include ::Google::Protobuf::MessageExts
|
259
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
260
|
+
end
|
261
|
+
|
262
|
+
# A server-stored registry credential used to validate device credentials.
|
263
|
+
# @!attribute [rw] public_key_certificate
|
264
|
+
# @return [::Google::Cloud::Iot::V1::PublicKeyCertificate]
|
265
|
+
# A public key certificate used to verify the device credentials.
|
266
|
+
class RegistryCredential
|
267
|
+
include ::Google::Protobuf::MessageExts
|
268
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
269
|
+
end
|
270
|
+
|
271
|
+
# Details of an X.509 certificate. For informational purposes only.
|
272
|
+
# @!attribute [rw] issuer
|
273
|
+
# @return [::String]
|
274
|
+
# The entity that signed the certificate.
|
275
|
+
# @!attribute [rw] subject
|
276
|
+
# @return [::String]
|
277
|
+
# The entity the certificate and public key belong to.
|
278
|
+
# @!attribute [rw] start_time
|
279
|
+
# @return [::Google::Protobuf::Timestamp]
|
280
|
+
# The time the certificate becomes valid.
|
281
|
+
# @!attribute [rw] expiry_time
|
282
|
+
# @return [::Google::Protobuf::Timestamp]
|
283
|
+
# The time the certificate becomes invalid.
|
284
|
+
# @!attribute [rw] signature_algorithm
|
285
|
+
# @return [::String]
|
286
|
+
# The algorithm used to sign the certificate.
|
287
|
+
# @!attribute [rw] public_key_type
|
288
|
+
# @return [::String]
|
289
|
+
# The type of public key in the certificate.
|
290
|
+
class X509CertificateDetails
|
291
|
+
include ::Google::Protobuf::MessageExts
|
292
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
293
|
+
end
|
294
|
+
|
295
|
+
# A public key certificate format and data.
|
296
|
+
# @!attribute [rw] format
|
297
|
+
# @return [::Google::Cloud::Iot::V1::PublicKeyCertificateFormat]
|
298
|
+
# The certificate format.
|
299
|
+
# @!attribute [rw] certificate
|
300
|
+
# @return [::String]
|
301
|
+
# The certificate data.
|
302
|
+
# @!attribute [rw] x509_details
|
303
|
+
# @return [::Google::Cloud::Iot::V1::X509CertificateDetails]
|
304
|
+
# [Output only] The certificate details. Used only for X.509 certificates.
|
305
|
+
class PublicKeyCertificate
|
306
|
+
include ::Google::Protobuf::MessageExts
|
307
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
308
|
+
end
|
309
|
+
|
310
|
+
# A server-stored device credential used for authentication.
|
311
|
+
# @!attribute [rw] public_key
|
312
|
+
# @return [::Google::Cloud::Iot::V1::PublicKeyCredential]
|
313
|
+
# A public key used to verify the signature of JSON Web Tokens (JWTs).
|
314
|
+
# When adding a new device credential, either via device creation or via
|
315
|
+
# modifications, this public key credential may be required to be signed by
|
316
|
+
# one of the registry level certificates. More specifically, if the
|
317
|
+
# registry contains at least one certificate, any new device credential
|
318
|
+
# must be signed by one of the registry certificates. As a result,
|
319
|
+
# when the registry contains certificates, only X.509 certificates are
|
320
|
+
# accepted as device credentials. However, if the registry does
|
321
|
+
# not contain a certificate, self-signed certificates and public keys will
|
322
|
+
# be accepted. New device credentials must be different from every
|
323
|
+
# registry-level certificate.
|
324
|
+
# @!attribute [rw] expiration_time
|
325
|
+
# @return [::Google::Protobuf::Timestamp]
|
326
|
+
# [Optional] The time at which this credential becomes invalid. This
|
327
|
+
# credential will be ignored for new client authentication requests after
|
328
|
+
# this timestamp; however, it will not be automatically deleted.
|
329
|
+
class DeviceCredential
|
330
|
+
include ::Google::Protobuf::MessageExts
|
331
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
332
|
+
end
|
333
|
+
|
334
|
+
# A public key format and data.
|
335
|
+
# @!attribute [rw] format
|
336
|
+
# @return [::Google::Cloud::Iot::V1::PublicKeyFormat]
|
337
|
+
# The format of the key.
|
338
|
+
# @!attribute [rw] key
|
339
|
+
# @return [::String]
|
340
|
+
# The key data.
|
341
|
+
class PublicKeyCredential
|
342
|
+
include ::Google::Protobuf::MessageExts
|
343
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
344
|
+
end
|
345
|
+
|
346
|
+
# The device configuration. Eventually delivered to devices.
|
347
|
+
# @!attribute [rw] version
|
348
|
+
# @return [::Integer]
|
349
|
+
# [Output only] The version of this update. The version number is assigned by
|
350
|
+
# the server, and is always greater than 0 after device creation. The
|
351
|
+
# version must be 0 on the `CreateDevice` request if a `config` is
|
352
|
+
# specified; the response of `CreateDevice` will always have a value of 1.
|
353
|
+
# @!attribute [rw] cloud_update_time
|
354
|
+
# @return [::Google::Protobuf::Timestamp]
|
355
|
+
# [Output only] The time at which this configuration version was updated in
|
356
|
+
# Cloud IoT Core. This timestamp is set by the server.
|
357
|
+
# @!attribute [rw] device_ack_time
|
358
|
+
# @return [::Google::Protobuf::Timestamp]
|
359
|
+
# [Output only] The time at which Cloud IoT Core received the
|
360
|
+
# acknowledgment from the device, indicating that the device has received
|
361
|
+
# this configuration version. If this field is not present, the device has
|
362
|
+
# not yet acknowledged that it received this version. Note that when
|
363
|
+
# the config was sent to the device, many config versions may have been
|
364
|
+
# available in Cloud IoT Core while the device was disconnected, and on
|
365
|
+
# connection, only the latest version is sent to the device. Some
|
366
|
+
# versions may never be sent to the device, and therefore are never
|
367
|
+
# acknowledged. This timestamp is set by Cloud IoT Core.
|
368
|
+
# @!attribute [rw] binary_data
|
369
|
+
# @return [::String]
|
370
|
+
# The device configuration data.
|
371
|
+
class DeviceConfig
|
372
|
+
include ::Google::Protobuf::MessageExts
|
373
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
374
|
+
end
|
375
|
+
|
376
|
+
# The device state, as reported by the device.
|
377
|
+
# @!attribute [rw] update_time
|
378
|
+
# @return [::Google::Protobuf::Timestamp]
|
379
|
+
# [Output only] The time at which this state version was updated in Cloud
|
380
|
+
# IoT Core.
|
381
|
+
# @!attribute [rw] binary_data
|
382
|
+
# @return [::String]
|
383
|
+
# The device state data.
|
384
|
+
class DeviceState
|
385
|
+
include ::Google::Protobuf::MessageExts
|
386
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
387
|
+
end
|
388
|
+
|
389
|
+
# Indicates whether an MQTT connection is enabled or disabled. See the field
|
390
|
+
# description for details.
|
391
|
+
module MqttState
|
392
|
+
# No MQTT state specified. If not specified, MQTT will be enabled by default.
|
393
|
+
MQTT_STATE_UNSPECIFIED = 0
|
394
|
+
|
395
|
+
# Enables a MQTT connection.
|
396
|
+
MQTT_ENABLED = 1
|
397
|
+
|
398
|
+
# Disables a MQTT connection.
|
399
|
+
MQTT_DISABLED = 2
|
400
|
+
end
|
401
|
+
|
402
|
+
# Indicates whether DeviceService (HTTP) is enabled or disabled for the
|
403
|
+
# registry. See the field description for details.
|
404
|
+
module HttpState
|
405
|
+
# No HTTP state specified. If not specified, DeviceService will be
|
406
|
+
# enabled by default.
|
407
|
+
HTTP_STATE_UNSPECIFIED = 0
|
408
|
+
|
409
|
+
# Enables DeviceService (HTTP) service for the registry.
|
410
|
+
HTTP_ENABLED = 1
|
411
|
+
|
412
|
+
# Disables DeviceService (HTTP) service for the registry.
|
413
|
+
HTTP_DISABLED = 2
|
414
|
+
end
|
415
|
+
|
416
|
+
# **Beta Feature**
|
417
|
+
#
|
418
|
+
# The logging verbosity for device activity. Specifies which events should be
|
419
|
+
# written to logs. For example, if the LogLevel is ERROR, only events that
|
420
|
+
# terminate in errors will be logged. LogLevel is inclusive; enabling INFO
|
421
|
+
# logging will also enable ERROR logging.
|
422
|
+
module LogLevel
|
423
|
+
# No logging specified. If not specified, logging will be disabled.
|
424
|
+
LOG_LEVEL_UNSPECIFIED = 0
|
425
|
+
|
426
|
+
# Disables logging.
|
427
|
+
NONE = 10
|
428
|
+
|
429
|
+
# Error events will be logged.
|
430
|
+
ERROR = 20
|
431
|
+
|
432
|
+
# Informational events will be logged, such as connections and
|
433
|
+
# disconnections.
|
434
|
+
INFO = 30
|
435
|
+
|
436
|
+
# All events will be logged.
|
437
|
+
DEBUG = 40
|
438
|
+
end
|
439
|
+
|
440
|
+
# Gateway type.
|
441
|
+
module GatewayType
|
442
|
+
# If unspecified, the device is considered a non-gateway device.
|
443
|
+
GATEWAY_TYPE_UNSPECIFIED = 0
|
444
|
+
|
445
|
+
# The device is a gateway.
|
446
|
+
GATEWAY = 1
|
447
|
+
|
448
|
+
# The device is not a gateway.
|
449
|
+
NON_GATEWAY = 2
|
450
|
+
end
|
451
|
+
|
452
|
+
# The gateway authorization/authentication method. This setting determines how
|
453
|
+
# Cloud IoT Core authorizes/authenticate devices to access the gateway.
|
454
|
+
module GatewayAuthMethod
|
455
|
+
# No authentication/authorization method specified. No devices are allowed to
|
456
|
+
# access the gateway.
|
457
|
+
GATEWAY_AUTH_METHOD_UNSPECIFIED = 0
|
458
|
+
|
459
|
+
# The device is authenticated through the gateway association only. Device
|
460
|
+
# credentials are ignored even if provided.
|
461
|
+
ASSOCIATION_ONLY = 1
|
462
|
+
|
463
|
+
# The device is authenticated through its own credentials. Gateway
|
464
|
+
# association is not checked.
|
465
|
+
DEVICE_AUTH_TOKEN_ONLY = 2
|
466
|
+
|
467
|
+
# The device is authenticated through both device credentials and gateway
|
468
|
+
# association. The device must be bound to the gateway and must provide its
|
469
|
+
# own credentials.
|
470
|
+
ASSOCIATION_AND_DEVICE_AUTH_TOKEN = 3
|
471
|
+
end
|
472
|
+
|
473
|
+
# The supported formats for the public key.
|
474
|
+
module PublicKeyCertificateFormat
|
475
|
+
# The format has not been specified. This is an invalid default value and
|
476
|
+
# must not be used.
|
477
|
+
UNSPECIFIED_PUBLIC_KEY_CERTIFICATE_FORMAT = 0
|
478
|
+
|
479
|
+
# An X.509v3 certificate ([RFC5280](https://www.ietf.org/rfc/rfc5280.txt)),
|
480
|
+
# encoded in base64, and wrapped by `-----BEGIN CERTIFICATE-----` and
|
481
|
+
# `-----END CERTIFICATE-----`.
|
482
|
+
X509_CERTIFICATE_PEM = 1
|
483
|
+
end
|
484
|
+
|
485
|
+
# The supported formats for the public key.
|
486
|
+
module PublicKeyFormat
|
487
|
+
# The format has not been specified. This is an invalid default value and
|
488
|
+
# must not be used.
|
489
|
+
UNSPECIFIED_PUBLIC_KEY_FORMAT = 0
|
490
|
+
|
491
|
+
# An RSA public key encoded in base64, and wrapped by
|
492
|
+
# `-----BEGIN PUBLIC KEY-----` and `-----END PUBLIC KEY-----`. This can be
|
493
|
+
# used to verify `RS256` signatures in JWT tokens ([RFC7518](
|
494
|
+
# https://www.ietf.org/rfc/rfc7518.txt)).
|
495
|
+
RSA_PEM = 3
|
496
|
+
|
497
|
+
# As RSA_PEM, but wrapped in an X.509v3 certificate ([RFC5280](
|
498
|
+
# https://www.ietf.org/rfc/rfc5280.txt)), encoded in base64, and wrapped by
|
499
|
+
# `-----BEGIN CERTIFICATE-----` and `-----END CERTIFICATE-----`.
|
500
|
+
RSA_X509_PEM = 1
|
501
|
+
|
502
|
+
# Public key for the ECDSA algorithm using P-256 and SHA-256, encoded in
|
503
|
+
# base64, and wrapped by `-----BEGIN PUBLIC KEY-----` and `-----END
|
504
|
+
# PUBLIC KEY-----`. This can be used to verify JWT tokens with the `ES256`
|
505
|
+
# algorithm ([RFC7518](https://www.ietf.org/rfc/rfc7518.txt)). This curve is
|
506
|
+
# defined in [OpenSSL](https://www.openssl.org/) as the `prime256v1` curve.
|
507
|
+
ES256_PEM = 2
|
508
|
+
|
509
|
+
# As ES256_PEM, but wrapped in an X.509v3 certificate ([RFC5280](
|
510
|
+
# https://www.ietf.org/rfc/rfc5280.txt)), encoded in base64, and wrapped by
|
511
|
+
# `-----BEGIN CERTIFICATE-----` and `-----END CERTIFICATE-----`.
|
512
|
+
ES256_X509_PEM = 4
|
513
|
+
end
|
514
|
+
end
|
515
|
+
end
|
516
|
+
end
|
517
|
+
end
|