Merge PR #778: Add optional newline setting for TCP client

This commit is contained in:
jenkins 2026-06-22 15:02:41 +02:00
commit e9fc51f819
2 changed files with 14 additions and 1 deletions

View File

@ -116,7 +116,11 @@ void IntegrationPluginTcpCommander::executeAction(ThingActionInfo *info)
if (action.actionTypeId() == tcpClientTriggerActionTypeId) {
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);
if (len == data.length()) {
info->finish(Thing::ThingErrorNoError);

View File

@ -41,6 +41,15 @@
"displayNameEvent": "Connection status changed"
}
],
"settingsTypes": [
{
"id": "902a880c-9167-4ef7-9c80-f18e666a14ea",
"name": "appendNewline",
"displayName": "Append newline to sent data",
"type": "bool",
"defaultValue": false
}
],
"actionTypes": [
{
"id": "6bc52462-b192-46a4-a6df-92cc5a479c89",