This project is an IoT platform designed to support massive device connectivity using WebSocket and MQTT protocols for communication with clients.
- Device Connectivity: Supports a large number of devices connecting simultaneously.
- WebSocket Communication: Enables real-time communication with clients.
- MQTT Protocol: Efficiently manages device messaging and communication.
iot-platform
├── cmd
│ └── main.go # Entry point of the application
├── internal
│ ├── mqtt
│ │ └── client.go # MQTT client management
│ ├── websocket
│ │ └── client.go # WebSocket client management
│ └── device
│ └── manager.go # Device management
├── pkg
│ └── config
│ └── config.go # Configuration management
├── go.mod # Module definition
└── README.md # Project documentation
-
Clone the Repository:
git clone <repository-url> cd iot-platform -
Install Dependencies:
go mod tidy -
Run the Application:
go run cmd/main.go
- Ensure that your devices are configured to connect using either MQTT or WebSocket protocols.
- Use the provided methods in the
DeviceManagerto manage device states. - Configure the application settings in the
config.gofile as needed.
Contributions are welcome! Please submit a pull request or open an issue for any enhancements or bug fixes.