├── .dockerignore ├── .github └── workflows │ └── publish-docker-image.yaml ├── .gitignore ├── Dockerfile ├── LICENSE ├── README.md ├── config └── settings.json ├── docs ├── configuration.md ├── images │ ├── expression-example-car.gif │ ├── expression-example-freezer.gif │ └── simulator-running.gif └── math_expression.md ├── mqtt-simulator ├── main.py ├── publisher.py ├── settings_classes │ ├── __init__.py │ ├── broker_settings.py │ ├── client_settings.py │ ├── data_settings.py │ ├── data_settings_bool.py │ ├── data_settings_factory.py │ ├── data_settings_math_expression.py │ ├── data_settings_number.py │ ├── data_settings_raw_value.py │ ├── topic_settings.py │ └── topic_settings_factory.py ├── simulator.py └── utils │ ├── __init__.py │ ├── exceptions │ └── simulator_validation_error.py │ ├── print_validation_error.py │ ├── read_publishers.py │ ├── should_run_with_probability.py │ └── validate_list_field.py ├── pyproject.toml ├── requirements.txt └── uv.lock /.dockerignore: -------------------------------------------------------------------------------- 1 | LICENSE 2 | *.md 3 | docs 4 | venv 5 | -------------------------------------------------------------------------------- /.github/workflows/publish-docker-image.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/.github/workflows/publish-docker-image.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/.gitignore -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/README.md -------------------------------------------------------------------------------- /config/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/config/settings.json -------------------------------------------------------------------------------- /docs/configuration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/docs/configuration.md -------------------------------------------------------------------------------- /docs/images/expression-example-car.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/docs/images/expression-example-car.gif -------------------------------------------------------------------------------- /docs/images/expression-example-freezer.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/docs/images/expression-example-freezer.gif -------------------------------------------------------------------------------- /docs/images/simulator-running.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/docs/images/simulator-running.gif -------------------------------------------------------------------------------- /docs/math_expression.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/docs/math_expression.md -------------------------------------------------------------------------------- /mqtt-simulator/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/main.py -------------------------------------------------------------------------------- /mqtt-simulator/publisher.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/publisher.py -------------------------------------------------------------------------------- /mqtt-simulator/settings_classes/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/settings_classes/__init__.py -------------------------------------------------------------------------------- /mqtt-simulator/settings_classes/broker_settings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/settings_classes/broker_settings.py -------------------------------------------------------------------------------- /mqtt-simulator/settings_classes/client_settings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/settings_classes/client_settings.py -------------------------------------------------------------------------------- /mqtt-simulator/settings_classes/data_settings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/settings_classes/data_settings.py -------------------------------------------------------------------------------- /mqtt-simulator/settings_classes/data_settings_bool.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/settings_classes/data_settings_bool.py -------------------------------------------------------------------------------- /mqtt-simulator/settings_classes/data_settings_factory.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/settings_classes/data_settings_factory.py -------------------------------------------------------------------------------- /mqtt-simulator/settings_classes/data_settings_math_expression.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/settings_classes/data_settings_math_expression.py -------------------------------------------------------------------------------- /mqtt-simulator/settings_classes/data_settings_number.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/settings_classes/data_settings_number.py -------------------------------------------------------------------------------- /mqtt-simulator/settings_classes/data_settings_raw_value.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/settings_classes/data_settings_raw_value.py -------------------------------------------------------------------------------- /mqtt-simulator/settings_classes/topic_settings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/settings_classes/topic_settings.py -------------------------------------------------------------------------------- /mqtt-simulator/settings_classes/topic_settings_factory.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/settings_classes/topic_settings_factory.py -------------------------------------------------------------------------------- /mqtt-simulator/simulator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/simulator.py -------------------------------------------------------------------------------- /mqtt-simulator/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /mqtt-simulator/utils/exceptions/simulator_validation_error.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/utils/exceptions/simulator_validation_error.py -------------------------------------------------------------------------------- /mqtt-simulator/utils/print_validation_error.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/utils/print_validation_error.py -------------------------------------------------------------------------------- /mqtt-simulator/utils/read_publishers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/utils/read_publishers.py -------------------------------------------------------------------------------- /mqtt-simulator/utils/should_run_with_probability.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/utils/should_run_with_probability.py -------------------------------------------------------------------------------- /mqtt-simulator/utils/validate_list_field.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/mqtt-simulator/utils/validate_list_field.py -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/pyproject.toml -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/requirements.txt -------------------------------------------------------------------------------- /uv.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DamascenoRafael/mqtt-simulator/HEAD/uv.lock --------------------------------------------------------------------------------