共用方式為


Twin 類別

裝置或模組的狀態資訊。 這會在IoT 中樞中建立或刪除對應的裝置/模組身分識別時隱含建立和刪除。

繼承
Twin

建構函式

Twin(*, device_id: str = None, module_id: str = None, tags=None, properties=None, etag: str = None, version: int = None, device_etag: str = None, status=None, status_reason: str = None, status_update_time=None, connection_state=None, last_activity_time=None, cloud_to_device_message_count: int = None, authentication_type=None, x509_thumbprint=None, capabilities=None, device_scope: str = None, parent_scopes=None, **kwargs)

參數

device_id
str
必要

IoT 中樞身分識別登錄中裝置的唯一識別碼。 這是區分大小寫的字串 (最多 128 個字元的 ASCII 7 位英數位元字元) , 和下列特殊字元 {'-'、':'、'.'、'+'、'%'、'_'、'#'、'*'、'?'、'!'、' ('、') '、'、'@'、'='、'@'、';'、'$'、'''}。

module_id
str
必要

IoT 中樞身分識別登錄中模組的唯一識別碼。 這是區分大小寫的字串 (最多 128 個字元的 ASCII 7 位英數位元字元) , 和下列特殊字元 {'-'、':'、'.'、'+'、'%'、'_'、'#'、'*'、'?'、'!'、' ('、') '、'、'@'、'='、'@'、';'、'$'、'''}。

tags
dict[str, object]
必要

由解決方案後端讀取和寫入索引鍵/值組的集合。 裝置應用程式看不到它們。 這些金鑰的長度為 UTF-8 編碼、區分大小寫且長度上限為 1 KB。 允許的字元排除 UNICODE 控制字元 (區段 C0 和 C1) 、'.'、'$' 和空格。 這些值為 JSON 物件,長度上限為 4KB。

properties
TwinProperties
必要

對應項的所需和報告屬性。

etag
str
必要

字串,表示裝置對應項的 ETag,根據 RFC7232。

version
<xref:long>
必要

裝置對應項的版本,包括標籤和所需屬性

device_etag
str
必要

根據 RFC7232 代表裝置 ETag 的字串。

status
str 或 <xref:protocol.models.enum>
必要

裝置的啟用狀態。 如果停用,裝置就無法連線到服務。 可能的值包括:'enabled'、'disabled'

status_reason
str
必要

裝置目前狀態的原因,如果有的話。

status_update_time
datetime
必要

上次更新裝置狀態的日期和時間。

connection_state
str 或 <xref:protocol.models.enum>
必要

裝置的線上狀態。 可能的值包括:'Disconnected'、'Connected'

last_activity_time
datetime
必要

裝置上次連線或接收或傳送訊息的日期和時間。 日期和時間是以 UTC 格式的 ISO8601 日期時間格式分隔,例如 2015-01-28T16:24:48.789Z。 如果裝置使用 HTTP/1 通訊協定來執行傳訊作業,則不會更新此值。

cloud_to_device_message_count
int
必要

傳送的雲端到裝置訊息數目。

authentication_type
str 或 <xref:protocol.models.enum>
必要

裝置所使用的驗證類型。 可能的值包括:'sas'、'selfSigned'、'certificateAuthority'、'none'

x509_thumbprint
X509Thumbprint
必要

裝置的 X509 指紋。

capabilities
DeviceCapabilities
必要
device_scope
str
必要

裝置的範圍。

parent_scopes
list[str]
必要

如果適用,則為上層邊緣裝置的範圍。 僅適用于邊緣裝置。

方法

as_dict

使用 json.dump 傳回可以是 JSONify 的聽寫。

進階用法可以選擇性地使用回呼作為參數:

索引鍵是 Python 中使用的屬性名稱。 Attr_desc是中繼資料的聽寫。 目前包含具有 msrest 類型的 'type',以及具有 RestAPI 編碼金鑰的 'key'。 Value 是這個 物件中的目前值。

傳回的字串將用來序列化索引鍵。 如果傳回類型是清單,則會將此視為階層式結果聽寫。

請參閱此檔案中的三個範例:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

如果您想要 XML 序列化,您可以傳遞 kwargs is_xml=True。

deserialize

使用 RestAPI 語法剖析 str 並傳回模型。

enable_additional_properties_sending
from_dict

使用指定的金鑰擷取器剖析聽寫會傳回模型。

根據預設,請考慮金鑰擷取器 (rest_key_case_insensitive_extractor、attribute_key_case_insensitive_extractor和last_rest_key_case_insensitive_extractor)

is_xml_model
serialize

傳回會從此模型傳送至 Azure 的 JSON。

這是 as_dict (full_restapi_key_transformer別名,keep_readonly=False)

如果您想要 XML 序列化,您可以傳遞 kwargs is_xml=True。

validate

以遞迴方式驗證此模型,並傳回 ValidationError 的清單。

as_dict

使用 json.dump 傳回可以是 JSONify 的聽寫。

進階用法可以選擇性地使用回呼作為參數:

索引鍵是 Python 中使用的屬性名稱。 Attr_desc是中繼資料的聽寫。 目前包含具有 msrest 類型的 'type',以及具有 RestAPI 編碼金鑰的 'key'。 Value 是這個 物件中的目前值。

傳回的字串將用來序列化索引鍵。 如果傳回類型是清單,則會將此視為階層式結果聽寫。

請參閱此檔案中的三個範例:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

如果您想要 XML 序列化,您可以傳遞 kwargs is_xml=True。

as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>, **kwargs)

參數

key_transformer
<xref:function>

金鑰轉換器函式。

keep_readonly
預設值: True

傳回

與聽寫 JSON 相容的物件

傳回類型

deserialize

使用 RestAPI 語法剖析 str 並傳回模型。

deserialize(data, content_type=None)

參數

data
str
必要

使用 RestAPI 結構的 str。 JSON 預設為 。

content_type
str
預設值: None

JSON 預設會設定 application/xml if XML。

傳回

此模型的實例

例外狀況

DeserializationError if something went wrong

enable_additional_properties_sending

enable_additional_properties_sending()

from_dict

使用指定的金鑰擷取器剖析聽寫會傳回模型。

根據預設,請考慮金鑰擷取器 (rest_key_case_insensitive_extractor、attribute_key_case_insensitive_extractor和last_rest_key_case_insensitive_extractor)

from_dict(data, key_extractors=None, content_type=None)

參數

data
dict
必要

使用 RestAPI 結構的聽寫

content_type
str
預設值: None

JSON 預設會設定 application/xml if XML。

key_extractors
預設值: None

傳回

此模型的實例

例外狀況

DeserializationError if something went wrong

is_xml_model

is_xml_model()

serialize

傳回會從此模型傳送至 Azure 的 JSON。

這是 as_dict (full_restapi_key_transformer別名,keep_readonly=False)

如果您想要 XML 序列化,您可以傳遞 kwargs is_xml=True。

serialize(keep_readonly=False, **kwargs)

參數

keep_readonly
bool
預設值: False

如果您想要序列化唯讀屬性

傳回

與聽寫 JSON 相容的物件

傳回類型

validate

以遞迴方式驗證此模型,並傳回 ValidationError 的清單。

validate()

傳回

驗證錯誤清單

傳回類型