2019-11-14 14:45:32 +00:00
|
|
|
using System.Collections.Generic;
|
|
|
|
|
2019-11-17 16:27:58 +00:00
|
|
|
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>
|
2019-11-17 16:27:58 +00:00
|
|
|
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>
|
2019-11-15 15:53:20 +00:00
|
|
|
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>
|
2019-11-17 13:29:33 +00:00
|
|
|
Dictionary<string, object> GetTelemetryData();
|
2019-11-14 14:45:32 +00:00
|
|
|
}
|
|
|
|
}
|