Commify.Titan.API.RabbitMQ
0.6.0
See the version list below for details.
dotnet add package Commify.Titan.API.RabbitMQ --version 0.6.0
NuGet\Install-Package Commify.Titan.API.RabbitMQ -Version 0.6.0
<PackageReference Include="Commify.Titan.API.RabbitMQ" Version="0.6.0" />
<PackageVersion Include="Commify.Titan.API.RabbitMQ" Version="0.6.0" />
<PackageReference Include="Commify.Titan.API.RabbitMQ" />
paket add Commify.Titan.API.RabbitMQ --version 0.6.0
#r "nuget: Commify.Titan.API.RabbitMQ, 0.6.0"
#:package Commify.Titan.API.RabbitMQ@0.6.0
#addin nuget:?package=Commify.Titan.API.RabbitMQ&version=0.6.0
#tool nuget:?package=Commify.Titan.API.RabbitMQ&version=0.6.0
Commify.Titan.API.RabbitMQ
Self-contained NuGet package that enables RabbitMQ messaging to any .NET 8 or .NET 10 app.
Contact
Titan API Team
Configuration
The necessary configuration in appsettings is:
RabbitMQ
"TitanCommunication": {
"RabbitMQ": {
"ConnectionString" : "connection_string",
"Host": "host" //if connection string is not available
"Port": 5672 //if connection string is not available
"BasicCredentials": { //if set will use basic auth, if not, will fall back to AAD token authentication
"Username": "username",
"Password": "password"
}
}
}
Identity
"Identity": {
"WorkstreamToken": {
"KeyVaultUrl": "https://my-key-vault.net/",
"ManagedIdentity": "managedIdentityId"
},
"Mappings": [
{
"Key": "example-service",
"Value": "exampleServiceId"
}
]
}
Additional environment variables:
K8S_POD_NAME(Required for unique queue generation)
Usage
Publisher
To enable it, this component offers a selection of extension methods over IServiceCollection:
RegisterEventPublisherhandles event publishing, no configuration needed.RegisterMessagePublisherregisters anIMessagePublisher<TMessage>that publishes messages to the configured virtual host and exchange name. Comes in two flavours, one that providesIServiceProviderin the options delegate and one that doesn't.RegisterMessagePublisherWithOutboxregisters anIOutboxMessagePublisher<TMessage>that publishes messages using an outbox to the configured virtual host and exchange name. Comes in two flavours, one that providesIServiceProviderin the options delegate and one that doesn't.
Consumer
To enable it, this component offers a selection of extension methods over IServiceCollection:
RegisterEventConsumerhandles event consuming, no configuration needed.RegisterMessageConsumerrequires the user to provide an implementation ofIMessageConsumer<TMessage>, which will be called when a message is consumed. Configuration requires a virtual host, an exchange name to bind to, the exchange type and an optional queue name. If the queue name is not specified it will be generated automatically with a name based on theK8S_POD_NAMEvariable and will self-delete when the application is stopped. Comes in two flavours, one that providesIServiceProviderin the options delegate and one that doesn't.RegisterChannelMessageConsumerregisters aChannel<QueueMessage<TMessage>>that can be used to consume messages. Configuration requires a virtual host, an exchange name to bind to, the exchange type and an optional queue name. If the queue name is not specified it will be generated automatically with a name based on theK8S_POD_NAMEvariable and will self-delete when the application is stopped. Comes in two flavours, one that providesIServiceProviderin the options delegate and one that doesn't.
Custom implementation
If a more flexible implementation is desired, only needing the connection management part with absolute freedom over publishing and consuming messages we also provide the RegisterRabbitMQMessaging extension method. It will only register a singleton IConnectionManagement.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Commify.Titan.API.CommonComponents (>= 0.23.0)
- Commify.Titan.API.Logging (>= 0.36.0)
- Commify.Titan.TokenRetrieval.Nuget (>= 0.11.0)
- Microsoft.EntityFrameworkCore.Design (>= 10.0.0)
- Microsoft.Extensions.Configuration.UserSecrets (>= 6.0.1)
- Npgsql.EntityFrameworkCore.PostgreSQL (>= 10.0.0)
- RabbitMQ.Client (>= 7.2.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.1.0 | 0 | 3/13/2026 |
| 1.0.6 | 78 | 3/10/2026 |
| 1.0.5 | 105 | 3/9/2026 |
| 1.0.4 | 85 | 3/8/2026 |
| 1.0.3 | 81 | 3/7/2026 |
| 1.0.2 | 81 | 3/7/2026 |
| 1.0.1 | 81 | 3/6/2026 |
| 1.0.0 | 76 | 3/6/2026 |
| 0.16.0 | 79 | 3/6/2026 |
| 0.15.0 | 79 | 3/6/2026 |
| 0.14.0 | 82 | 3/5/2026 |
| 0.13.0 | 77 | 3/5/2026 |
| 0.8.0 | 78 | 3/5/2026 |
| 0.7.0 | 78 | 3/5/2026 |
| 0.6.0 | 88 | 3/2/2026 |
| 0.5.0 | 87 | 2/24/2026 |
| 0.1.0 | 110 | 2/20/2026 |