Telemetry for mic and camera muted

This commit is contained in:
Enrico Giordani
2020-09-01 17:42:56 +02:00
parent efa756ac5c
commit e41c1a4b21
3 changed files with 32 additions and 6 deletions

View File

@@ -12,6 +12,7 @@
#include <CameraStateUpdateChannels.h>
#include "logging.h"
#include "trace.h"
extern "C" IMAGE_DOS_HEADER __ImageBase;
@@ -71,7 +72,10 @@ void VideoConferenceModule::reverseMicrophoneMute()
{
if (microphoneEndpoint->SetMute(!currentMute, NULL) == S_OK)
{
//toolbar.setMicrophoneMute(!currentMute);
if (!currentMute)
{
Trace::MicrophoneMuted();
}
}
}
@@ -120,14 +124,22 @@ bool VideoConferenceModule::getMicrophoneMuteState()
void VideoConferenceModule::reverseVirtualCameraMuteState()
{
bool camera_muted = false;
if (!instance->_settingsUpdateChannel.has_value())
{
return;
}
instance->_settingsUpdateChannel->access([](auto settingsMemory) {
instance->_settingsUpdateChannel->access([&camera_muted](auto settingsMemory) {
auto settings = reinterpret_cast<CameraSettingsUpdateChannel*>(settingsMemory._data);
settings->useOverlayImage = !settings->useOverlayImage;
camera_muted = settings->useOverlayImage;
});
if (camera_muted)
{
Trace::CameraMuted();
}
}
bool VideoConferenceModule::getVirtualCameraMuteState()

View File

@@ -28,10 +28,24 @@ void Trace::SettingsChanged() noexcept
TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE));
}
void Trace::MuteMic() noexcept
void Trace::MicrophoneMuted() noexcept
{
TraceLoggingWrite(
g_hProvider,
"VideoConference_MicrophoneMuted",
TraceLoggingBoolean(true, "MicrophoneMuted"),
ProjectTelemetryPrivacyDataTag(ProjectTelemetryTag_ProductAndServicePerformance),
TraceLoggingBoolean(TRUE, "UTCReplace_AppSessionGuid"),
TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE));
}
void Trace::MuteCamera() noexcept
void Trace::CameraMuted() noexcept
{
TraceLoggingWrite(
g_hProvider,
"VideoConference_CameraMuted",
TraceLoggingBoolean(true, "CameraMuted"),
ProjectTelemetryPrivacyDataTag(ProjectTelemetryTag_ProductAndServicePerformance),
TraceLoggingBoolean(TRUE, "UTCReplace_AppSessionGuid"),
TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE));
}

View File

@@ -6,6 +6,6 @@ public:
static void RegisterProvider() noexcept;
static void UnregisterProvider() noexcept;
static void SettingsChanged() noexcept;
static void MuteMic() noexcept;
static void MuteCamera() noexcept;
static void MicrophoneMuted() noexcept;
static void CameraMuted() noexcept;
};