ServerDiscovery QML Type
Liefert Informationen über verfügbare Server. Mehr...
Import Statement: | import QtOpcUa |
Since: | QtOpcUa 5.13 |
Eigenschaften
- connection : Connection
- count : int
- discoveryUrl : string
- status : Status
Methoden
- ApplicationDescription at(index)
Ausführliche Beschreibung
Ermöglicht das Abrufen von und den Zugriff auf Informationen über Server, die einem Server oder Discovery Server bekannt sind.
QtOpcUa.Connection { id: connection backend: availableBackends[0] defaultConnection: true } QtOpcUa.ServerDiscovery { discoveryUrl: "opc.tcp://127.0.0.1:43344" onServersChanged: { if (status.isGood) { if (status.status == QtOpcUa.Status.GoodCompletesAsynchronusly) return; // wait until finished if (count > 0) { // choose right server endpointDiscovery.serverUrl = at(0).discoveryUrls[0]; console.log("Using server URL:", endpointDiscovery.serverUrl); } else { // no servers retrieved } } else { // Fetching servers failed console.log("Error fetching server:", servers.status.status); } } } QtOpcUa.EndpointDiscovery { id: endpointDiscovery onEndpointsChanged: { if (status.isGood) { if (status.status == QtOpcUa.Status.GoodCompletesAsynchronusly) return; // wait until finished if (count > 0) { // choose right endpoint console.log("Using endpoint", at(0).endpointUrl, at(0).securityPolicy); connection.connectToEndpoint(at(0)); } else { // no endpoints retrieved } } else { // Fetching endpoints failed console.log("Error fetching endpoints:", status.status); } } }
Eigenschaft Dokumentation
connection : Connection |
Die Verbindung, die für die Abfrage von Informationen verwendet werden soll.
Wenn diese Eigenschaft nicht festgelegt ist, wird die Standardverbindung verwendet, sofern vorhanden.
Siehe auch Connection und Connection::defaultConnection.
count : int |
discoveryUrl : string |
URL des Servers, von dem die Liste der Server abgerufen werden soll. Jedes Mal, wenn die URL geändert wird, wird eine Anfrage an den angegebenen Server gestartet.
Beim Starten der Anfrage wird die Liste der verfügbaren Server geleert und der Status auf Status.GoodCompletesAsynchronously gesetzt. Sobald die Abfrage beendet ist, ändert sich status. Stellen Sie sicher, dass Sie die status überprüfen, bevor Sie auf die Liste der Server zugreifen.
onServersChanged: { if (status.isGood) { if (status.status == QtOpcUa.Status.GoodCompletesAsynchronusly) return; // wait until finished if (count > 0) { var serverUrl = at(0).serverUrl(); console.log(serverUrl); } } else { // handle error } }
Siehe auch ApplicationDescription, status, at, count, und Status.
status : Status |
Der aktuelle Status dieses Elements. Wenn der letzte Abruf von Servern erfolgreich war, sollte der Status Status.Good
sein.
if (status.isGood) { // Choose endpoint to connect to } else { // handle error }
Siehe auch Status.
Methode Dokumentation
ApplicationDescription at(index) |
Gibt die Anwendungsbeschreibung unter der angegebenen index zurück. Falls keine Server verfügbar sind oder der Index ungültig ist, wird eine ungültige Anwendungsbeschreibung zurückgegeben. Bevor Sie die zurückgegebenen Daten verwenden, sollten Sie unter status prüfen, ob der Abruf der Informationen erfolgreich war.
if (servers.status.isGood) { if (servers.count > 0) var serverUrl = at(0).serverUrl(); console.log(serverUrl); // Choose endpoint to connect to } else { // handle error }
Siehe auch count, status, und ApplicationDescription.
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.