async void chimneyMpdServer_OnStats(object sender, ResponseEventArgs e)
{
string response = string.Empty;
response += "artists: " + await Dbconnection.ExecuteScalarAsync<int>("SELECT COUNT(*) FROM Artists") + "\n";
response += "albums: " + await Dbconnection.ExecuteScalarAsync<int>("SELECT COUNT(*) FROM Albums") + "\n";
int files = await Dbconnection.ExecuteScalarAsync<int>("SELECT COUNT(*) FROM Files");
response += "songs: " + files + "\n";
response += "uptime: " + DateTime.Now.Subtract(ServerStatedTime).Seconds + "\n";
response += (files > 0) ? "db_playtime: " + await Dbconnection.ExecuteScalarAsync<int>("SELECT SUM(Time) FROM Files") + "\n" : "db_playtime: 0\n";
TimeSpan span = db_last_update.ToUniversalTime().Subtract(new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc));
response += "db_update: " + span.TotalSeconds + "\n";
try
{
#if WINDOWS_PHONE_APP
response += "playtime: " + (ServerPlaytime + BackgroundMediaPlayer.Current.Position.TotalSeconds) + "\n";
#else
await Windows.ApplicationModel.Core.CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Normal,
() =>
{
response += "playtime: " + (ServerPlaytime + ChimneyMPDMediaElement.Position.TotalSeconds) + "\n";
});
#endif
}
catch (Exception ex)
{
Debug.WriteLine(ex.Message);
response += "playtime: 0\n";
}
chimneyMpdServer.AppendResponse(response, e.id, e.position);
}