Device Class

Device.

Inheritance
Device

Constructor

Device(*, device_id: Optional[str] = None, generation_id: Optional[str] = None, etag: Optional[str] = None, connection_state=None, status=None, status_reason: Optional[str] = None, connection_state_updated_time=None, status_updated_time=None, last_activity_time=None, cloud_to_device_message_count: Optional[int] = None, authentication=None, capabilities=None, device_scope: Optional[str] = None, parent_scopes=None, **kwargs)

Parameters

device_id
str
Required

The unique identifier of the device.

generation_id
str
Required

The IoT Hub-generated, case-sensitive string up to 128 characters long. This value is used to distinguish devices with the same deviceId, when they have been deleted and re-created.

etag
str
Required

The string representing a weak ETag for the device identity, as per RFC7232.

connection_state
str or <xref:protocol.models.enum>
Required

The state of the device. Possible values include: 'Disconnected', 'Connected'

status
str or <xref:protocol.models.enum>
Required

The status of the device. If the status disabled, a device cannot connect to the service. Possible values include: 'enabled', 'disabled'

status_reason
str
Required

The 128 character-long string that stores the reason for the device identity status. All UTF-8 characters are allowed.

connection_state_updated_time
datetime
Required

The date and time the connection state was last updated.

status_updated_time
datetime
Required

The date and time when the status field was last updated.

last_activity_time
datetime
Required

The date and last time the device last connected, received, or sent a message.

cloud_to_device_message_count
int
Required

The number of cloud-to-device messages currently queued to be sent to the device.

authentication
AuthenticationMechanism
Required

The authentication mechanism used by the device.

capabilities
DeviceCapabilities
Required

The set of capabilities of the device. For example, if this device is an edge device or not.

device_scope
str
Required

The scope of the device. Auto generated and immutable for edge devices and modifiable in leaf devices to create child/parent relationship.

parent_scopes
list[str]
Required

The scopes of the upper level edge devices if applicable. Only available for edge devices.