MQTTnet adalah perpustakaan .NET berkinerja tinggi untuk komunikasi berbasis MQTT. Ini menyediakan klien MQTT dan server MQTT (broker) dan mendukung protokol MQTT hingga versi 5. Ini kompatibel dengan sebagian besar versi .NET Framework dan arsitektur CPU yang didukung.
Dukungan asinkron
Dukungan TLS untuk klien dan server (tetapi bukan server UWP)
Saluran komunikasi yang dapat diperluas (misalnya In-Memory, TCP, TCP+TLS, WS)
Ringan (hanya implementasi MQTT tingkat rendah, tanpa overhead)
Kinerja dioptimalkan (memproses ~150.000 pesan / detik)*
Seragam API di semua versi protokol MQTT yang didukung
Akses ke pesan jejak internal
Unit diuji (~636 tes)
Tidak ada ketergantungan eksternal
* Diuji pada mesin lokal (Intel i7 8700K) dengan klien dan server MQTTnet berjalan dalam proses yang sama menggunakan saluran TCP. Aplikasi untuk verifikasi adalah bagian dari repositori ini dan disimpan di /Tests/MQTTnet.TestApp.NetCore .
Komunikasi melalui TCP (+TLS) atau WS (WebSocket) didukung
Termasuk inti LowLevelMqttClient dengan fungsionalitas tingkat rendah
Juga disertakan ManagedMqttClient yang menjaga koneksi dan langganan secara otomatis. Pesan aplikasi juga dimasukkan dalam antrean dan dijadwalkan ulang untuk tingkat QoS yang lebih tinggi secara otomatis.
Dukungan Rx (melalui proyek lain)
Kompatibel dengan Microsoft Azure IoT Hub
Daftar klien yang terhubung tersedia
Mendukung klien yang terhubung dengan versi protokol berbeda secara bersamaan
Mampu mempublikasikan pesannya sendiri (tidak diperlukan klien loopback)
Mampu menerima setiap pesan (tidak diperlukan klien loopback)
Validasi kredensial klien yang dapat diperluas
Pesan yang disimpan didukung termasuk bertahan melalui metode antarmuka (diperlukan implementasi sendiri)
WebSockets didukung (melalui ASP.NET Core 2.0, nuget terpisah)
Pencegat pesan khusus dapat ditambahkan yang memungkinkan transformasi atau perluasan setiap pesan aplikasi yang diterima
Validasi langganan dan tolak langganan topik tertentu tergantung pada permintaan klien
MQTTnet dikirimkan melalui manajer paket NuGet . Anda dapat menemukan paketnya di sini: https://www.nuget.org/packages/MQTTnet/
Gunakan perintah ini di konsol Package Manager untuk menginstal MQTTnet secara manual:
Install-Package MQTTnet
Contoh penggunaan MQTTnet adalah bagian dari repositori ini. Sebagai permulaan, sampel berikut direkomendasikan:
Terhubung dengan broker
Berlangganan data
Publikasi data
Tuan rumah broker sendiri
Proyek ini telah mengadopsi kode etik yang ditetapkan oleh Perjanjian Kontributor untuk memperjelas perilaku yang diharapkan dalam komunitas kita. Untuk informasi lebih lanjut lihat Kode Etik .NET Foundation.
Proyek ini didukung oleh .NET Foundation.