Started ISMASClient providing the data to be sent to ISMAS.
It does not send to ISMAS itself.
This commit is contained in:
parent
92084bed99
commit
58bceb5d27
@ -0,0 +1,212 @@
|
||||
#include "ismas/ismas_client.h"
|
||||
|
||||
#include <cstring>
|
||||
#include <cstdio>
|
||||
|
||||
#if 0
|
||||
# $1: EVENT: U0001 update finished: 100%
|
||||
# U0002 reset TRG
|
||||
# U0003 error
|
||||
# U0010 for update process
|
||||
# $2: PERCENT : "only for ISMAS: 0-100%",
|
||||
# $3: RESULTCODE : "only for ISMAS",
|
||||
# 0: Success
|
||||
# 1: no Update nessesary
|
||||
# 2: Backup failed
|
||||
# 3: Package error/ Wrong package
|
||||
# 4: Install Error
|
||||
# $4: STEP : "running step (only for us): update_psa...",
|
||||
# $5: STEP_RESULT : "error and result text",
|
||||
# $6: VERSION : "opkg and conf info; what will be updated"
|
||||
#
|
||||
#endif
|
||||
|
||||
#include <QDateTime>
|
||||
#include <QDebug>
|
||||
|
||||
QString IsmasClient::updateNewsToIsmas(char const *event,
|
||||
int percent,
|
||||
int resultCode,
|
||||
char const *step,
|
||||
char const *step_result,
|
||||
char const *version) {
|
||||
char buf[1024];
|
||||
memset(buf, 0, sizeof(buf));
|
||||
|
||||
QString const ts = QDateTime::currentDateTime().toString(Qt::ISODateWithMs);
|
||||
snprintf(buf, sizeof(buf)-1,
|
||||
"{"
|
||||
"\"REASON\":\"SW_UP\","
|
||||
"\"TIMESTAMP\":\"%s\","
|
||||
"\"EVENT_ID\":\"0\","
|
||||
"\"EVENT\":\"%s\","
|
||||
"\"EVENTSTATE\":1,"
|
||||
"\"PARAMETER\": {"
|
||||
"\"PERCENT\" : %d,"
|
||||
"\"RESULTCODE\" : %d,"
|
||||
"\"STEP\" : \"%s\","
|
||||
"\"STEP_RESULT\" : \"%s\","
|
||||
"\"VERSION\" : \"%s\""
|
||||
"}"
|
||||
"}", ts.toStdString().c_str(), event, percent, resultCode,
|
||||
step, step_result, version);
|
||||
return buf;
|
||||
}
|
||||
|
||||
QString IsmasClient::updateOfPSASendVersion(QString const &tariffVersion,
|
||||
QString const &tariffProject,
|
||||
int tariffZone,
|
||||
QString const &tariffInfo,
|
||||
QString const &tariffLoadTime,
|
||||
QString const &linuxVersion,
|
||||
QString const &cpuSerial,
|
||||
QString const &deviceControllerVersion,
|
||||
QString const &deviceControllerGitBlob,
|
||||
QString const &deviceControllerGitLastCommit,
|
||||
QString const &raucVersion,
|
||||
QString const &opkgVersion,
|
||||
QString const &atbQTVersion,
|
||||
QString const &atbQTGitDescribe,
|
||||
QString const &deviceControllerPluginVersion,
|
||||
QString const &ingenicoISelfCCPluginVersion,
|
||||
QString const &mobilisisCalculatePricePluginVersion,
|
||||
QString const &mobilisisCalculatePriceConfigUiVersion,
|
||||
QString const &prmCalculatePricePluginVersion,
|
||||
QString const &prmCalculatePriceConfigUiPluginVersion,
|
||||
QString const &tcpZVTPluginVersion) {
|
||||
char buf[4096];
|
||||
memset(buf, 0, sizeof(buf));
|
||||
|
||||
QString const ts = QDateTime::currentDateTime().toString(Qt::ISODateWithMs);
|
||||
QString sendVersionHash;
|
||||
|
||||
// local data="#M=APISM#C=CMD_SENDVERSION#J=
|
||||
snprintf(buf, sizeof(buf)-1,
|
||||
"{"
|
||||
"\"VERSION_INFO\" : {"
|
||||
"\"CREATED\":\"%s\","
|
||||
"\"HASH\":\"%s\""
|
||||
"},"
|
||||
"\"TARIFF\" : {"
|
||||
"\"VERSION\" : \"%s\","
|
||||
"\"PROJECT\" : \"%s\","
|
||||
"\"ZONE\" : %d,"
|
||||
"\"INFO\" : \"%s\","
|
||||
"\"LOADED\" : \"%s\""
|
||||
"},"
|
||||
"\"HARDWARE\" : {"
|
||||
"\"DEVICES\" : [\"PTU5\", \"DC\", \"PRINTER\", \"BNA\"]"
|
||||
"},"
|
||||
"\"OS\" : {"
|
||||
"\"Linux\": \"%s\""
|
||||
"},"
|
||||
"\"CONFIG\" : {"
|
||||
"\"PTU5\" : {"
|
||||
"\"CPU_SERIAL\" : \"%s\""
|
||||
"},"
|
||||
"\"DC\" : {"
|
||||
"\"VERSION\" : \"%s\","
|
||||
"\"GITBLOB\" : \"%s\","
|
||||
"\"GITLASTCOMMIT\" : \"%s\""
|
||||
"},"
|
||||
"\"PRINTER\" : {"
|
||||
"},"
|
||||
"\"BNA\" : {"
|
||||
"}"
|
||||
"},"
|
||||
"\"SOFTWARE\": {"
|
||||
"\"RAUC\" : \"%s\","
|
||||
"\"OPKG\" : \"%s\","
|
||||
"\"ATBQT\" : {"
|
||||
"\"VERSION\" : \"%s\","
|
||||
"\"GIT_DESCRIBE\" : \"%s\""
|
||||
"}"
|
||||
"},"
|
||||
"\"PLUGINS\" : {"
|
||||
"\"libATBDeviceControllerPlugin.so\" : {"
|
||||
"\"VERSION\" : \"%s\""
|
||||
"},"
|
||||
"\"libIngenicoISelf_CCPlugin.so\" : {"
|
||||
"\"VERSION\" : \"%s\""
|
||||
"},"
|
||||
"\"libMOBILISIS_CalculatePricePlugin.so\" : {"
|
||||
"\"VERSION\" : \"%s\""
|
||||
"},"
|
||||
"\"libMOBILISIS_CalculatePricePlugin_ConfigUi.so\" : {"
|
||||
"\"VERSION\" : \"%s\""
|
||||
"},"
|
||||
"\"libPRM_CalculatePricePlugin.so\" : {"
|
||||
"\"VERSION\" : \"%s\""
|
||||
"},"
|
||||
"\"libPRM_CalculatePricePlugin_ConfigUi.so\" : {"
|
||||
"\"VERSION\" : \"%s\""
|
||||
"},"
|
||||
"\"libTCP_ZVT_CCPlugin.so\" : {"
|
||||
"\"VERSION\" : \"%s\""
|
||||
"}"
|
||||
"}"
|
||||
"}",
|
||||
ts.toStdString().c_str(),
|
||||
sendVersionHash.toStdString().c_str(),
|
||||
|
||||
tariffVersion.toStdString().c_str(),
|
||||
tariffProject.toStdString().c_str(),
|
||||
tariffZone,
|
||||
tariffInfo.toStdString().c_str(),
|
||||
tariffLoadTime.toStdString().c_str(),
|
||||
|
||||
linuxVersion.toStdString().c_str(),
|
||||
|
||||
cpuSerial.toStdString().c_str(),
|
||||
|
||||
deviceControllerVersion.toStdString().c_str(),
|
||||
deviceControllerGitBlob.toStdString().c_str(),
|
||||
deviceControllerGitLastCommit.toStdString().c_str(),
|
||||
|
||||
raucVersion.toStdString().c_str(),
|
||||
opkgVersion.toStdString().c_str(),
|
||||
atbQTVersion.toStdString().c_str(),
|
||||
atbQTGitDescribe.toStdString().c_str(),
|
||||
|
||||
deviceControllerPluginVersion.toStdString().c_str(),
|
||||
ingenicoISelfCCPluginVersion.toStdString().c_str(),
|
||||
mobilisisCalculatePricePluginVersion.toStdString().c_str(),
|
||||
mobilisisCalculatePriceConfigUiVersion.toStdString().c_str(),
|
||||
prmCalculatePricePluginVersion.toStdString().c_str(),
|
||||
prmCalculatePriceConfigUiPluginVersion.toStdString().c_str(),
|
||||
tcpZVTPluginVersion.toStdString().c_str());
|
||||
|
||||
return buf;
|
||||
}
|
||||
|
||||
|
||||
QString IsmasClient::updateOfPSAActivated() {
|
||||
return updateNewsToIsmas("U0010",
|
||||
1,
|
||||
0,
|
||||
"activated",
|
||||
"detected WAIT state",
|
||||
"1.0.0");
|
||||
}
|
||||
|
||||
QString IsmasClient::updateOfPSASucceeded() {
|
||||
return updateNewsToIsmas("U0001",
|
||||
100,
|
||||
0,
|
||||
"update_succeeded",
|
||||
"",
|
||||
"1.0.0");
|
||||
}
|
||||
|
||||
QString IsmasClient::setUpdatesAvailable() {
|
||||
return updateNewsToIsmas("U0099",
|
||||
10,
|
||||
0,
|
||||
"set_updates_available",
|
||||
"",
|
||||
"");
|
||||
}
|
||||
|
||||
|
||||
|
||||
bool checkForAvailableUpdates();
|
@ -0,0 +1,46 @@
|
||||
#ifndef ISMAS_CLIENT_H_INCLUDED
|
||||
#define ISMAS_CLIENT_H_INCLUDED
|
||||
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
|
||||
class IsmasClient : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
QString updateNewsToIsmas(char const *event,
|
||||
int percent,
|
||||
int resultCode,
|
||||
char const *step,
|
||||
char const *step_result,
|
||||
char const *version);
|
||||
|
||||
QString updateOfPSAActivated();
|
||||
QString updateOfPSASucceeded();
|
||||
QString updateOfPSASendVersion(QString const &tariffVersion,
|
||||
QString const &tariffProject,
|
||||
int tariffZone,
|
||||
QString const &tariffInfo,
|
||||
QString const &tariffLoadTime,
|
||||
QString const &linuxVersion,
|
||||
QString const &cpuSerial,
|
||||
QString const &deviceControllerVersion,
|
||||
QString const &deviceControllerGitBlob,
|
||||
QString const &deviceControllerGitLastCommit,
|
||||
QString const &raucVersion,
|
||||
QString const &opkgVersion,
|
||||
QString const &atbQTVersion,
|
||||
QString const &atbQTGitDescribe,
|
||||
QString const &deviceControllerPluginVersion,
|
||||
QString const &ingenicoISelfCCPluginVersion,
|
||||
QString const &mobilisisCalculatePricePluginVersion,
|
||||
QString const &mobilisisCalculatePriceConfigUiVersion,
|
||||
QString const &prmCalculatePricePluginVersion,
|
||||
QString const &prmCalculatePriceConfigUiPluginVersion,
|
||||
QString const &tcpZVTPluginVersion);
|
||||
|
||||
QString setUpdatesAvailable();
|
||||
bool checkForAvailableUpdates();
|
||||
};
|
||||
|
||||
#endif // ISMAS_CLIENT_H_INCLUDED
|
Loading…
Reference in New Issue
Block a user