I've been installed 'RabbitMQ Delayed Message Plugin'. and can be see on plugins list of RabbitMq.
and configured MassTnasit with RabbitMq Using the follow code:
var services = new ServiceCollection();
services.AddMassTransit(x =>
{
x.AddRabbitMqMessageScheduler();
x.UsingRabbitMq((context, cfg) =>
{
cfg.UseDelayedExchangeMessageScheduler();
cfg.ConfigureEndpoints(context);
});
});
and injected 'IMessageScheduler' interface to my business service and called 'IMessageScheduler.ScheduledPublish<>()'.
but I got this error: unknown exchange type 'x-delay-message' RabbitMq with MassTransit
For that version of RabbitMQ, you need the latest version of the plug-in which is available on GitHub.
I've updated the MassTransit Docker image to the latest as well: MassTransit/RabbitMQ