NucuCar/NucuCar.Domain/Telemetry/ITelemeter.cs

23 lines
881 B
C#
Raw Normal View History

2019-11-14 14:45:32 +00:00
using System.Collections.Generic;
namespace NucuCar.Domain.Telemetry
2019-11-14 14:45:32 +00:00
{
2019-11-24 13:12:12 +00:00
/// <summary>
/// Interface that specifies that the component implementing it is willing to provide telemetry data and can be
/// registered to a publisher such as <see cref="TelemetryPublisherAzure"/>.
/// </summary>
public interface ITelemeter
2019-11-14 14:45:32 +00:00
{
2019-11-24 13:12:12 +00:00
/// <summary>
/// This function should return an identifier that identifies the component providing the telemetry data.
/// </summary>
/// <returns>An identifier for the telemetry source.</returns>
string GetIdentifier();
2019-11-24 13:12:12 +00:00
/// <summary>
/// This function should return a dictionary containing the telemetry data.
/// </summary>
/// <returns>The telemetry data. It should be JSON serializable.</returns>
Dictionary<string, object> GetTelemetryData();
2019-11-14 14:45:32 +00:00
}
}