Twin class

Um Dispositivo Duplo é um documento que descreve o estado de um dispositivo armazenado por um hub IoT do Azure e que está disponível mesmo que o dispositivo esteja offline. É criado em torno de 3 secções:

  • Etiquetas: pares chave/valor apenas acessíveis a partir do lado do serviço
  • Propriedades Pretendidas: atualizadas por um serviço e recebidas pelo dispositivo
  • Propriedades Reportadas: atualizadas pelo dispositivo e recebidas pelo serviço.

Tenha em atenção que, embora seja uma possibilidade, as propriedades pretendidas e comunicadas não têm de corresponder e que a lógica para sincronizar estas duas coleções, se necessário, é deixada ao utilizador do SDK.

Para obter mais informações, veja Understanding Device Twins (Compreender os Dispositivos Duplos).

A forma recomendada de obter um Twin para um dispositivo específico é utilizar o getTwin(string, HttpResponseCallback<Twin>) método .

Construtores

Twin(string | DeviceIdentity, Registry)

Instancia um novo Twin. A forma recomendada de obter um novo Twin objeto é utilizar o getTwin(string, HttpResponseCallback<Twin>) método .

Propriedades

deviceId

Identificador exclusivo da identidade do dispositivo associado ao duplo, uma vez que existe no registo de identidade do dispositivo.

etag

Etiqueta utilizada na simultaneidade otimista para evitar várias edições paralelas do dispositivo duplo.

modelId

ID do modelo da identidade do dispositivo associada ao duplo, tal como existe no registo de identidade do dispositivo.

moduleId

Identificador de módulo para o módulo associado ao duplo, uma vez que existe no registo de identidade do dispositivo.

properties

As dictionnaries de propriedades pretendidas e comunicadas (respetivamente em properties.desired e properties.reported).

tags

Coleção de pares chave/valor que está disponível apenas no lado do serviço e pode ser utilizada em consultas para localizar dispositivos específicos.

Métodos

get()
get(IncomingMessageCallback<Twin>)

Obtém a versão mais recente deste dispositivo duplo a partir do serviço Hub IoT.

toJSON()
update(any)
update(any, IncomingMessageCallback<Twin>)

Atualize o dispositivo duplo com o patch fornecido como argumento.

Detalhes do Construtor

Twin(string | DeviceIdentity, Registry)

Instancia um novo Twin. A forma recomendada de obter um novo Twin objeto é utilizar o getTwin(string, HttpResponseCallback<Twin>) método .

new Twin(device: string | DeviceIdentity, registryClient: Registry)

Parâmetros

device

string | DeviceIdentity

Uma cadeia de identificador de dispositivo ou um objeto que descreva o dispositivo. Se for um Objeto, tem de conter uma propriedade deviceId.

registryClient
Registry

O cliente de registo HTTP utilizado para executar chamadas à API REST.

Detalhes de Propriedade

deviceId

Identificador exclusivo da identidade do dispositivo associado ao duplo, uma vez que existe no registo de identidade do dispositivo.

deviceId: string

Valor de Propriedade

string

etag

Etiqueta utilizada na simultaneidade otimista para evitar várias edições paralelas do dispositivo duplo.

etag: string

Valor de Propriedade

string

modelId

ID do modelo da identidade do dispositivo associada ao duplo, tal como existe no registo de identidade do dispositivo.

modelId?: string

Valor de Propriedade

string

moduleId

Identificador de módulo para o módulo associado ao duplo, uma vez que existe no registo de identidade do dispositivo.

moduleId?: string

Valor de Propriedade

string

properties

As dictionnaries de propriedades pretendidas e comunicadas (respetivamente em properties.desired e properties.reported).

properties: { desired: {[key: string]: any}, reported: {[key: string]: any} }

Valor de Propriedade

{ desired: {[key: string]: any}, reported: {[key: string]: any} }

tags

Coleção de pares chave/valor que está disponível apenas no lado do serviço e pode ser utilizada em consultas para localizar dispositivos específicos.

tags: {[key: string]: string}

Valor de Propriedade

{[key: string]: string}

Detalhes de Método

get()

function get(): Promise<ResultWithIncomingMessage<Twin>>

Devoluções

Promise<ResultWithIncomingMessage<Twin>>

get(IncomingMessageCallback<Twin>)

Obtém a versão mais recente deste dispositivo duplo a partir do serviço Hub IoT.

function get(done?: IncomingMessageCallback<Twin>)

Parâmetros

done

IncomingMessageCallback<Twin>

A função opcional a chamar quando a operação estiver concluída. done será chamado com três argumentos: um objeto de Erro (pode ser nulo), um objeto Duplo que representa a identidade do dispositivo criada e um objeto de resposta específico do transporte útil para o registo ou depuração.

toJSON()

function toJSON(): object

Devoluções

object

update(any)

function update(patch: any): Promise<ResultWithIncomingMessage<Twin>>

Parâmetros

patch

any

Devoluções

Promise<ResultWithIncomingMessage<Twin>>

update(any, IncomingMessageCallback<Twin>)

Atualize o dispositivo duplo com o patch fornecido como argumento.

function update(patch: any, done?: IncomingMessageCallback<Twin>)

Parâmetros

patch

any

Objeto que contém os novos valores a aplicar a este dispositivo duplo.

done

IncomingMessageCallback<Twin>

A função opcional a chamar quando a operação estiver concluída. done será chamado com três argumentos: um objeto de Erro (pode ser nulo), um objeto Duplo que representa a identidade do dispositivo criada e um objeto de resposta específico do transporte útil para o registo ou depuração.