Class: Google::Cloud::Iot::V1::Device

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/iot/v1/resources.rb

Overview

The device resource.

Defined Under Namespace

Classes: MetadataEntry

Instance Attribute Summary collapse

Instance Attribute Details

#blocked::Boolean

Returns 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.

Returns:

  • (::Boolean)

    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.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#config::Google::Cloud::Iot::V1::DeviceConfig

Returns The most recent device configuration, which is eventually sent from Cloud IoT Core to the device. If not present on creation, the configuration will be initialized with an empty payload and version value of 1. To update this field after creation, use the DeviceManager.ModifyCloudToDeviceConfig method.

Returns:

  • (::Google::Cloud::Iot::V1::DeviceConfig)

    The most recent device configuration, which is eventually sent from Cloud IoT Core to the device. If not present on creation, the configuration will be initialized with an empty payload and version value of 1. To update this field after creation, use the DeviceManager.ModifyCloudToDeviceConfig method.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#credentials::Array<::Google::Cloud::Iot::V1::DeviceCredential>

Returns 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.

Returns:

  • (::Array<::Google::Cloud::Iot::V1::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.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#gateway_config::Google::Cloud::Iot::V1::GatewayConfig

Returns Gateway-related configuration and state.

Returns:



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#id::String

Returns The user-defined device identifier. The device ID must be unique within a device registry.

Returns:

  • (::String)

    The user-defined device identifier. The device ID must be unique within a device registry.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#last_config_ack_time::Google::Protobuf::Timestamp

Returns [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.

Returns:

  • (::Google::Protobuf::Timestamp)

    [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.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#last_config_send_time::Google::Protobuf::Timestamp

Returns [Output only] The last time a cloud-to-device config version was sent to the device.

Returns:



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#last_error_status::Google::Rpc::Status

Returns [Output only] The error message of the most recent error, such as a failure to publish to Cloud Pub/Sub. 'last_error_time' is the timestamp of this field. If no errors have occurred, this field has an empty message and the status code 0 == OK. Otherwise, this field is expected to have a status code other than OK.

Returns:

  • (::Google::Rpc::Status)

    [Output only] The error message of the most recent error, such as a failure to publish to Cloud Pub/Sub. 'last_error_time' is the timestamp of this field. If no errors have occurred, this field has an empty message and the status code 0 == OK. Otherwise, this field is expected to have a status code other than OK.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#last_error_time::Google::Protobuf::Timestamp

Returns [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'.

Returns:

  • (::Google::Protobuf::Timestamp)

    [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'.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#last_event_time::Google::Protobuf::Timestamp

Returns [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.

Returns:

  • (::Google::Protobuf::Timestamp)

    [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.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#last_heartbeat_time::Google::Protobuf::Timestamp

Returns [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.

Returns:

  • (::Google::Protobuf::Timestamp)

    [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.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#last_state_time::Google::Protobuf::Timestamp

Returns [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.

Returns:

  • (::Google::Protobuf::Timestamp)

    [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.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#log_level::Google::Cloud::Iot::V1::LogLevel

Returns Beta Feature

The logging verbosity for device activity. If unspecified, DeviceRegistry.log_level will be used.

Returns:



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#metadata::Google::Protobuf::Map{::String => ::String}

Returns 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][a-zA-Z0-9-_.+~%]+ 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.

Returns:

  • (::Google::Protobuf::Map{::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][a-zA-Z0-9-_.+~%]+ 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.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#name::String

Returns 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 name is populated as a response from the service, it always ends in the device numeric ID.

Returns:

  • (::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 name is populated as a response from the service, it always ends in the device numeric ID.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#num_id::Integer

Returns [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.

Returns:

  • (::Integer)

    [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.



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#state::Google::Cloud::Iot::V1::DeviceState

Returns [Output only] The state most recently received from the device. If no state has been reported, this field is not present.

Returns:



125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'proto_docs/google/cloud/iot/v1/resources.rb', line 125

class Device
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class MetadataEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end