azext_iot/sdk/iothub/service/models/module_py3.py (28 lines of code) (raw):

# coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for # license information. # # Code generated by Microsoft (R) AutoRest Code Generator. # Changes may cause incorrect behavior and will be lost if the code is # regenerated. # -------------------------------------------------------------------------- from msrest.serialization import Model class Module(Model): """The module identity on a device. :param module_id: The unique identifier of the module. :type module_id: str :param managed_by: Identifies who manages this module. For instance, this value is \\"IotEdge\\" if the edge runtime owns this module. :type managed_by: str :param device_id: The unique identifier of the device. :type device_id: str :param generation_id: The IoT Hub generated, case-sensitive string up to 128 characters long. This value is used to distinguish modules with the same moduleId, when they have been deleted and re-created. :type generation_id: str :param etag: The string representing a weak ETag for the module identity, as per RFC7232. :type etag: str :param connection_state: The connection state of the device. Possible values include: 'Disconnected', 'Connected' :type connection_state: str or ~service.models.enum :param connection_state_updated_time: The date and time the connection state was last updated. :type connection_state_updated_time: datetime :param last_activity_time: The date and time the device last connected, received, or sent a message. :type last_activity_time: datetime :param cloud_to_device_message_count: The number of cloud-to-module messages currently queued to be sent to the module. :type cloud_to_device_message_count: int :param authentication: The authentication mechanism used by the module when connecting to the service and edge hub. :type authentication: ~service.models.AuthenticationMechanism :param attributes: The collection of key-value pairs read and written by the solution back end. They are not visible to device apps. They keys are UTF-8 encoded, case-sensitive and up-to 1KB in length. Allowed characters exclude UNICODE control characters (segments C0 and C1), '.', '$' and space. The values are string, boolean, integer or array. :type attributes: dict[str, object] """ _attribute_map = { 'module_id': {'key': 'moduleId', 'type': 'str'}, 'managed_by': {'key': 'managedBy', 'type': 'str'}, 'device_id': {'key': 'deviceId', 'type': 'str'}, 'generation_id': {'key': 'generationId', 'type': 'str'}, 'etag': {'key': 'etag', 'type': 'str'}, 'connection_state': {'key': 'connectionState', 'type': 'str'}, 'connection_state_updated_time': {'key': 'connectionStateUpdatedTime', 'type': 'iso-8601'}, 'last_activity_time': {'key': 'lastActivityTime', 'type': 'iso-8601'}, 'cloud_to_device_message_count': {'key': 'cloudToDeviceMessageCount', 'type': 'int'}, 'authentication': {'key': 'authentication', 'type': 'AuthenticationMechanism'}, 'attributes': {'key': 'attributes', 'type': '{object}'}, } def __init__(self, *, module_id: str=None, managed_by: str=None, device_id: str=None, generation_id: str=None, etag: str=None, connection_state=None, connection_state_updated_time=None, last_activity_time=None, cloud_to_device_message_count: int=None, authentication=None, attributes=None, **kwargs) -> None: super(Module, self).__init__(**kwargs) self.module_id = module_id self.managed_by = managed_by self.device_id = device_id self.generation_id = generation_id self.etag = etag self.connection_state = connection_state self.connection_state_updated_time = connection_state_updated_time self.last_activity_time = last_activity_time self.cloud_to_device_message_count = cloud_to_device_message_count self.authentication = authentication self.attributes = attributes