ServerDiscovery QML Type
Fournit des informations sur les serveurs disponibles. 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
- discoveryUrl : string
- status : Status
Signaux
Méthodes
- ApplicationDescription at(index)
Description détaillée
Permet de récupérer et d'accéder aux informations concernant les serveurs connus d'un serveur ou d'un serveur de découverte.
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 serveurs dans cet élément. Avant d'utiliser les données issues de cette détection de serveurs, vous devez vérifier sur status si la récupération des informations s'est déroulée avec succès.
Voir également status et Status.
discoveryUrl : string
URL du serveur à partir duquel récupérer la liste des serveurs. 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 serveurs disponibles est effacée et l'état est défini sur « Status.GoodCompletesAsynchronously ». Une fois la requête terminée, l'état passe à « status ». Veillez à vérifier l'état « status » avant d'accéder à la liste des serveurs.
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
}
}Voir également ApplicationDescription, status, at, count et Status.
status : Status
État actuel de cet élément. Si la dernière interrogation des serveurs s'est déroulée avec succès, l'état doit être « Status.Good ».
if (status.isGood) {
// Choose endpoint to connect to
} else {
// handle error
}Voir également Status.
Documentation Signal
serversChanged()
É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 méthode ` 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 de l'application peuvent être lues. Si le statut n'est pas correct, une erreur s'est produite et ` status ` contient le code d'erreur renvoyé.
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
}
}Remarque : le gestionnaire correspondant est onServersChanged.
Voir également status, count, at, Status et ApplicationDescription.
Documentation sur les méthodes
ApplicationDescription at(index)
Renvoie la description de l'application à l'adresse index. Si aucun serveur n'est disponible ou si l'index n'est pas valide, une description d'application non valide est renvoyée. Avant d'utiliser les données renvoyées, vous devez vérifier sur status si la récupération des informations a bien abouti.
if (servers.status.isGood) {
if (servers.count > 0)
var serverUrl = at(0).serverUrl();
console.log(serverUrl);
// Choose endpoint to connect to
} else {
// handle error
}Voir également count, status et 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.