mirror of
https://gitlab.com/niansa/dpplogger.git
synced 2025-03-06 20:48:29 +01:00
Minor fix in user presence logging
This commit is contained in:
parent
a45ee4f1d9
commit
3d640d0074
1 changed files with 4 additions and 1 deletions
5
main.cpp
5
main.cpp
|
@ -465,20 +465,23 @@ protected:
|
||||||
void insertUserPresenceUpdate(const Json::Value& data, bool is_initial) {
|
void insertUserPresenceUpdate(const Json::Value& data, bool is_initial) {
|
||||||
// Build status
|
// Build status
|
||||||
std::string status_str;
|
std::string status_str;
|
||||||
|
bool is_online;
|
||||||
{
|
{
|
||||||
const auto& client_status = data["client_status"];
|
const auto& client_status = data["client_status"];
|
||||||
if (client_status.isArray() && !client_status.empty()) {
|
if (client_status.isArray() && !client_status.empty()) {
|
||||||
const auto device = client_status.getMemberNames()[0];
|
const auto device = client_status.getMemberNames()[0];
|
||||||
status_str = "[\""+client_status[device].asString()+"\", \""+device+"\"]";
|
status_str = "[\""+client_status[device].asString()+"\", \""+device+"\"]";
|
||||||
|
is_online = true;
|
||||||
} else {
|
} else {
|
||||||
status_str = R"(["offline", "none"])";
|
status_str = R"(["offline", "none"])";
|
||||||
|
is_online = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Insert
|
// Insert
|
||||||
db << "INSERT INTO user_presences (user_id, is_initial, timestamp, status, activities)"
|
db << "INSERT INTO user_presences (user_id, is_initial, timestamp, status, activities)"
|
||||||
" VALUES (?, ?, ?, ?, ? );"
|
" VALUES (?, ?, ?, ?, ? );"
|
||||||
<< data["user"]["id"].asString() << is_initial << std::to_string(time(nullptr)) << status_str << GetJSONAsOptionalJSONData(data["activities"]);
|
<< data["user"]["id"].asString() << is_initial << std::to_string(time(nullptr)) << status_str << (is_online?GetJSONAsOptionalJSONData(data["activities"]):std::optional<std::string>());
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Add table
Reference in a new issue