Erweiterte Konfigurationen und Integrationen > Azure IoT Hub-Daten als Eigenschaftswerte in einem Asset anzeigen
Azure IoT Hub-Daten als Eigenschaftswerte in einem Asset anzeigen
Azure IoT Hub-Daten können mit ThingWorx Composer als Eigenschaftswerte in einem Asset angezeigt werden.
Voraussetzungen
Mindestens Java Runtime Environment (JRE) 1.8.
ThingWorx Composer 8.3.0 oder höher mit installierten ThingWorx Apps.
Azure IoT-Konnektorerweiterung, die auf ThingWorx installiert ist.
Laden Sie die Erweiterung vom PTC Marketplace herunter.
Weitere Informationen finden Sie im Hilfe-Center für ThingWorx Azure IoT Hub Konnektor.
Azure IoT Hub ist installiert.
Ein ThingWorx Anwendungsschlüssel für den ThingWorx Azure IoT Hub-Konnektor wurde erstellt, z.B. azure_appkey.
So zeigen Sie Azure IoT Hub-Daten für Asset-Eigenschaften an:
* 
Um ein Azure IoT Hub-Ding in ThingWorx Apps als Asset anzuzeigen, ohne dass Azure IoT Hub-Daten über die allgemeine Komponente der Tag-Auswahl durchsucht werden können, müssen Sie nur dem Ding die in Schritt 3 aufgelisteten Werte für Implementierte Formen hinzufügen und können den Rest des folgenden Vorgangs überspringen.
1. Erstellen Sie in ThingWorx Composer eine neue Ressourcen-Anbieter-Dingvorlage, um die Azure IoT Hub-Verbindung zur Dropdown-Liste Anlagentyp in der allgemeinen Komponente für die Tag-Auswahl hinzuzufügen:
Name – Der Name für die Dingvorlage, z.B. AzureIot_ResourceProvider_ThingTemplate.
Basis-DingvorlagePTC.SCA.SCO.EquipmentResourceProviderTemplate
Implementierte FormenPTC.SCA.SCO.RemoteConnectionResourceProviderThingShape
Klicken Sie unter Dienste auf , um den Dienst GetConnectedServers mit folgendem Code zu überschreiben. (Dem nachfolgenden Code wurden zu Darstellungszwecken Zeilenumbrüche und Leerzeichen hinzugefügt. Wenn Sie den Code ausschneiden und einfügen, entfernen Sie diese Zeichen, bevor Sie ihn in Ihrer Anwendung verwenden.)
var params = {
infoTableName : "InfoTable",
dataShapeName : "PTC.Factory.OPCDAServerNames"
};
var infoTableWithName = Resources["InfoTableFunctions"].CreateInfoTableFromDataShape(params);


var params = {
columnName: "ResourceProviderName",
value: me.name
};

// result: INFOTABLE dataShape: PTC.SCA.SCO.RemoteConnectionSettingsTableDataShape
var result = Things["PTC.Factory.LaunchPointConfigurationThing"].
GetRemoteConnectionTableRowByStringProperty(params);

var thingTemplateName;
if (result) {
thingTemplateName = result.getRow(0).RemoteConnectionThingTemplateName;
}

var paramsForThingTemplate = {
maxItems : 1000,
nameMask : undefined,
query : undefined,
thingTemplate : thingTemplateName,
tags : undefined
};
var thingsWithTemplate = Resources["SearchFunctions"].SearchThingsByTemplate(paramsForThingTemplate);
for (var i = 0; i < thingsWithTemplate.rows.length; i++) {
var row = thingsWithTemplate.rows[i];
// infotable datashape iteration
var name = row.name;
var isThingEnabled = Things[name].IsEnabled();
if (name !== "" && name !== null && isThingEnabled) {
var serverName = row.ServerName;
var rowObject = new Object();
rowObject.Name = name;
if (serverName === null || serverName === undefined || serverName === "") {
serverName = name;
}
rowObject.ServerName = serverName;
infoTableWithName.AddRow(rowObject);
}
}
result = infoTableWithName;
Weitere Informationen zu den anderen Diensten im Zusammenhang mit der Dingform PTC.SCA.SCO.RemoteConnectionResourceProviderThingShape finden Sie in Schritt 1 unter Daten von benutzerdefinierten Konnektoren durchsuchen.
2. Erstellen Sie ein Ressourcen-Anbieterding, das die in Schritt 1 erstellte Dingvorlage implementiert:
Name – Beispiel: AzureIot_ResourceProviderThing.
Basis-Dingvorlage – Geben Sie die in Schritt 1 erstellte neue Dingvorlage an. In diesem Beispiel AzureIot_ResourceProvider_ThingTemplate.
3. Erstellen Sie eine Dingvorlage mit den folgenden Einstellungen zum Erstellen von Azure IoT Hub-Assets (Dingen):
Name – Beispiel: AzureIot_RemoteThing_ThingTemplate.
Beschreibung – eine Beschreibung der Dingvorlage.
Basis-DingvorlageAzureIotThing (oder eine andere Dingvorlage, die aus AzureIotThing erweitert wurde)
Implementierte Formen – Alle erforderlichen Dingformen, die für Assets in Benutzerdefinierte Dingvorlagen für Anlagetypen erstellen aufgelistet sind, werden implementiert.
4. Definieren Sie einen Anlagentyp für Ihre Azure IoT Hub-Assets in der Konfigurationstabelle EquipmentTypeSettings in PTC.Factory.C_LaunchPointconfigurationThing_ [Release-Version] gemäß den Anweisungen in Benutzerdefinierte Anlagentypen und -strukturen erstellen.
Geben Sie für den Wert ThingTemplate die im Schritt 3 erstellte Dingvorlage an.
Geben Sie für den Wert ResourceProvider den im Schritt 2 erstellten Ressourcen-Anbieter an.
5. Fügen Sie den Azure IoT Hub-Verbindungstyp dem Startpunkt-Konfigurationsding hinzu.
a. Öffnen Sie PTC.Factory.C_LaunchPointConfigurationThing_[Release-Version].
b. Fügen Sie der Tabelle RemoteConnectionSettings eine neue Zeile mit den folgenden Einstellungen hinzu:
ConnectionType – Geben Sie den Namen ein, der für den Azure IoT Hub-Verbindungstyp im Fenster Verbindung erstellen in Controls Advisor angezeigt werden soll. Beispiel: AzureIot.
ResourceProviderName – Geben Sie das in Schritt 2 erstellte Ressourcen-Anbieterding ein. In diesem Beispiel AzureIot_ResourceProviderThing.
RemoteConnectionThingTemplateName – Wählen Sie die Dingvorlage AzureIotThing aus.
EnabledInControlsAdvisor – Stellen Sie sicher, dass dieses Kontrollkästchen deaktiviert ist.
EnabledInTagPicker – Aktivieren Sie dieses Kontrollkästchen, um den Verbindungstyp in der Tag-Auswahl sichtbar zu machen.
* 
Wenn Sie ein auf der Dingvorlage AzureIotThing basierendes Asset als Ding in ThingWorx Composer erstellen, müssen Sie die Eigenschaft displayName für das Ding festlegen, damit das Asset in ThingWorx Apps richtig angezeigt wird. Wenn Assets über Konfiguration und Setup > Anlage in ThingWorx Apps erstellt werden, wird diese Eigenschaft automatisch festgelegt.