Microphone Position Optimal

Records certain changes of the boom arm position.

Supported only on some devices.

Data Point

   
Name in Jabra SDK DeviceLoggingEventArgs.Data["Boom Position Guidance OK"]
Trigger When microphone position changes to a degree, that the quality of recorded audio is affected.
Event Subscription IDeviceService.DeviceLoggingInput
Value Range True = Microphone position is optimal.
False = Microphone position is not optimal.

Code Sample

The code sample demonstrates the event subscription. It shows how to parse the event to get back the data for the data point.

using System;
using JabraSDK;
using Newtonsoft.Json.Linq;

namespace Jabra.TelemetryExample
{
    public class TelemetryPrinter
    {
        public TelemetryPrinter(IDeviceService deviceService)
        {
            deviceService.DeviceAdded += OnDeviceAddedEvent;
            deviceService.DeviceLoggingInput += OnDeviceLoggingInputEvent;
        }

        private void OnDeviceAddedEvent(object sender, DeviceAddedEventArgs e)
        {
            // Return if device logging is _not_ supported by devices
            if (!e.Device.IsFeatureSupported(DeviceFeature.Logging))
                return;

            // Return if device logging is already enabled for device
            if (e.Device.IsDeviceLogEnabled)
                return;

            try
            {
                var status = e.Device.DeviceLoggingConfiguration(true);
                if (status == DeviceStatus.ReturnOk)
                    Console.WriteLine($"Device logging enabled for: {e.Device.Name}");
            }
            catch (Exception)
            {
                // Exception raised when enabling device logging
            }
        }

        private void OnDeviceLoggingInputEvent(object sender, DeviceLoggingEventArgs e)
        {
            var eventPayload = JObject.Parse(e.Data);
            var microphonePositionOptimalToken = eventPayload["Boom Position Guidance OK"];
            if (microphonePositionOptimalToken != null)
            {
                Console.WriteLine($"Microphone position is optimal: {microphonePositionOptimalToken}");
            }
        }
    }
}