EndpointDiscovery QML Type
Fournit des informations sur les points d'extrémité disponibles sur un serveur. Plus...
| Import Statement: | import QtOpcUa |
| Since: | QtOpcUa 5.13 |
| Status: | Deprecated since 6.9 |
Ce type est obsolète depuis QtOpcUa 6.9. Il est fortement déconseillé de l'utiliser dans un 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 sur les points d'extrémité 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); } } }
Propriété Documentation
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 d'extrémité dans cet élément. Avant d'utiliser les données issues de la découverte d'un point d'extrémité, il convient de vérifier à l'adresse status si les informations ont été récupérées avec succès.
Voir également status et Status.
serverUrl : string
URL de découverte du serveur à partir duquel les points d'extrémité doivent être récupérés. Chaque fois que l'URL est modifiée, une requête au serveur donné est lancée.
Lors du lancement de la demande, la liste des points d'accès disponibles est effacée et le statut est fixé à Status.GoodCompletesAsynchronously. Une fois la requête terminée, status est modifié.
Veillez à vérifier status avant d'accéder à la liste des points d'accès.
Voir aussi endpointsChanged.
status : Status
Le statut actuel de cet élément. Si la dernière récupération des points d'extrémité a réussi, l'état est Status.Good.
if (endpoints.status.isGood) { // do something } else { // handle error }
Voir également Status.
Documentation sur les signaux
endpointsChanged()
Émise lorsqu'une demande d'extraction a commencé, s'est terminée ou a échoué. Dans une fonction appelée, vous devez d'abord vérifier l'adresse status de l'objet. Si le statut est Status.GoodCompletesAsynchronously, la demande est toujours en cours. Si le statut est Status.Good, la demande est terminée et les descriptions des points d'extrémité peuvent être lues. Si le statut n'est pas bon, 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 de la méthode
EndpointDescription at(index)
Renvoie la description du point de terminaison à l'adresse index. Si aucun point de terminaison n'est 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 ainsi obtenues, il convient de vérifier sur status si l'extraction des informations s'est déroulée correctement.
if (endpoints.status.isGood) { if (endpoints.count > 0) var endpointUrl = endpoints.at(0).endpointUrl(); console.log(endpointUrl); } else { // handle error }
Voir aussi 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.