{"id":37557147,"url":"https://github.com/guiorgy/mqttsql","last_synced_at":"2026-01-16T09:01:03.179Z","repository":{"id":129764730,"uuid":"431283490","full_name":"Guiorgy/MqttSql","owner":"Guiorgy","description":"A simple .Net Core Windows/systemd service that subscribes to MQTT brokers and writes the messages into a local SQLite database","archived":false,"fork":false,"pushed_at":"2025-12-10T19:29:33.000Z","size":843,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-13T06:58:12.202Z","etag":null,"topics":["mqtt","mqtt-client","mqtt-service","netcore","sqlite","sqlite-database","windows-service","windows-services"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Guiorgy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-11-23T23:20:25.000Z","updated_at":"2024-09-18T14:31:57.000Z","dependencies_parsed_at":"2023-11-25T16:25:38.574Z","dependency_job_id":"da8a993d-f23c-4383-8020-2f5b6d5d3253","html_url":"https://github.com/Guiorgy/MqttSql","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/Guiorgy/MqttSql","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Guiorgy%2FMqttSql","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Guiorgy%2FMqttSql/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Guiorgy%2FMqttSql/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Guiorgy%2FMqttSql/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Guiorgy","download_url":"https://codeload.github.com/Guiorgy/MqttSql/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Guiorgy%2FMqttSql/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478049,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T06:30:42.265Z","status":"ssl_error","status_checked_at":"2026-01-16T06:30:16.248Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mqtt","mqtt-client","mqtt-service","netcore","sqlite","sqlite-database","windows-service","windows-services"],"created_at":"2026-01-16T09:00:56.757Z","updated_at":"2026-01-16T09:01:03.094Z","avatar_url":"https://github.com/Guiorgy.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MqttSql\n\n A simple .Net Core Windows/systemd service that subscribes to MQTT brokers and writes the messages into a local SQLite database.\n\n## Configuration\n\n The service will look for a `config.json` file in the same directory with the executable. A sample of the configuration file:\n\n ```json\n[\n  {\n    \"host\": \"192.168.0.101\",\n    \"port\": 1883,\n    \"user\": \"user1\",\n    \"password\": \"password1\",\n    \"topic\": \"some/topic/1\",\n    \"table\": \"table1\"\n  },\n  {\n    \"host\": \"192.168.0.102\",\n    \"port\": 1883,\n    \"user\": \"user2\",\n    \"password\": \"password2\",\n    \"topic\": \"some/topic/2\",\n    \"table\": \"table2\"\n  }\n]\n ```\n\n Where `table` is the name of the table to create and write to in the SQLite database. The database will also be placed in the same directory with the name `database.sqlite`.\n\n## Installation\n\n Make sure that [.Net Core 3.1](https://dotnet.microsoft.com/download/dotnet) or higher is installed. Example for Ubuntu 20.04:\n\n ```sh\n wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb\n sudo dpkg -i packages-microsoft-prod.deb\n sudo rm packages-microsoft-prod.deb\n sudo apt update\n sudo apt install -y dotnet-runtime-3.1=3.1.21-1\n ```\n\n This project uses [Topshelf](https://github.com/Topshelf/Topshelf) to manage the Windows service. The Linux systemd installation will be the same as with Topshelf.\n\n To install the service, open an elevated shell window and navigate to the directory with the executable, for example:\n\n `cd \"C:\\Program Files\\MqttSql` for Windows and `cd ~/MqttSql` for Linux.\n\n And run the executable with `install` and `start` arguments, for example:\n\n `.\\MqttSql.exe install start` for Windows and `sudo ./MqttSql install --user user1 start` for Linux, where `-u` or `--user` arguments can be used to set the user the service should run with (default `root`).\n\n To unregister and uninstall the service, run the executable with the `uninstall` argument, for example:\n\n `.\\MqttSql.exe uninstall` for Windows and `sudo ./MqttSql uninstall` for Linux.\n\n Alternatively on Windows, you can use the Extractor tool included in the project, which will put all the necesary files into the target directory, install the .Net Core runtime if necesary and install the service.\n\n## GPLv3 License\n\nCopyright (C) 2024  Guiorgy\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program.  If not, see \u003chttps://www.gnu.org/licenses/\u003e.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguiorgy%2Fmqttsql","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fguiorgy%2Fmqttsql","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguiorgy%2Fmqttsql/lists"}