734ba49e69
- Add projects for libs (standard and micro versions) - Tweak code files, mostly adding compiler defs to include correct namespace - Add test project - Add example projects - Add nuspecs - Update docs - Update build queue to include nF projects - Tweak AppVeyor yaml: + added a build matrix with one job running VS2015 image an the existing build + add a second job to the matrix running a VS2017 image and doing the nanoFramework part of the build - Clone main solution and edit the new one for VS2017 removing all the projects, except the nanoFramework related (left the bulk of the structure there to be picked up when moving stuff to VS2017) Signed-off-by: José Simões <jose.simoes@eclo.solutions> |
||
---|---|---|
Examples | ||
csproj | ||
docs | ||
dotnet | ||
nanoFramework | ||
netmf | ||
nuspec | ||
src | ||
test | ||
.gitattributes | ||
.gitignore | ||
README.md | ||
amqp-nanoFramework.sln | ||
amqp-netmf.sln | ||
amqp.2017.sln | ||
amqp.sln | ||
appveyor.yml | ||
build.2017.cmd | ||
build.cmd | ||
license.txt |
README.md
AMQP.Net Lite
AMQP.Net Lite is a lightweight AMQP 1.0 library for the .Net Framework, .Net Core, Windows Runtime platforms, .Net Micro Framework, .NET nanoFramework and Mono. The library includes both a client and listener to enable peer to peer and broker based messaging.
Documentation
Features
- Full control of AMQP 1.0 protocol behavior.
- Peer-to-peer and brokered messaging.
- Secure communication via TLS and SASL.
- Extensible transport providers.
- Sync and async API support.
- Listener APIs to enable wide range of listener applications, including brokers, routers, proxies, and more.
- A lightweight messaging library that runs on all popular .NET and Windows Runtime platforms.
The following table shows what features are supported on each platform/framework.
TLS | SASL2 | Txn | Task | Serializer | Listener | WebSockets | BufferPooling | |
---|---|---|---|---|---|---|---|---|
net45 | + | + | + | + | + | + | + | + |
net40 | + | + | + | +3 | + | + | + | |
net35 | + | + | + | |||||
netmf | +1 | + | ||||||
nanoFramework | + | + | ||||||
uap10 | + | + | + | |||||
netcore451 | + | + | + | |||||
wpa81 | + | + | + | |||||
win8/wp8 | + | + | + | |||||
netstandard1.34 | + | + | + | + | + | + | + | |
mono/Xamarin5 | + | + | + | + | + | + | + |
- requires a TLS-capable device.
- only SASL PLAIN, EXTERNAL, and ANONYMOUS are currently supported.
- requires Microsoft.Bcl.Async.
- has 3 packages. Supports WebSocket client but not listener.
- projects targeting Mono/Xamarin should be able to consume the netstandard1.3 library.
Tested Platforms
- .Net Framework 3.5, 4.0 and 4.5+.
- .NET Micro Framework 4.2, 4.3, 4.4.
- .NET nanoFramework 1.0.
- .NET Compact Framework 3.9.
- Windows Phone 8 and 8.1.
- Windows Store 8 and 8.1. Universal Windows App 10.
- .Net Core 1.0 on Windows 10 and Ubuntu 14.04.
- Mono on Linux (requires v4.2.1 and up. Only the client APIs are verified and state of the listener APIs is unknown).
Getting Started
- Quick Start Build applications from simple to complex.
- Examples Please take a minute to look at the examples.
- .Net Core If you are looking for information about using amqpnetlite on .Net Core (coreclr, dnxcore50, etc.), your can find the code and a Hello AMQP! example here.
- Interested in the code? Clone and build the projects.
Contributing
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
If you would like to become an contributor to this project please follow the instructions provided in Microsoft Azure Projects Contribution Guidelines.
References
For more information about the Azure Service Bus and AMQP, refer to:
- Azure Service Bus: http://msdn.microsoft.com/en-us/library/ee732537.aspx.
- Azure Service Bus and AMQP: http://msdn.microsoft.com/en-us/library/jj841071.aspx
- Azure Service Bus Event Hub: http://azure.microsoft.com/en-us/services/event-hubs/
- AMQP: http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-overview-v1.0-os.html