Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(501)

Unified Diff: chrome/browser/chromeos/policy/device_status_collector.cc

Issue 2736903004: Add sound volume to device attribute reporting (Closed)
Patch Set: Fixed tests (initialize CrasAudioHandler), added sound volume test Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/policy/device_status_collector.cc
diff --git a/chrome/browser/chromeos/policy/device_status_collector.cc b/chrome/browser/chromeos/policy/device_status_collector.cc
index 06a4c76a7ce5217da056ec226e24a643977e3d94..e78f49766e8d9945771018541a34611e53b51217 100644
--- a/chrome/browser/chromeos/policy/device_status_collector.cc
+++ b/chrome/browser/chromeos/policy/device_status_collector.cc
@@ -43,6 +43,7 @@
#include "chrome/browser/policy/profile_policy_connector_factory.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/common/pref_names.h"
+#include "chromeos/audio/cras_audio_handler.h"
#include "chromeos/dbus/dbus_thread_manager.h"
#include "chromeos/dbus/update_engine_client.h"
#include "chromeos/disks/disk_mount_manager.h"
@@ -485,6 +486,8 @@ DeviceStatusCollector::DeviceStatusCollector(
chromeos::kReportOsUpdateStatus, callback);
running_kiosk_app_subscription_ = cros_settings_->AddSettingsObserver(
chromeos::kReportRunningKioskApp, callback);
+ sound_volume_subscription_ = cros_settings_->AddSettingsObserver(
+ chromeos::kReportSoundVolume, callback);
// Fetch the current values of the policies.
UpdateReportingSettings();
@@ -558,6 +561,10 @@ void DeviceStatusCollector::UpdateReportingSettings() {
chromeos::kReportDeviceUsers, &report_users_)) {
report_users_ = true;
}
+ if (!cros_settings_->GetBoolean(
+ chromeos::kReportSoundVolume, &report_sound_volume_)) {
+ report_sound_volume_ = true;
+ }
const bool already_reporting_hardware_status = report_hardware_status_;
if (!cros_settings_->GetBoolean(
@@ -1079,6 +1086,13 @@ bool DeviceStatusCollector::GetRunningKioskApp(
return true;
}
+bool DeviceStatusCollector::GetSoundVolume(
+ em::DeviceStatusReportRequest* status) {
+ chromeos::CrasAudioHandler* audio_handler = chromeos::CrasAudioHandler::Get();
+ status->set_sound_volume(audio_handler->GetOutputVolumePercent());
+ return true;
+}
+
void DeviceStatusCollector::GetDeviceAndSessionStatusAsync(
const StatusCallback& response) {
// Must be on creation thread since some stats are written to in that thread
@@ -1131,6 +1145,9 @@ void DeviceStatusCollector::GetDeviceStatus(
if (report_running_kiosk_app_)
anything_reported |= GetRunningKioskApp(status);
+ if (report_sound_volume_)
+ anything_reported |= GetSoundVolume(status);
+
// Wipe pointer if we didn't actually add any data.
if (!anything_reported)
state->ResetDeviceStatus();

Powered by Google App Engine
This is Rietveld 408576698