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) {
|
||||
// Build status
|
||||
std::string status_str;
|
||||
bool is_online;
|
||||
{
|
||||
const auto& client_status = data["client_status"];
|
||||
if (client_status.isArray() && !client_status.empty()) {
|
||||
const auto device = client_status.getMemberNames()[0];
|
||||
status_str = "[\""+client_status[device].asString()+"\", \""+device+"\"]";
|
||||
is_online = true;
|
||||
} else {
|
||||
status_str = R"(["offline", "none"])";
|
||||
is_online = false;
|
||||
}
|
||||
}
|
||||
|
||||
// Insert
|
||||
db << "INSERT INTO user_presences (user_id, is_initial, timestamp, status, activities)"
|
||||
" 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