IoTHubDeviceClient Třída
Asynchronní klient zařízení, který se připojuje k instanci Azure IoT Hub.
Inicializátor pro IoTHubDeviceClient.
Tento inicializátor by neměl být volána přímo. Místo toho použijte k vytvoření instance jednu z>> metod třídy "create_from_<<".
- Dědičnost
-
azure.iot.device.iothub.aio.async_clients.GenericIoTHubClientIoTHubDeviceClientazure.iot.device.iothub.abstract_clients.AbstractIoTHubDeviceClientIoTHubDeviceClient
Konstruktor
IoTHubDeviceClient(mqtt_pipeline, http_pipeline)
Parametry
- mqtt_pipeline
- <xref:azure.iot.device.iothub.pipeline.MQTTPipeline>
Kanál použitý k připojení ke koncovému bodu IoTHubu
- http_pipeline
Metody
connect |
Připojí klienta k instanci Azure IoT Hub nebo azure IoT Edge Hub. Cíl je zvolen na základě přihlašovacích údajů předaných prostřednictvím parametru auth_provider, který byl poskytnut při inicializaci tohoto objektu. |
create_from_connection_string |
Vytvořte instanci klienta ze zařízení IoTHub nebo připojovacího řetězce modulu. |
create_from_sastoken |
Vytvoření instance klienta z předem vytvořeného řetězce tokenu SAS |
create_from_symmetric_key |
Vytvořte instanci klienta pomocí ověřování symetrickým klíčem. |
create_from_x509_certificate |
Vytvořte instanci klienta pomocí ověřování certifikátu X509. |
disconnect |
Odpojte klienta od instance Azure IoT Hub nebo Azure IoT Edge Hub. Po úplném dokončení práce s instancí klienta se doporučuje, abyste tuto korutinu zavolali. |
get_storage_info_for_blob |
Odešle požadavek POST prostřednictvím protokolu HTTP do koncového bodu IoTHubu, který vrátí informace pro nahrání prostřednictvím účtu služby Azure Storage propojeného s IoTHubem, ke kterému je vaše zařízení připojené. |
get_twin |
Získá dvojče zařízení nebo modulu ze služby Azure IoT Hub nebo Azure IoT Edge Hub. |
notify_blob_upload_status |
Po dokončení nahrávání zařízení odešle do koncového bodu IoT Hub požadavek POST s informacemi o stavu pokusu o nahrání do objektu blob. Používají ho IoT Hub k upozornění naslouchajícím klientům. |
patch_twin_reported_properties |
Aktualizujte ohlášené vlastnosti pomocí služby Azure IoT Hub nebo Azure IoT Edge Hub. Pokud služba vrátí chybu při operaci opravy, vyvolá tato funkce příslušnou chybu. |
receive_message |
Přijmout zprávu, která byla odeslána z Azure IoT Hub. Pokud ještě není k dispozici žádná zpráva, počká, až bude položka k dispozici. Zastaralé od verze 2.3.0: K nastavení obslužné rutiny doporučujeme použít vlastnost .on_message_received. |
receive_method_request |
Prostřednictvím Azure IoT Hub nebo Azure IoT Edge Hubu obdržíte žádost o metodu. Pokud ještě není k dispozici žádný požadavek metody, počká, dokud nebude k dispozici. Zastaralé od verze 2.3.0: K nastavení obslužné rutiny doporučujeme použít vlastnost .on_method_request_received. |
receive_twin_desired_properties_patch |
Získejte opravu požadované vlastnosti prostřednictvím Azure IoT Hub nebo Azure IoT Edge Hubu. Pokud ještě není k dispozici žádný požadavek metody, počká, dokud nebude k dispozici. Zastaralé od verze 2.3.0: K nastavení obslužné rutiny doporučujeme použít vlastnost .on_twin_desired_properties_patch_received. |
send_message |
Odešle zprávu do výchozího koncového bodu událostí v instanci Azure IoT Hub nebo Azure IoT Edge Hub. Pokud připojení ke službě nebylo dříve otevřeno voláním pro připojení, tato funkce otevře připojení před odesláním události. |
send_method_response |
Odeslání odpovědi na požadavek metody prostřednictvím Azure IoT Hub nebo Azure IoT Edge Hubu Pokud připojení ke službě nebylo dříve otevřeno voláním pro připojení, tato funkce otevře připojení před odesláním události. |
shutdown |
Vypněte klienta pro řádné ukončení. Po volání této metody budou mít všechny pokusy o další volání klienta za následek vyvolání ClientError. |
update_sastoken |
Aktualizujte token SAS klienta, který se používá k ověřování, a pak připojení znovu autorizuje. Toto rozhraní API je možné použít pouze v případě, že byl klient původně vytvořen pomocí tokenu SAS. |
connect
Připojí klienta k instanci Azure IoT Hub nebo azure IoT Edge Hub.
Cíl je zvolen na základě přihlašovacích údajů předaných prostřednictvím parametru auth_provider, který byl poskytnut při inicializaci tohoto objektu.
async connect()
Výjimky
pokud jsou přihlašovací údaje neplatné a nelze navázat připojení.
pokud vytvoření připojení způsobí selhání.
pokud během provádění dojde ke ztrátě připojení.
pokud vyprší časový limit připojení.
pokud během provádění dojde k neočekávanému selhání.
create_from_connection_string
Vytvořte instanci klienta ze zařízení IoTHub nebo připojovacího řetězce modulu.
create_from_connection_string(connection_string, **kwargs)
Parametry
- server_verification_cert
- str
Možnost konfigurace. Řetěz důvěryhodných certifikátů. Je to nezbytné při připojování ke koncovému bodu, který má nestandardní kořen důvěryhodnosti, například bránu protokolu.
- websockets
- bool
Možnost konfigurace. Výchozí hodnota je False. Pokud používáte MQTT přes websockety, nastavte na hodnotu true.
Možnost konfigurace. Šifrovací sady pro PROTOKOL TLS/SSL jako řetězec ve formátu seznamu šifer OpenSSL nebo jako seznam řetězců šifrovací sady.
- product_info
- str
Možnost konfigurace. Výchozí hodnota je prázdný řetězec. Řetězec obsahuje informace o libovolném produktu, které jsou připojeny k řetězci uživatelského agenta.
- sastoken_ttl
- int
Doba života (v sekundách) vytvořeného Objektu SasToken použitého k ověřování Výchozí hodnota je 3600 sekund (1 hodina).
- keep_alive
- int
Maximální doba v sekundách mezi komunikací se zprostředkovatelem. Pokud se nevyměňují žádné další zprávy, určuje rychlost, s jakou klient bude zprostředkovateli odesílat zprávy ping. Pokud nezadáte výchozí hodnotu 60 sekund, použije se.
- auto_connect
- bool
Automaticky připojit klienta k IoTHubu při vyvolání metody, která vyžaduje navázání připojení. (Výchozí: True)
- connection_retry_interval
- int
Interval v sekundách mezi pokusy o opětovné navázání ukončeného připojení (výchozí hodnota: 10)
- ensure_desired_properties
- bool
Ujistěte se, že při opětovném připojení byla přijata nejnovější oprava požadovaných vlastností (Výchozí:Pravda).
Návraty
Instance klienta IoTHubu, který k ověřování používá připojovací řetězec.
Výjimky
create_from_sastoken
Vytvoření instance klienta z předem vytvořeného řetězce tokenu SAS
create_from_sastoken(sastoken, **kwargs)
Parametry
- server_verification_cert
- str
Možnost konfigurace. Řetěz důvěryhodných certifikátů. Je to nezbytné při připojování ke koncovému bodu, který má nestandardní kořen důvěryhodnosti, například bránu protokolu.
- websockets
- bool
Možnost konfigurace. Výchozí hodnota je False. Pokud používáte MQTT přes websockety, nastavte na hodnotu true.
Možnost konfigurace. Šifrovací sady pro PROTOKOL TLS/SSL jako řetězec ve formátu seznamu šifer OpenSSL nebo jako seznam řetězců šifrovací sady.
- product_info
- str
Možnost konfigurace. Výchozí hodnota je prázdný řetězec. Řetězec obsahuje informace o libovolném produktu, které jsou připojeny k řetězci uživatelského agenta.
- keep_alive
- int
Maximální doba v sekundách mezi komunikací se zprostředkovatelem. Pokud se nevyměňují žádné další zprávy, určuje rychlost, s jakou klient bude zprostředkovateli odesílat zprávy ping. Pokud nezadáte výchozí hodnotu 60 sekund, použije se.
- auto_connect
- bool
Automaticky připojit klienta k IoTHubu při vyvolání metody, která vyžaduje navázání připojení. (Výchozí: True)
- connection_retry_interval
- int
Interval v sekundách mezi pokusy o opětovné navázání ukončeného připojení (výchozí hodnota: 10)
- ensure_desired_properties
- bool
Ujistěte se, že při opětovném připojení byla přijata nejnovější oprava požadovaných vlastností (Výchozí:Pravda).
Výjimky
create_from_symmetric_key
Vytvořte instanci klienta pomocí ověřování symetrickým klíčem.
create_from_symmetric_key(symmetric_key, hostname, device_id, **kwargs)
Parametry
- symmetric_key
Symetrický klíč.
- hostname
- str
Hostitel, na kterém běží IotHub. Najdete ho v Azure Portal na kartě Přehled jako název hostitele řetězce.
- device_id
ID zařízení
- server_verification_cert
- str
Možnost konfigurace. Řetěz důvěryhodných certifikátů. Je to nezbytné při připojování ke koncovému bodu, který má nestandardní kořen důvěryhodnosti, například bránu protokolu.
- websockets
- bool
Možnost konfigurace. Výchozí hodnota je False. Pokud používáte MQTT přes websockety, nastavte hodnotu true.
Možnost konfigurace. Šifrovací sady pro TLS/SSL jako řetězec ve formátu seznamu šifer OpenSSL nebo jako seznam řetězců šifrovací sady.
- product_info
- str
Možnost konfigurace. Výchozí hodnota je prázdný řetězec. Řetězec obsahuje informace o libovolném produktu, které jsou připojeny k řetězci uživatelského agenta.
- sastoken_ttl
- int
Hodnota TTL (v sekundách) vytvořeného tokenu SasToken použitého k ověřování. Výchozí hodnota je 3600 sekund (1 hodina)
- keep_alive
- int
Maximální doba v sekundách mezi komunikací se zprostředkovatelem. Pokud se nevyměňují žádné další zprávy, určuje se rychlost, s jakou klient bude zprostředkovateli odesílat zprávy ping. Pokud není zadána výchozí hodnota 60 sekund, použije se.
- auto_connect
- bool
Automaticky připojit klienta k IoTHubu při vyvolání metody, která vyžaduje navázání připojení. (Výchozí: True)
- connection_retry
- bool
Pokus o opětovné navázání ukončeného připojení (výchozí hodnota: Pravda)
- connection_retry_interval
- int
Interval v sekundách mezi pokusy o opětovné navázání ukončeného připojení (výchozí hodnota: 10)
- ensure_desired_properties
- bool
Ujistěte se, že při opětovném připojení byla přijata nejnovější oprava požadovaných vlastností (Výchozí:Pravda).
Návraty
Instance klienta IoTHub, který k ověřování používá symetrický klíč.
Výjimky
create_from_x509_certificate
Vytvořte instanci klienta pomocí ověřování certifikátu X509.
create_from_x509_certificate(x509, hostname, device_id, **kwargs)
Parametry
- hostname
- str
Hostitel se spuštěným IotHubem Najdete ji v Azure Portal na kartě Přehled jako název hostitele řetězce.
- x509
- X509
Úplný objekt certifikátu x509. Pokud chcete použít certifikát, musí objekt zápisu obsahovat certifikát (buď kořenový certifikát, nebo jeden z certifikátů zprostředkující certifikační autority). Pokud certifikát pochází ze souboru CER, musí být zakódovaný jako base64.
- server_verification_cert
- str
Možnost konfigurace. Řetěz důvěryhodných certifikátů. Nezbytné při připojování ke koncovému bodu, který má nestandardní kořen důvěryhodnosti, například bránu protokolu.
- websockets
- bool
Možnost konfigurace. Výchozí hodnota je False. Pokud používáte MQTT přes websockety, nastavte hodnotu true.
Možnost konfigurace. Šifrovací sady pro TLS/SSL jako řetězec ve formátu seznamu šifer OpenSSL nebo jako seznam řetězců šifrovací sady.
- product_info
- str
Možnost konfigurace. Výchozí hodnota je prázdný řetězec. Řetězec obsahuje informace o libovolném produktu, které jsou připojeny k řetězci uživatelského agenta.
- keep_alive
- int
Maximální doba v sekundách mezi komunikací se zprostředkovatelem. Pokud se nevyměňují žádné další zprávy, určuje se rychlost, s jakou klient bude zprostředkovateli odesílat zprávy ping. Pokud není zadána výchozí hodnota 60 sekund, použije se.
- auto_connect
- bool
Automaticky připojit klienta k IoTHubu při vyvolání metody, která vyžaduje navázání připojení. (Výchozí: True)
- connection_retry
- bool
Pokus o opětovné navázání ukončeného připojení (výchozí hodnota: Pravda)
- connection_retry_interval
- int
Interval v sekundách mezi pokusy o opětovné navázání ukončeného připojení (výchozí hodnota: 10)
- ensure_desired_properties
- bool
Ujistěte se, že při opětovném připojení byla přijata nejnovější oprava požadovaných vlastností (Výchozí:Pravda).
Návraty
Instance klienta IoTHub, který k ověřování používá certifikát X509.
Výjimky
disconnect
Odpojte klienta od instance Azure IoT Hub nebo Azure IoT Edge Hub.
Po úplném dokončení práce s instancí klienta se doporučuje, abyste tuto korutinu zavolali.
async disconnect()
Výjimky
pokud během provádění dojde k neočekávanému selhání.
get_storage_info_for_blob
Odešle požadavek POST prostřednictvím protokolu HTTP do koncového bodu IoTHubu, který vrátí informace pro nahrání prostřednictvím účtu služby Azure Storage propojeného s IoTHubem, ke kterému je vaše zařízení připojené.
async get_storage_info_for_blob(blob_name)
Parametry
- blob_name
- str
Název objektu blob v řetězcovém formátu, který se nahraje pomocí rozhraní API úložiště. Tento název se použije k vygenerování správných přihlašovacích údajů pro službu Storage a musí odpovídat tomu, co se použije se sadou SDK služby Azure Storage k nahrání objektu blob.
Návraty
Objekt podobný formátu JSON (slovník) z IoT Hub, který bude obsahovat relevantní informace, včetně: correlationId, hostName, containerName, blobName, sasToken.
Výjimky
pokud jsou přihlašovací údaje neplatné a nelze navázat připojení.
pokud vytvoření připojení způsobí selhání.
pokud během provádění dojde ke ztrátě připojení.
pokud vyprší časový limit připojení.
pokud během provádění dojde k neočekávanému selhání.
get_twin
Získá dvojče zařízení nebo modulu ze služby Azure IoT Hub nebo Azure IoT Edge Hub.
async get_twin()
Návraty
Kompletní dvojče jako diktování JSON
Návratový typ
Výjimky
pokud jsou přihlašovací údaje neplatné a nelze navázat připojení.
pokud při navazování připojení dojde k selhání.
pokud během provádění dojde ke ztrátě připojení.
pokud vyprší časový limit pokusu o připojení
pokud klient není připojený (a není povolené žádné automatické připojení),
pokud během provádění dojde k neočekávanému selhání.
notify_blob_upload_status
Po dokončení nahrávání zařízení odešle do koncového bodu IoT Hub požadavek POST s informacemi o stavu pokusu o nahrání do objektu blob. Používají ho IoT Hub k upozornění naslouchajícím klientům.
async notify_blob_upload_status(correlation_id, is_success, status_code, status_description)
Parametry
Výjimky
pokud jsou přihlašovací údaje neplatné a nelze navázat připojení.
pokud vytvoření připojení způsobí selhání.
pokud během provádění dojde ke ztrátě připojení.
pokud vyprší časový limit připojení.
pokud během provádění dojde k neočekávanému selhání.
patch_twin_reported_properties
Aktualizujte ohlášené vlastnosti pomocí služby Azure IoT Hub nebo Azure IoT Edge Hub.
Pokud služba vrátí chybu při operaci opravy, vyvolá tato funkce příslušnou chybu.
async patch_twin_reported_properties(reported_properties_patch)
Parametry
Výjimky
pokud jsou přihlašovací údaje neplatné a nelze navázat připojení.
pokud při navazování připojení dojde k selhání.
pokud během provádění dojde ke ztrátě připojení.
pokud vyprší časový limit pokusu o připojení
pokud klient není připojený (a není povolené žádné automatické připojení),
pokud během provádění dojde k neočekávanému selhání.
receive_message
Přijmout zprávu, která byla odeslána z Azure IoT Hub.
Pokud ještě není k dispozici žádná zpráva, počká, až bude položka k dispozici.
Zastaralé od verze 2.3.0: K nastavení obslužné rutiny doporučujeme použít vlastnost .on_message_received.
receive_message()
Návraty
Zpráva odeslaná z Azure IoT Hub
Návratový typ
Výjimky
pokud jsou přihlašovací údaje neplatné a nelze navázat připojení.
pokud vytvoření připojení způsobí selhání.
pokud během provádění dojde ke ztrátě připojení.
pokud vyprší časový limit připojení.
pokud během provádění dojde k neočekávanému selhání.
receive_method_request
Prostřednictvím Azure IoT Hub nebo Azure IoT Edge Hubu obdržíte žádost o metodu.
Pokud ještě není k dispozici žádný požadavek metody, počká, dokud nebude k dispozici.
Zastaralé od verze 2.3.0: K nastavení obslužné rutiny doporučujeme použít vlastnost .on_method_request_received.
receive_method_request(method_name=None)
Parametry
- method_name
- str
Volitelně zadejte název metody, pro kterou se mají požadavky přijímat. Pokud tento parametr není zadán, budou přijaty všechny metody, které ještě nejsou specificky zacíleny jiným voláním receive_method.
Návraty
MethodRequest Objekt představující přijatý požadavek metody.
Návratový typ
Výjimky
pokud jsou přihlašovací údaje neplatné a nelze navázat připojení.
pokud vytvoření připojení způsobí selhání.
pokud během provádění dojde ke ztrátě připojení.
pokud vyprší časový limit připojení.
pokud během provádění dojde k neočekávanému selhání.
receive_twin_desired_properties_patch
Získejte opravu požadované vlastnosti prostřednictvím Azure IoT Hub nebo Azure IoT Edge Hubu.
Pokud ještě není k dispozici žádný požadavek metody, počká, dokud nebude k dispozici.
Zastaralé od verze 2.3.0: K nastavení obslužné rutiny doporučujeme použít vlastnost .on_twin_desired_properties_patch_received.
receive_twin_desired_properties_patch()
Návraty
Oprava požadovaných vlastností dvojčete ve formátu diktování JSON
Návratový typ
Výjimky
pokud jsou přihlašovací údaje neplatné a nelze navázat připojení.
pokud vytvoření připojení způsobí selhání.
pokud během provádění dojde ke ztrátě připojení.
pokud vyprší časový limit připojení.
pokud během provádění dojde k neočekávanému selhání.
send_message
Odešle zprávu do výchozího koncového bodu událostí v instanci Azure IoT Hub nebo Azure IoT Edge Hub.
Pokud připojení ke službě nebylo dříve otevřeno voláním pro připojení, tato funkce otevře připojení před odesláním události.
async send_message(message)
Parametry
- message
- Message
Skutečná zpráva, která se má odeslat. Vše, co bylo předáno, které není instancí Třídy Message bude převedeno na Message objekt.
Výjimky
pokud jsou přihlašovací údaje neplatné a nelze navázat připojení.
pokud při navazování připojení dojde k selhání.
pokud během provádění dojde ke ztrátě připojení.
pokud vyprší časový limit pokusu o připojení
pokud klient není připojený (a není povolené žádné automatické připojení),
pokud během provádění dojde k neočekávanému selhání.
send_method_response
Odeslání odpovědi na požadavek metody prostřednictvím Azure IoT Hub nebo Azure IoT Edge Hubu
Pokud připojení ke službě nebylo dříve otevřeno voláním pro připojení, tato funkce otevře připojení před odesláním události.
async send_method_response(method_response)
Parametry
Výjimky
pokud jsou přihlašovací údaje neplatné a nelze navázat připojení.
pokud vytvoření připojení způsobí selhání.
pokud během provádění dojde ke ztrátě připojení.
pokud vyprší časový limit pokusu o připojení
pokud klient není připojený (a není povolené žádné automatické připojení)
pokud během provádění dojde k neočekávanému selhání.
shutdown
Vypněte klienta pro řádné ukončení.
Po volání této metody budou mít všechny pokusy o další volání klienta za následek vyvolání ClientError.
async shutdown()
Výjimky
pokud během provádění dojde k neočekávanému selhání.
update_sastoken
Aktualizujte token SAS klienta, který se používá k ověřování, a pak připojení znovu autorizuje.
Toto rozhraní API je možné použít pouze v případě, že byl klient původně vytvořen pomocí tokenu SAS.
async update_sastoken(sastoken)
Parametry
Výjimky
pokud jsou přihlašovací údaje neplatné a připojení nelze znovu navázat.
pokud opětovné navazování připojení způsobí selhání.
pokud během provádění dojde ke ztrátě připojení.
pokud vyprší časový limit pokusu o opětovné ověření.
pokud klient nebyl původně vytvořen s tokenem SAS.
pokud během provádění dojde k neočekávanému selhání.
Atributy
connected
Vlastnost jen pro čtení, která určuje, jestli je přenos připojený nebo ne.
on_background_exception
Funkce obslužné rutiny nebo korutin bude volána, když dojde k výjimce na pozadí.
Definice funkce nebo korutin by měla obsahovat jeden poziční argument (objekt výjimky).
on_connection_state_change
Funkce obslužné rutiny nebo korutin, která bude volána při změně stavu připojení.
Definice funkce nebo korutinu by neměla obsahovat žádné poziční argumenty.
on_message_received
Funkce obslužné rutiny nebo korutin, která bude volána při přijetí zprávy.
Definice funkce nebo korutinu by měla obsahovat jeden poziční argument ( Message objekt).
on_method_request_received
Funkce obslužné rutiny nebo korutin, která bude volána při přijetí požadavku metody.
Nezapomeňte potvrdit požadavek na metodu ve vaší funkci nebo korutin pomocí metody .send_method_response() klienta.
Definice funkce nebo korutinu by měla obsahovat jeden poziční argument ( MethodRequest objekt).
on_new_sastoken_required
Funkce obslužné rutiny nebo korutin, která bude volána, když klient vyžaduje nový token SAS. K tomu dojde přibližně 2 minuty před vypršením platnosti tokenu SAS. Pokud životnost na platformách Windows překročí přibližně 49 dnů, bude se po těchto 49 dnech vyžadovat nový token bez ohledu na to, jak dlouho je životnost SAS.
Všimněte si, že tato obslužná rutina je nutná POUZE při použití klienta vytvořeného prostřednictvím metody .create_from_sastoken().
Nový token lze poskytnout ve vaší funkci nebo korutin pomocí metody .update_sastoken() klienta.
Definice funkce nebo korutinu by neměla obsahovat žádné poziční argumenty.
on_twin_desired_properties_patch_received
Funkce obslužné rutiny nebo korutin, která bude volána při přijetí opravy požadovaných vlastností dvojčete.
Definice funkce nebo korutin by měla obsahovat jeden poziční argument (oprava dvojčete ve formě objektu slovníku JSON).
Azure SDK for Python