Class: Google::Apis::CloudiotV1::DeviceRegistry

Inherits:
Object
  • Object
show all
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

A container for a group of devices.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ DeviceRegistry

Returns a new instance of DeviceRegistry



504
505
506
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 504

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#credentialsArray<Google::Apis::CloudiotV1::RegistryCredential>

The credentials used to verify the device credentials. No more than 10 credentials can be bound to a single registry at a time. The verification process occurs at the time of device creation or update. If this field is empty, no verification is performed. Otherwise, the credentials of a newly created device or added credentials of an updated device should be signed with one of these registry credentials. Note, however, that existing devices will never be affected by modifications to this list of credentials: after a device has been successfully created in a registry, it should be able to connect even if its registry credentials are revoked, deleted, or modified. Corresponds to the JSON property credentials



464
465
466
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 464

def credentials
  @credentials
end

#event_notification_configsArray<Google::Apis::CloudiotV1::EventNotificationConfig>

The configuration for notification of telemetry events received from the device. All telemetry events that were successfully published by the device and acknowledged by Cloud IoT Core are guaranteed to be delivered to Cloud Pub/Sub. Only the first configuration is used. If you try to publish a device telemetry event using MQTT without specifying a Cloud Pub/Sub topic for the device's registry, the connection closes automatically. If you try to do so using an HTTP connection, an error is returned. Corresponds to the JSON property eventNotificationConfigs



476
477
478
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 476

def event_notification_configs
  @event_notification_configs
end

#http_configGoogle::Apis::CloudiotV1::HttpConfig

The configuration of the HTTP bridge for a device registry. Corresponds to the JSON property httpConfig



481
482
483
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 481

def http_config
  @http_config
end

#idString

The identifier of this device registry. For example, myRegistry. Corresponds to the JSON property id

Returns:

  • (String)


486
487
488
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 486

def id
  @id
end

#mqtt_configGoogle::Apis::CloudiotV1::MqttConfig

The configuration of MQTT for a device registry. Corresponds to the JSON property mqttConfig



491
492
493
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 491

def mqtt_config
  @mqtt_config
end

#nameString

The resource path name. For example, projects/example-project/locations/us-central1/registries/my-registry. Corresponds to the JSON property name

Returns:

  • (String)


497
498
499
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 497

def name
  @name
end

#state_notification_configGoogle::Apis::CloudiotV1::StateNotificationConfig

The configuration for notification of new states received from the device. Corresponds to the JSON property stateNotificationConfig



502
503
504
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 502

def state_notification_config
  @state_notification_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



509
510
511
512
513
514
515
516
517
# File 'generated/google/apis/cloudiot_v1/classes.rb', line 509

def update!(**args)
  @credentials = args[:credentials] if args.key?(:credentials)
  @event_notification_configs = args[:event_notification_configs] if args.key?(:event_notification_configs)
  @http_config = args[:http_config] if args.key?(:http_config)
  @id = args[:id] if args.key?(:id)
  @mqtt_config = args[:mqtt_config] if args.key?(:mqtt_config)
  @name = args[:name] if args.key?(:name)
  @state_notification_config = args[:state_notification_config] if args.key?(:state_notification_config)
end