Class: Google::Apis::CloudiotV1::Device
- Inherits:
-
Object
- Object
- Google::Apis::CloudiotV1::Device
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- generated/google/apis/cloudiot_v1/classes.rb,
generated/google/apis/cloudiot_v1/representations.rb,
generated/google/apis/cloudiot_v1/representations.rb
Overview
The device resource.
Instance Attribute Summary collapse
-
#blocked ⇒ Boolean
(also: #blocked?)
If a device is blocked, connections or requests from this device will fail.
-
#config ⇒ Google::Apis::CloudiotV1::DeviceConfig
The device configuration.
-
#credentials ⇒ Array<Google::Apis::CloudiotV1::DeviceCredential>
The credentials used to authenticate this device.
-
#gateway_config ⇒ Google::Apis::CloudiotV1::GatewayConfig
Gateway-related configuration and state.
-
#id ⇒ String
The user-defined device identifier.
-
#last_config_ack_time ⇒ String
[Output only] The last time a cloud-to-device config version acknowledgment was received from the device.
-
#last_config_send_time ⇒ String
[Output only] The last time a cloud-to-device config version was sent to the device.
-
#last_error_status ⇒ Google::Apis::CloudiotV1::Status
The
Status
type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. -
#last_error_time ⇒ String
[Output only] The time the most recent error occurred, such as a failure to publish to Cloud Pub/Sub.
-
#last_event_time ⇒ String
[Output only] The last time a telemetry event was received.
-
#last_heartbeat_time ⇒ String
[Output only] The last time an MQTT
PINGREQ
was received. -
#last_state_time ⇒ String
[Output only] The last time a state event was received.
-
#log_level ⇒ String
Beta Feature The logging verbosity for device activity.
-
#metadata ⇒ Hash<String,String>
The metadata key-value pairs assigned to the device.
-
#name ⇒ String
The resource path name.
-
#num_id ⇒ Fixnum
[Output only] A server-defined unique numeric ID for the device.
-
#state ⇒ Google::Apis::CloudiotV1::DeviceState
The device state, as reported by the device.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Device
constructor
A new instance of Device.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Device
Returns a new instance of Device.
263 264 265 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 263 def initialize(**args) update!(**args) end |
Instance Attribute Details
#blocked ⇒ Boolean Also known as: blocked?
If a device is blocked, connections or requests from this device will fail.
Can be used to temporarily prevent the device from connecting if, for example,
the sensor is generating bad data and needs maintenance.
Corresponds to the JSON property blocked
146 147 148 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 146 def blocked @blocked end |
#config ⇒ Google::Apis::CloudiotV1::DeviceConfig
The device configuration. Eventually delivered to devices.
Corresponds to the JSON property config
152 153 154 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 152 def config @config end |
#credentials ⇒ Array<Google::Apis::CloudiotV1::DeviceCredential>
The credentials used to authenticate this device. To allow credential rotation
without interruption, multiple device credentials can be bound to this device.
No more than 3 credentials can be bound to a single device at a time. When new
credentials are added to a device, they are verified against the registry
credentials. For details, see the description of the DeviceRegistry.
credentials
field.
Corresponds to the JSON property credentials
162 163 164 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 162 def credentials @credentials end |
#gateway_config ⇒ Google::Apis::CloudiotV1::GatewayConfig
Gateway-related configuration and state.
Corresponds to the JSON property gatewayConfig
167 168 169 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 167 def gateway_config @gateway_config end |
#id ⇒ String
The user-defined device identifier. The device ID must be unique within a
device registry.
Corresponds to the JSON property id
173 174 175 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 173 def id @id end |
#last_config_ack_time ⇒ String
[Output only] The last time a cloud-to-device config version acknowledgment
was received from the device. This field is only for configurations sent
through MQTT.
Corresponds to the JSON property lastConfigAckTime
180 181 182 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 180 def last_config_ack_time @last_config_ack_time end |
#last_config_send_time ⇒ String
[Output only] The last time a cloud-to-device config version was sent to the
device.
Corresponds to the JSON property lastConfigSendTime
186 187 188 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 186 def last_config_send_time @last_config_send_time end |
#last_error_status ⇒ Google::Apis::CloudiotV1::Status
The Status
type defines a logical error model that is suitable for different
programming environments, including REST APIs and RPC APIs. It is used by
gRPC. Each Status
message contains three pieces of
data: error code, error message, and error details. You can find out more
about this error model and how to work with it in the API Design Guide.
Corresponds to the JSON property lastErrorStatus
196 197 198 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 196 def last_error_status @last_error_status end |
#last_error_time ⇒ String
[Output only] The time the most recent error occurred, such as a failure to
publish to Cloud Pub/Sub. This field is the timestamp of 'last_error_status'.
Corresponds to the JSON property lastErrorTime
202 203 204 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 202 def last_error_time @last_error_time end |
#last_event_time ⇒ String
[Output only] The last time a telemetry event was received. Timestamps are
periodically collected and written to storage; they may be stale by a few
minutes.
Corresponds to the JSON property lastEventTime
209 210 211 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 209 def last_event_time @last_event_time end |
#last_heartbeat_time ⇒ String
[Output only] The last time an MQTT PINGREQ
was received. This field applies
only to devices connecting through MQTT. MQTT clients usually only send
PINGREQ
messages if the connection is idle, and no other messages have been
sent. Timestamps are periodically collected and written to storage; they may
be stale by a few minutes.
Corresponds to the JSON property lastHeartbeatTime
218 219 220 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 218 def last_heartbeat_time @last_heartbeat_time end |
#last_state_time ⇒ String
[Output only] The last time a state event was received. Timestamps are
periodically collected and written to storage; they may be stale by a few
minutes.
Corresponds to the JSON property lastStateTime
225 226 227 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 225 def last_state_time @last_state_time end |
#log_level ⇒ String
Beta Feature The logging verbosity for device activity. If unspecified,
DeviceRegistry.log_level will be used.
Corresponds to the JSON property logLevel
231 232 233 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 231 def log_level @log_level end |
#metadata ⇒ Hash<String,String>
The metadata key-value pairs assigned to the device. This metadata is not
interpreted or indexed by Cloud IoT Core. It can be used to add contextual
information for the device. Keys must conform to the regular expression a-zA-Z+
and be less than 128 bytes in length. Values are free-form strings. Each
value must be less than or equal to 32 KB in size. The total size of all keys
and values must be less than 256 KB, and the maximum number of key-value pairs
is 500.
Corresponds to the JSON property metadata
242 243 244 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 242 def @metadata end |
#name ⇒ String
The resource path name. For example, projects/p1/locations/us-central1/
registries/registry0/devices/dev0
or projects/p1/locations/us-central1/
registries/registry0/devices/
num_id`. When
nameis populated as a response
from the service, it always ends in the device numeric ID.
Corresponds to the JSON property
name`
250 251 252 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 250 def name @name end |
#num_id ⇒ Fixnum
[Output only] A server-defined unique numeric ID for the device. This is a
more compact way to identify devices, and it is globally unique.
Corresponds to the JSON property numId
256 257 258 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 256 def num_id @num_id end |
#state ⇒ Google::Apis::CloudiotV1::DeviceState
The device state, as reported by the device.
Corresponds to the JSON property state
261 262 263 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 261 def state @state end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 |
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 268 def update!(**args) @blocked = args[:blocked] if args.key?(:blocked) @config = args[:config] if args.key?(:config) @credentials = args[:credentials] if args.key?(:credentials) @gateway_config = args[:gateway_config] if args.key?(:gateway_config) @id = args[:id] if args.key?(:id) @last_config_ack_time = args[:last_config_ack_time] if args.key?(:last_config_ack_time) @last_config_send_time = args[:last_config_send_time] if args.key?(:last_config_send_time) @last_error_status = args[:last_error_status] if args.key?(:last_error_status) @last_error_time = args[:last_error_time] if args.key?(:last_error_time) @last_event_time = args[:last_event_time] if args.key?(:last_event_time) @last_heartbeat_time = args[:last_heartbeat_time] if args.key?(:last_heartbeat_time) @last_state_time = args[:last_state_time] if args.key?(:last_state_time) @log_level = args[:log_level] if args.key?(:log_level) @metadata = args[:metadata] if args.key?(:metadata) @name = args[:name] if args.key?(:name) @num_id = args[:num_id] if args.key?(:num_id) @state = args[:state] if args.key?(:state) end |