blob: 777396f60ac92ca25cc8023ea49e1165fa6dbae7 [file] [log] [blame]
using System;
using System.Collections.Generic;
using System.Text;
using BaSys40.Utils.ResultHandling;
namespace BaSys40.Utils.Client
{
public interface IMessageClient
{
bool IsConnected { get; }
IResult Publish(string topic, string message, Action<IMessagePublishedEventArgs> messagePublishedHandler, byte qosLevel);
IResult Subscribe(string topic, Action<IMessageReceivedEventArgs> messageReceivedHandler, byte qosLevel);
IResult Unsubscribe(string topic);
IResult Start();
IResult Stop();
}
public interface IMessagePublishedEventArgs
{
bool IsPublished { get; }
string MessageId { get; }
}
public interface IMessageReceivedEventArgs
{
string Message { get; }
string Topic { get; }
byte QosLevel { get; }
}
}