Quick Secure CoAP Client▲
Sélectionnez
// Copyright (C) 2019 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
#ifndef QMLCOAPSECURECLIENT_H
#define QMLCOAPSECURECLIENT_H
#include <QtCoap/qcoapnamespace.h>
#include <QCoapSecurityConfiguration>
#include <QtQml/qqmlregistration.h>
class
QCoapClient;
class
QmlCoapSecureClient : public
QObject
{
Q_OBJECT
QML_NAMED_ELEMENT(CoapSecureClient)
public
:
QmlCoapSecureClient(QObject *
parent =
nullptr
);
~
QmlCoapSecureClient() override
;
Q_INVOKABLE void
setSecurityMode(QtCoap::
SecurityMode mode);
Q_INVOKABLE void
sendGetRequest(const
QString &
amp;host, const
QString &
amp;path, int
port);
Q_INVOKABLE void
setSecurityConfiguration(const
QString &
amp;preSharedKey, const
QString &
amp;identity);
Q_INVOKABLE void
setSecurityConfiguration(const
QString &
amp;localCertificatePath,
const
QString &
amp;caCertificatePath,
const
QString &
amp;privateKeyPath);
Q_INVOKABLE void
disconnect();
Q_SIGNALS
:
void
finished(const
QString &
amp;result);
private
:
QCoapClient *
m_coapClient;
QCoapSecurityConfiguration m_configuration;
QtCoap::
SecurityMode m_securityMode;
}
;
namespace
QCoapForeignNamespace
{
Q_NAMESPACE
QML_FOREIGN_NAMESPACE(QtCoap)
QML_NAMED_ELEMENT(QtCoap)
}
#endif
// QMLCOAPSECURECLIENT_H