blob: 8d1ee3a93637b4a56c937e86ccd0e5f9fe2363e8 [file] [log] [blame]
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/sharing/sharing_metrics.h"
#include "base/metrics/histogram_functions.h"
namespace {
// These values are persisted to logs. Entries should not be renumbered and
// numeric values should never be reused.
enum class SharingMessageType {
kUnknownMessage = 0,
kPingMessage = 1,
kAckMessage = 2,
kClickToCallMessage = 3,
kMaxValue = kClickToCallMessage,
};
SharingMessageType PayloadCaseToMessageType(
chrome_browser_sharing::SharingMessage::PayloadCase payload_case) {
switch (payload_case) {
case chrome_browser_sharing::SharingMessage::PAYLOAD_NOT_SET:
return SharingMessageType::kUnknownMessage;
case chrome_browser_sharing::SharingMessage::kPingMessage:
return SharingMessageType::kPingMessage;
case chrome_browser_sharing::SharingMessage::kAckMessage:
return SharingMessageType::kAckMessage;
case chrome_browser_sharing::SharingMessage::kClickToCallMessage:
return SharingMessageType::kClickToCallMessage;
}
}
} // namespace
void LogSharingMessageReceived(
chrome_browser_sharing::SharingMessage::PayloadCase payload_case) {
base::UmaHistogramEnumeration("Sharing.MessageReceivedType",
PayloadCaseToMessageType(payload_case));
}
void LogClickToCallDevicesToShow(int count) {
base::UmaHistogramExactLinear("Sharing.ClickToCallDevicesToShow", count,
/*value_max=*/20);
}
void LogClickToCallAppsToShow(int count) {
base::UmaHistogramExactLinear("Sharing.ClickToCallAppsToShow", count,
/*value_max=*/20);
}