Connection QML Type
Se connecte à un serveur. Plus...
| Import Statement: | import QtOpcUa |
| Since: | QtOpcUa 5.12 |
| 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
- authenticationInformation : AuthenticationInformation
- availableBackends : stringlist
- backend : string
- connected : bool
- connection : QOpcUaClient
- currentEndpoint : QOpcUaEndpointDescription
- defaultConnection : bool
- namespaces : stringlist
- supportedSecurityPolicies : stringlist
- supportedUserTokenTypes : array[tokenTypes]
Signaux
- nodeChanged()
- readNodeAttributesFinished(readResults)
- writeNodeAttributesFinished(writeResults)
Méthodes
- void connectToEndpoint(endpointDescription)
- void disconnectFromEndpoint()
- bool readNodeAttributes(valuesToBeRead)
- bool writeNodeAttributes(valuesToBeWritten)
Description détaillée
L'API principale utilise des backends pour établir des connexions. Vous devez définir le backend avant toute tentative de connexion.
import QtOpcUa as QtOpcUa QtOpcUa.Connection { backend: "open62541" } Component.onCompleted: { connection.connectToEndpoint("opc.tcp://127.0.0.1:43344"); }
Documentation sur les propriétés
authenticationInformation : AuthenticationInformation
Définir les informations d'authentification pour cette connexion. Les informations d'authentification doivent être définies avant d'appeler connectToEndpoint. Si aucune information d'authentification n'est définie, le mode anonyme sera utilisé. Cela n'a aucun effet sur la connexion actuelle. Si le client est déconnecté puis reconnecté, les nouvelles informations d'identification sont utilisées. Si vous lisez et écrivez cette propriété avant qu'un backend soit défini, les écritures sont ignorées et les lectures renvoient un AuthenticationInformation invalide.
availableBackends : stringlist [read-only]
Renvoie les noms de tous les backends disponibles sous forme de liste. Ces noms sont utilisés pour sélectionner un backend lors de la connexion.
Voir aussi Connection::backend.
backend : string
Définit le backend à utiliser pour une connexion au serveur. Doit être défini avant toute tentative de connexion.
Voir aussi Connection::availableBackends.
connected : bool [read-only]
État de la connexion. true s'il y a une connexion, sinon false.
connection : QOpcUaClient
Cette propriété est utilisée uniquement pour injecter une connexion à partir de C++. En cas de configuration complexe d'une connexion, vous pouvez utiliser C++ pour gérer tous les détails. Une fois la connexion établie, elle peut être transmise à QML à l'aide de cette propriété. La propriété du client est transférée à QML.
class MyClass : public QObject { Q_OBJECT Q_PROPERTY(QOpcUaClient* connection READ connection NOTIFY connectionChanged) public: MyClass (QObject* parent = nullptr); QOpcUaClient *connection() const; signals: void connectionChanged(QOpcUaClient *);
En émettant le signal connectionChanged lorsque la configuration du client est terminée, le code QML ci-dessous utilisera la connexion.
import QtOpcUa as QtOpcUa MyClass { id: myclass } QtOpcUa.Connection { connection: myclass.connection }
currentEndpoint : QOpcUaEndpointDescription
Description du serveur auquel la connexion est établie. Si la connexion n'est pas établie, une description vide est renvoyée.
defaultConnection : bool
Fait de cette connexion la connexion par défaut. En général, chaque nœud doit recevoir une connexion à utiliser. Si cette propriété vaut true, cette connexion sera utilisée dans tous les cas où un nœud n'a pas de connexion définie. Les connexions déjà établies ne sont pas affectées. Si defaultConnection est défini sur true pour plusieurs connexions, c'est la dernière qui est utilisée.
QtOpcUa.Connection { ... defaultConnection: true ... }
Voir aussi Node.
namespaces : stringlist [read-only]
Liste de chaînes de tous les URI d'espaces de noms enregistrés sur le serveur connecté.
supportedSecurityPolicies : stringlist
Une liste de chaînes contenant les politiques de sécurité prises en charge.
Cette propriété est actuellement disponible en tant qu'aperçu technologique et, par conséquent, l'API et les fonctionnalités fournies peuvent être modifiées à tout moment sans préavis.
supportedUserTokenTypes : array[tokenTypes]
Un tableau de types de politiques de jetons d'utilisateur de tous les types de jetons d'utilisateur pris en charge.
Cette propriété est actuellement disponible en tant qu'aperçu technologique et, par conséquent, l'API et les fonctionnalités fournies peuvent être modifiées à tout moment sans préavis.
Documentation sur le signal
nodeChanged()
Emis lorsque le nœud sous-jacent a changé. Cela se produit lorsque l'espace de noms ou l'identifiant de NodeId a changé.
Remarque : le gestionnaire correspondant est onNodeChanged.
readNodeAttributesFinished(readResults)
Emise lorsque la requête de lecture, lancée à l'aide de readNodeAttributes(), est terminée. Le paramètre readResults est un tableau d'entrées ReadResult contenant les valeurs demandées au serveur.
connection.onReadNodeAttributesFinished(results) { for (var i = 0; results.length; i++) { if (results[i].status.isGood) { console.log(results[i].value); } else { // handle error } } }
Remarque : le gestionnaire correspondant est onReadNodeAttributesFinished.
Voir également readNodeAttributes() et ReadResult.
writeNodeAttributesFinished(writeResults)
Emis lorsque la requête d'écriture lancée à l'aide de writeNodeAttributes() est terminée. Le paramètre writeResults est un tableau d'entrées WriteResult contenant les valeurs demandées au serveur.
for (var i = 0; i < writeResults.length; i++) { console.log(writeResults[i].nodeId); console.log(writeResults[i].namespaceName); console.log(writeResults[i].attribute); if (writeResults[i].status.isBad) { // value was not written } }
Remarque : le gestionnaire correspondant est onWriteNodeAttributesFinished.
Voir également writeNodeAttributes() et WriteResult.
Documentation de la méthode
void connectToEndpoint(endpointDescription)
Se connecte au point d'accès spécifié par endpointDescription.
Voir aussi EndpointDescription.
void disconnectFromEndpoint()
Déconnecte une connexion établie.
bool readNodeAttributes(valuesToBeRead)
Cette fonction est utilisée pour lire plusieurs valeurs d'un serveur en une seule fois. Elle renvoie true si la demande de lecture a été envoyée avec succès.
Le paramètre valuesToBeRead doit être un tableau JavaScript d'entrées ReadItem.
// List of items to read var readItemList = []; // Item to be added to the list of items to be read var readItem; // Prepare an item to be read // Create a new read item and fill properties readItem = QtOpcUa.ReadItem.create(); readItem.ns = "http://qt-project.org"; readItem.nodeId = "s=Demo.Static.Scalar.Double"; readItem.attribute = QtOpcUa.Constants.NodeAttribute.DisplayName; // Add the prepared item to the list of items to be read readItemList.push(readItem); // Add further items [...] if (!connection.readNodeAttributes(readItemList)) { // handle error }
Le résultat de la demande de lecture est fourni par le signal readNodeAttributesFinished().
Voir également readNodeAttributesFinished() et ReadItem.
bool writeNodeAttributes(valuesToBeWritten)
Cette fonction est utilisée pour écrire plusieurs valeurs sur un serveur en une seule fois. Elle renvoie true si la demande d'écriture a été envoyée avec succès.
Le paramètre valuesToBeWritten doit être un tableau JavaScript d'entrées WriteItem.
// List of items to write var writeItemList = []; // Item to be added to the list of items to be written var writeItem; // Prepare an item to be written // Create a new write item and fill properties writeItem = QtOpcUa.WriteItem.create(); writeItem.ns = "http://qt-project.org"; writeItem.nodeId = "s=Demo.Static.Scalar.Double"; writeItem.attribute = QtOpcUa.Constants.NodeAttribute.Value; writeItem.value = 32.1; writeItem.valueType = QtOpcUa.Constants.Double; // Add the prepared item to the list of items to be written writeItemList.push(writeItem); // Add further items [...] if (!connection.writeNodeAttributes(writeItemList)) { // handle error }
Le résultat de la demande d'écriture est fourni par le signal Connection::writeNodeAttributesFinished().
Voir également Connection::writeNodeAttributesFinished() et WriteItem.
© 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.