-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathAPIConnector.cpp
44 lines (36 loc) · 1.17 KB
/
APIConnector.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include "APIConnector.h"
#include <QDebug>
APIConnector::APIConnector(QString const& host)
: _networkManager(new QNetworkAccessManager())
{
_templateRequest.setRawHeader("User-Agent", "CineFeelBrowser 1.0");
_templateRequest.setRawHeader("Content-Type", "application/json");
_host = host;
}
APIConnector::~APIConnector()
{
delete _networkManager;
}
void APIConnector::setHost(const QString &ip)
{
_host = ip;
}
void APIConnector::setColor(const QColor &color)
{
_postRequest("Light/Capability/ColorLight/Rgb.json?red=" + QString::number(color.red()) +
"&green=" + QString::number(color.green()) +
"&blue=" + QString::number(color.blue()));
}
void APIConnector::setBrightness(int brightness)
{
_postRequest("Light/Capability/WhiteLight.json?brightness=" + QString::number(brightness));
}
void APIConnector::setTemperature(int temperature)
{
_postRequest("Light/Capability/WhiteLight.json?temperature=" + QString::number(temperature));
}
void APIConnector::_postRequest(const QString &path)
{
_templateRequest.setUrl(QUrl("http://" + _host + "/" + path));
_networkManager->put(_templateRequest, QByteArray());
}