mirror of
https://github.com/nymea/nymea-plugins.git
synced 2026-08-04 03:23:36 +02:00
Merge PR #778: Add optional newline setting for TCP client
This commit is contained in:
commit
64dcad7222
@ -116,7 +116,11 @@ void IntegrationPluginTcpCommander::executeAction(ThingActionInfo *info)
|
|||||||
|
|
||||||
if (action.actionTypeId() == tcpClientTriggerActionTypeId) {
|
if (action.actionTypeId() == tcpClientTriggerActionTypeId) {
|
||||||
QTcpSocket *tcpSocket = m_tcpSockets.value(thing);
|
QTcpSocket *tcpSocket = m_tcpSockets.value(thing);
|
||||||
QByteArray data = action.param(tcpClientTriggerActionDataParamTypeId).value().toByteArray();
|
QString dataString = action.param(tcpClientTriggerActionDataParamTypeId).value().toString();
|
||||||
|
if (thing->setting(tcpClientSettingsAppendNewlineParamTypeId).toBool() && !dataString.endsWith('\n')) {
|
||||||
|
dataString.append('\n');
|
||||||
|
}
|
||||||
|
QByteArray data = dataString.toUtf8();
|
||||||
qint64 len = tcpSocket->write(data);
|
qint64 len = tcpSocket->write(data);
|
||||||
if (len == data.length()) {
|
if (len == data.length()) {
|
||||||
info->finish(Thing::ThingErrorNoError);
|
info->finish(Thing::ThingErrorNoError);
|
||||||
|
|||||||
@ -41,6 +41,15 @@
|
|||||||
"displayNameEvent": "Connection status changed"
|
"displayNameEvent": "Connection status changed"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"settingsTypes": [
|
||||||
|
{
|
||||||
|
"id": "902a880c-9167-4ef7-9c80-f18e666a14ea",
|
||||||
|
"name": "appendNewline",
|
||||||
|
"displayName": "Append newline to sent data",
|
||||||
|
"type": "bool",
|
||||||
|
"defaultValue": false
|
||||||
|
}
|
||||||
|
],
|
||||||
"actionTypes": [
|
"actionTypes": [
|
||||||
{
|
{
|
||||||
"id": "6bc52462-b192-46a4-a6df-92cc5a479c89",
|
"id": "6bc52462-b192-46a4-a6df-92cc5a479c89",
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user