CRAS: cras_server_metrics - Fix some bugs about device type

Fix some mistakes about device type.
1. Replace CRAS_METRICS_DEVICE_NORMAL(ABNORMAL)_SILENT_HOTWORD with
CRAS_METRICS_DEVICE_SILENT_HOTWORD because the silent hotword should
always be in the normal situation.
2. Typo 'slient' -> 'silent'
3. Let CRAS_CLIENT_TYPE_SERVER_STREAM be converted to string.

BUG=b:141286272
TEST=These logs can be recorded correctly on eve.

Change-Id: I9d6cec57278db3f61df474d40ad1968443363f34
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/adhd/+/1836844
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Yu-Hsuan Hsu <yuhsuan@chromium.org>
Commit-Queue: Yu-Hsuan Hsu <yuhsuan@chromium.org>
diff --git a/cras/src/common/cras_types.h b/cras/src/common/cras_types.h
index 1a9e6c0..38d58bd 100644
--- a/cras/src/common/cras_types.h
+++ b/cras/src/common/cras_types.h
@@ -196,6 +196,7 @@
 	ENUM_STR(CRAS_CLIENT_TYPE_CHROME)
 	ENUM_STR(CRAS_CLIENT_TYPE_ARC)
 	ENUM_STR(CRAS_CLIENT_TYPE_CROSVM)
+	ENUM_STR(CRAS_CLIENT_TYPE_SERVER_STREAM)
 	default:
 		return "INVALID_CLIENT_TYPE";
 	}
diff --git a/cras/src/server/cras_server_metrics.c b/cras/src/server/cras_server_metrics.c
index ca169be..5f51e83 100644
--- a/cras/src/server/cras_server_metrics.c
+++ b/cras/src/server/cras_server_metrics.c
@@ -120,9 +120,8 @@
 	CRAS_METRICS_DEVICE_BLUETOOTH,
 	CRAS_METRICS_DEVICE_NO_DEVICE,
 	CRAS_METRICS_DEVICE_NORMAL_FALLBACK,
-	CRAS_METRICS_DEVICE_NORMAL_SILENT_HOTWORD,
 	CRAS_METRICS_DEVICE_ABNORMAL_FALLBACK,
-	CRAS_METRICS_DEVICE_ABNORMAL_SILENT_HOTWORD,
+	CRAS_METRICS_DEVICE_SILENT_HOTWORD,
 	CRAS_METRICS_DEVICE_UNKNOWN,
 };
 
@@ -234,14 +233,13 @@
 		return "Bluetooth";
 	case CRAS_METRICS_DEVICE_NO_DEVICE:
 		return "NoDevice";
+	/* Other dummy devices. */
 	case CRAS_METRICS_DEVICE_NORMAL_FALLBACK:
 		return "NormalFallback";
-	case CRAS_METRICS_DEVICE_NORMAL_SILENT_HOTWORD:
-		return "NormalSlientHotword";
 	case CRAS_METRICS_DEVICE_ABNORMAL_FALLBACK:
 		return "AbnormalFallback";
-	case CRAS_METRICS_DEVICE_ABNORMAL_SILENT_HOTWORD:
-		return "AbnormalSlientHotword";
+	case CRAS_METRICS_DEVICE_SILENT_HOTWORD:
+		return "SilentHotword";
 	case CRAS_METRICS_DEVICE_UNKNOWN:
 		return "Unknown";
 	default:
@@ -254,31 +252,19 @@
 {
 	/* Check whether it is a special device. */
 	if (iodev->info.idx < MAX_SPECIAL_DEVICE_IDX) {
-		if (iodev->active_node->type ==
-		    CRAS_NODE_TYPE_FALLBACK_NORMAL) {
-			switch (iodev->info.idx) {
-			case NO_DEVICE:
-				syslog(LOG_ERR,
-				       "The invalid device has been used.");
-				return CRAS_METRICS_DEVICE_NO_DEVICE;
-			case SILENT_RECORD_DEVICE:
-			case SILENT_PLAYBACK_DEVICE:
+		switch (iodev->info.idx) {
+		case NO_DEVICE:
+			syslog(LOG_ERR, "The invalid device has been used.");
+			return CRAS_METRICS_DEVICE_NO_DEVICE;
+		case SILENT_RECORD_DEVICE:
+		case SILENT_PLAYBACK_DEVICE:
+			if (iodev->active_node->type ==
+			    CRAS_NODE_TYPE_FALLBACK_NORMAL)
 				return CRAS_METRICS_DEVICE_NORMAL_FALLBACK;
-			case SILENT_HOTWORD_DEVICE:
-				return CRAS_METRICS_DEVICE_NORMAL_SILENT_HOTWORD;
-			}
-		} else {
-			switch (iodev->info.idx) {
-			case NO_DEVICE:
-				syslog(LOG_ERR,
-				       "The invalid device has been used.");
-				return CRAS_METRICS_DEVICE_NO_DEVICE;
-			case SILENT_RECORD_DEVICE:
-			case SILENT_PLAYBACK_DEVICE:
+			else
 				return CRAS_METRICS_DEVICE_ABNORMAL_FALLBACK;
-			case SILENT_HOTWORD_DEVICE:
-				return CRAS_METRICS_DEVICE_ABNORMAL_SILENT_HOTWORD;
-			}
+		case SILENT_HOTWORD_DEVICE:
+			return CRAS_METRICS_DEVICE_SILENT_HOTWORD;
 		}
 	}