Initial commit

This commit is contained in:
2026-07-03 16:31:37 +07:00
commit 899c7c637d
1939 changed files with 641750 additions and 0 deletions

View File

@@ -0,0 +1,62 @@
using RobotNet.VDA5050.Connection;
using RobotNet.VDA5050.Factsheet;
using RobotNet.VDA5050.InstantAction;
using RobotNet.VDA5050.State;
using RobotNet.VDA5050.Type;
using RobotNet.VDA5050.Visualization;
namespace RobotNet10.RobotApp.Services.Robot.Connection;
/// <summary>
/// Service interface for managing MQTT connections to robots via VDA5050 protocol
/// </summary>
public interface IRobotConnectionsService
{
/// <summary>
/// Start MQTT connection and subscribe to topics
/// </summary>
Task StartAsync(CancellationToken? cancellationToken);
/// <summary>
/// Stop MQTT connection
/// </summary>
Task StopAsync();
/// <summary>
/// Check if MQTT client is connected
/// </summary>
bool IsConnected { get; }
/// <summary>
/// Publish order message from robot
/// </summary>
Task<bool> PublishStateAsync(StateMsg state, CancellationToken cancellationToken = default);
/// <summary>
/// Publish visualization message from robot
/// </summary>
Task<bool> PublishVisualizationAsync(VisualizationMsg visualization, CancellationToken cancellationToken = default);
/// <summary>
/// Publish factsheet message from robot
/// </summary>
/// <param name="factsheet"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
Task<bool> PublishFactsheetAsync(FactSheetMsg factsheet, CancellationToken cancellationToken = default);
/// <summary>
/// Publish connection message from robot
/// </summary>
/// <param name="connection"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
Task<bool> PublishConnectionAsync(ConnectionMsg connection, CancellationToken cancellationToken = default);
/// <summary>
/// Publish Connection state from robot
/// </summary>
/// <param name="state"></param>
/// <returns></returns>
Task PublishConnectionStateAsync(ConnectionState state);
}