SEBWIN-487 added battery log event for power grid status
This commit is contained in:
parent
34f25d51e8
commit
c478b3b4a2
1 changed files with 27 additions and 13 deletions
|
@ -38,6 +38,7 @@ namespace SafeExamBrowser.Server
|
|||
private FileSystem fileSystem;
|
||||
private string connectionToken;
|
||||
private int currentPowerSupplyValue;
|
||||
private bool connectedToPowergrid;
|
||||
private int currentWlanValue;
|
||||
private string examId;
|
||||
private int handNotificationId;
|
||||
|
@ -455,26 +456,22 @@ namespace SafeExamBrowser.Server
|
|||
try
|
||||
{
|
||||
var value = Convert.ToInt32(status.BatteryCharge * 100);
|
||||
var connected = status.IsOnline;
|
||||
|
||||
if (value != currentPowerSupplyValue)
|
||||
{
|
||||
var authorization = ("Authorization", $"Bearer {oauth2Token}");
|
||||
var chargeInfo = $"{status.BatteryChargeStatus} at {value}%";
|
||||
var contentType = "application/json;charset=UTF-8";
|
||||
var gridInfo = $"{(status.IsOnline ? "connected to" : "disconnected from")} the power grid";
|
||||
var token = ("SEBConnectionToken", connectionToken);
|
||||
var json = new JObject
|
||||
{
|
||||
["type"] = LogLevel.Info.ToLogType(),
|
||||
["timestamp"] = DateTime.Now.ToUnixTimestamp(),
|
||||
["text"] = $"<battery> {chargeInfo}, {status.BatteryTimeRemaining} remaining, {gridInfo}",
|
||||
["numericValue"] = value
|
||||
};
|
||||
var content = json.ToString();
|
||||
|
||||
TryExecute(HttpMethod.Post, api.LogEndpoint, out var response, content, contentType, authorization, token);
|
||||
var text = $"<battery> {chargeInfo}, {status.BatteryTimeRemaining} remaining, {gridInfo}";
|
||||
SendPowerSupplyStatus(text, value);
|
||||
currentPowerSupplyValue = value;
|
||||
}
|
||||
else if (connected != connectedToPowergrid)
|
||||
{
|
||||
var text = $"<battery> Device has been {(connected ? "connected to" : "disconnected from")} power grid";
|
||||
SendPowerSupplyStatus(text, value);
|
||||
connectedToPowergrid = connected;
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
|
@ -482,6 +479,23 @@ namespace SafeExamBrowser.Server
|
|||
}
|
||||
}
|
||||
|
||||
private void SendPowerSupplyStatus(string text, int value)
|
||||
{
|
||||
var authorization = ("Authorization", $"Bearer {oauth2Token}");
|
||||
var contentType = "application/json;charset=UTF-8";
|
||||
var token = ("SEBConnectionToken", connectionToken);
|
||||
var json = new JObject
|
||||
{
|
||||
["type"] = LogLevel.Info.ToLogType(),
|
||||
["timestamp"] = DateTime.Now.ToUnixTimestamp(),
|
||||
["text"] = text,
|
||||
["numericValue"] = value
|
||||
};
|
||||
var content = json.ToString();
|
||||
|
||||
TryExecute(HttpMethod.Post, api.LogEndpoint, out var response, content, contentType, authorization, token);
|
||||
}
|
||||
|
||||
private void WirelessAdapter_NetworksChanged()
|
||||
{
|
||||
const int NOT_CONNECTED = -1;
|
||||
|
|
Loading…
Reference in a new issue