EndpointDiscovery QML Type
Fournit des informations sur les points de terminaison disponibles sur un serveur. En savoir plus...
| Import Statement: | import QtOpcUa |
| Since: | QtOpcUa 5.13 |
| Status: | Deprecated since 6.9 |
Ce type est obsolète depuis QtOpcUa 6.9. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Propriétés
- connection : Connection
- count : int
- serverUrl : string
- status : Status
Signaux
Méthodes
- EndpointDescription at(index)
Description détaillée
Permet de récupérer et d'accéder aux informations relatives aux points de terminaison disponibles sur un serveur.
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);
}
}
}Documentation des propriétés
connection : Connection
La connexion à utiliser pour demander des informations.
Si cette propriété n'est pas définie, la connexion par défaut sera utilisée, le cas échéant.
Voir également Connection et Connection::defaultConnection.
count : int
Nombre actuel de points de terminaison dans cet élément. Avant d'utiliser des données issues d'une découverte de points de terminaison, vous devez vérifier sur status si les informations ont bien été récupérées.
Voir également status et Status.
serverUrl : string
URL de découverte du serveur à partir duquel récupérer les points de terminaison. Chaque fois que l'URL est modifiée, une requête vers le serveur indiqué est lancée.
Au lancement de la requête, la liste des points de terminaison disponibles est effacée et le statut est défini sur « Status.GoodCompletesAsynchronously ». Une fois la requête terminée, le statut passe à « status ».
Veillez à vérifier status avant d’accéder à la liste des points de terminaison.
Voir également endpointsChanged.
status : Status
État actuel de cet élément. Si la dernière récupération des points de terminaison s'est déroulée avec succès, l'état est « Status.Good ».
if (endpoints.status.isGood) {
// do something
} else {
// handle error
}Voir également Status.
Documentation sur les signaux
endpointsChanged()
Émis lorsqu'une requête de récupération a démarré, s'est terminée ou a échoué. Dans une fonction appelée, vous devez d'abord vérifier la propriété ` status ` de l'objet. Si le statut est ` Status.GoodCompletesAsynchronously`, la requête est toujours en cours d'exécution. Si le statut est ` Status.Good`, la requête est terminée et les descriptions des points de terminaison peuvent être lues. Si le statut n'est pas correct, une erreur s'est produite et ` status ` contient le code d'erreur renvoyé.
onEndpointsChanged: {
if (endpoints.status.isGood) {
if (endpoints.status.status == QtOpcua.Status.GoodCompletesAsynchronusly)
return; // wait until finished
if (endpoints.count > 0) {
var endpointUrl = endpoints.at(0).endpointUrl();
console.log(endpointUrl);
}
} else {
// handle error
}
}Remarque : le gestionnaire correspondant est onEndpointsChanged.
Voir également status, count, at, Status et EndpointDescription.
Documentation sur les méthodes
EndpointDescription at(index)
Renvoie la description du point de terminaison à l'adresse index. S'il n'y a aucun point de terminaison disponible ou si l'index n'est pas valide, une description de point de terminaison non valide est renvoyée. Avant d'utiliser les données issues de cette requête, vous devez vérifier sur status si la récupération des informations a abouti.
if (endpoints.status.isGood) {
if (endpoints.count > 0)
var endpointUrl = endpoints.at(0).endpointUrl();
console.log(endpointUrl);
} else {
// handle error
}Voir également count, status et EndpointDescription.
© 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.