Main functions of IoTSharp open source IoT platform:
1. Support data collection protocols based on MQTT, CoAP, and HTTP protocols
2. Support X509 encryption verification, username and password and batch token authentication
3. Provide STM32 acquisition SDK based on rt-thread
4. Provide C#-based collection sdk for Raspberry Pi
5. Provide regular collection sdk in other linux
6. Support the digital twin concept, so the data is divided into attributes and telemetry data, and the telemetry data is stored in time series data.
7. Sub-table storage is supported through EFCore.Sharding. The default is to store on a monthly basis. Depending on the amount of data, you can modify it to a daily or hourly basis.
8. Through Maikebing.Data.Taos, we support Taosi Data’s time series database TDengine. Maikebing.Data.Taos is currently the only and most complete TDengine support component in the .Net ecosystem.
9. Built-in ZeroMQ service to support distributed message processing based on ZeroMQ.
10. The EventBus message bus is implemented through CAP, and ZeroMQ message bus support is supported through CAP.Extensions, making it possible to achieve a pure .Net ecosystem.
11. Through CAP, message data can be stored in MongoDB LiteDB PostgreSql.
12. Through CAP, messages can be produced and consumed through RabbitMQ Kafka ZeroMQ. When there are multiple servers, one can be used as the main server and the others can be used as auxiliary servers to process all collected data.