ServerDiscovery QML Type
Liefert Informationen zu verfügbaren Servern. Mehr...
| Import Statement: | import QtOpcUa |
| Since: | QtOpcUa 5.13 |
| Status: | Deprecated since 6.9 |
Dieser Typ ist seit QtOpcUa 6.9 veraltet. Wir raten dringend davon ab, ihn in neuem Code zu verwenden.
Eigenschaften
- connection : Connection
- count : int
- discoveryUrl : string
- status : Status
Signale
Methoden
- ApplicationDescription at(index)
Ausführliche Beschreibung
Ermöglicht das Abrufen und den Zugriff auf Informationen zu Servern, die einem Server oder einem Erkennungsserver 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);
}
}
}Dokumentation zu den Eigenschaften
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
Aktuelle Anzahl der Server in diesem Element. Bevor Sie Daten aus dieser Servererkennung verwenden, sollten Sie unter status überprüfen, ob die Informationen erfolgreich abgerufen wurden.
discoveryUrl : string
URL des Servers, von dem die Serverliste abgerufen werden soll. Bei jeder Änderung der URL wird eine Anfrage an den angegebenen Server gestartet.
Beim Starten der Anfrage wird die Liste der verfügbaren Server gelöscht und der Status auf „ Status.GoodCompletesAsynchronously “ gesetzt. Sobald die Anfrage abgeschlossen ist, ändert sich der Status auf „ status “. Überprüfen Sie unbedingt den Status unter „ status “, 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. Falls die letzte Abfrage der Server erfolgreich war, sollte der Status „ Status.Good “ lauten.
if (status.isGood) {
// Choose endpoint to connect to
} else {
// handle error
}Siehe auch „ Status “.
Signal-Dokumentation
serversChanged()
Wird ausgelöst, wenn eine Abrufanfrage gestartet, abgeschlossen oder fehlgeschlagen ist. In einer aufgerufenen Funktion sollten Sie zunächst die Methode „ status “ des Objekts aufrufen. Ist der Status „ Status.GoodCompletesAsynchronously “, läuft die Anfrage noch. Ist der Status „ Status.Good “, ist die Anfrage abgeschlossen und die Anwendungsbeschreibungen können gelesen werden. Ist der Status nicht „good“, ist ein Fehler aufgetreten und „ status “ enthält den zurückgegebenen Fehlercode.
onServersChanged: {
if (status.isGood) {
if (status.status == QtOpcUa.Status.GoodCompletesAsynchronusly)
return; // wait until finished
if (count > 0) {
var serverUrl = at(0).endpointUrl();
console.log(serverUrl);
}
} else {
// handle error
}
}Hinweis: Der entsprechende Handler lautet onServersChanged.
Siehe auch status, count, at, Status und ApplicationDescription.
Methodendokumentation
ApplicationDescription at(index)
Gibt die Anwendungsbeschreibung unter der angegebenen Adresse 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 überprü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.
© 2026 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.