{"id":46922413,"url":"https://github.com/wirepas/gateway","last_synced_at":"2026-04-02T12:02:00.217Z","repository":{"id":34362969,"uuid":"170302554","full_name":"wirepas/gateway","owner":"wirepas","description":"Wirepas's Linux gateway reference implementation built on top of Wirepas's dual mcu api and Wirepas' gateway to backend api","archived":false,"fork":false,"pushed_at":"2026-03-27T10:37:32.000Z","size":1086,"stargazers_count":68,"open_issues_count":28,"forks_count":45,"subscribers_count":14,"default_branch":"master","last_synced_at":"2026-03-27T22:31:41.894Z","etag":null,"topics":["backend-apis","dbus","dualmcuapi","reference-gateway","sink-service","transport-service","wirepas-linux-gateway"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wirepas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","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":"2019-02-12T10:56:15.000Z","updated_at":"2026-03-18T10:46:54.000Z","dependencies_parsed_at":"2026-03-27T13:00:29.067Z","dependency_job_id":null,"html_url":"https://github.com/wirepas/gateway","commit_stats":{"total_commits":227,"total_committers":20,"mean_commits":11.35,"dds":0.6607929515418502,"last_synced_commit":"51399dd03d677e73e7e98a5c4096bb4bc135179b"},"previous_names":[],"tags_count":47,"template":false,"template_full_name":null,"purl":"pkg:github/wirepas/gateway","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wirepas%2Fgateway","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wirepas%2Fgateway/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wirepas%2Fgateway/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wirepas%2Fgateway/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wirepas","download_url":"https://codeload.github.com/wirepas/gateway/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wirepas%2Fgateway/sbom","scorecard":{"id":466802,"data":{"date":"2025-07-21","repo":{"name":"github.com/wirepas/gateway","commit":"b739ad8b96365b8b9818daae10e7a227aaab7cb9"},"scorecard":{"version":"v5.2.1-24-gc29a04d4","commit":"c29a04d46d1570393e94662bc34e9906398e1bfa"},"score":6.1,"checks":[{"name":"Maintained","score":9,"reason":"11 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 9","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#maintained"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#code-review"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: .github/SECURITY.md:1","Info: Found linked content: .github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: .github/SECURITY.md:1","Info: Found text in security policy: .github/SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#security-policy"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/docker_dbus_service.yml:1","Warn: no topLevel permission defined: .github/workflows/docker_local_history_service.yml:1","Warn: no topLevel permission defined: .github/workflows/docker_rtc_service.yml:1","Warn: no topLevel permission defined: .github/workflows/docker_sink_service.yml:1","Warn: no topLevel permission defined: .github/workflows/docker_transport_service.yml:1","Warn: no topLevel permission defined: .github/workflows/release_artefacts.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#token-permissions"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#license"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#vulnerabilities"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docker_dbus_service.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_dbus_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_dbus_service.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_dbus_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_dbus_service.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_dbus_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_dbus_service.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_dbus_service.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docker_local_history_service.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_local_history_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_local_history_service.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_local_history_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_local_history_service.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_local_history_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_local_history_service.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_local_history_service.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docker_rtc_service.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_rtc_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_rtc_service.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_rtc_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_rtc_service.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_rtc_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_rtc_service.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_rtc_service.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docker_sink_service.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_sink_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_sink_service.yml:38: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_sink_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_sink_service.yml:57: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_sink_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_sink_service.yml:63: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_sink_service.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docker_transport_service.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_transport_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_transport_service.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_transport_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_transport_service.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_transport_service.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_transport_service.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/docker_transport_service.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_artefacts.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/release_artefacts.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release_artefacts.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/release_artefacts.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release_artefacts.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/release_artefacts.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_artefacts.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/release_artefacts.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release_artefacts.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/wirepas/gateway/release_artefacts.yml/master?enable=pin","Warn: containerImage not pinned by hash: docker/dbus_service/Dockerfile:1: pin your Docker image by updating alpine:3.21 to alpine:3.21@sha256:b6a6be0ff92ab6db8acd94f5d1b7a6c2f0f5d10ce3c24af348d333ac6da80685","Warn: containerImage not pinned by hash: docker/local_history_service/Dockerfile:3","Warn: containerImage not pinned by hash: docker/local_history_service/Dockerfile:38","Warn: containerImage not pinned by hash: docker/rtc_service/Dockerfile:2","Warn: containerImage not pinned by hash: docker/rtc_service/Dockerfile:46","Warn: containerImage not pinned by hash: docker/sink_service/Dockerfile:2","Warn: containerImage not pinned by hash: docker/sink_service/Dockerfile:26","Warn: containerImage not pinned by hash: docker/transport_service/Dockerfile:2","Warn: containerImage not pinned by hash: docker/transport_service/Dockerfile:41","Warn: pipCommand not pinned by hash: docker/local_history_service/Dockerfile:18","Warn: pipCommand not pinned by hash: docker/local_history_service/Dockerfile:31","Warn: pipCommand not pinned by hash: docker/local_history_service/Dockerfile:34","Warn: pipCommand not pinned by hash: docker/rtc_service/Dockerfile:17","Warn: pipCommand not pinned by hash: docker/rtc_service/Dockerfile:36","Warn: pipCommand not pinned by hash: docker/rtc_service/Dockerfile:39","Warn: pipCommand not pinned by hash: docker/rtc_service/Dockerfile:42","Warn: pipCommand not pinned by hash: docker/transport_service/Dockerfile:17","Warn: pipCommand not pinned by hash: docker/transport_service/Dockerfile:30","Warn: pipCommand not pinned by hash: docker/transport_service/Dockerfile:33","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of  18 third-party GitHubAction dependencies pinned","Info:   0 out of   9 containerImage dependencies pinned","Info:   0 out of  10 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#pinned-dependencies"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v1.4.6-rc.2 not signed: https://api.github.com/repos/wirepas/gateway/releases/199546905","Warn: release artifact v1.4.6-rc.1 not signed: https://api.github.com/repos/wirepas/gateway/releases/197515046","Warn: release artifact v1.4.5 not signed: https://api.github.com/repos/wirepas/gateway/releases/168447444","Warn: release artifact v1.4.6-rc.2 does not have provenance: https://api.github.com/repos/wirepas/gateway/releases/199546905","Warn: release artifact v1.4.6-rc.1 does not have provenance: https://api.github.com/repos/wirepas/gateway/releases/197515046","Warn: release artifact v1.4.5 does not have provenance: https://api.github.com/repos/wirepas/gateway/releases/168447444"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#signed-releases"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/docker_dbus_service.yml:25"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#packaging"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-19T12:44:46.253Z","repository_id":34362969,"created_at":"2025-08-19T12:44:46.253Z","updated_at":"2025-08-19T12:44:46.253Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31305971,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T09:48:21.550Z","status":"ssl_error","status_checked_at":"2026-04-02T09:48:19.196Z","response_time":89,"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":["backend-apis","dbus","dualmcuapi","reference-gateway","sink-service","transport-service","wirepas-linux-gateway"],"created_at":"2026-03-11T03:02:09.733Z","updated_at":"2026-04-02T12:02:00.190Z","avatar_url":"https://github.com/wirepas.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Wirepas Linux Gateway\n\n\u003c!-- MarkdownTOC levels=\"1,2\" autolink=\"true\"  --\u003e\n\n- [Gateway overview](#gateway-overview)\n- [Option 1: native installation](#option-1-native-installation)\n- [Option 2: Docker installation](#option-2-docker-installation)\n- [Contributing](#contributing)\n- [License](#license)\n\n\u003c!-- /MarkdownTOC --\u003e\n\n## Gateway overview \n\nThis repository contains Wirepas' reference gateway implementation, which\nrelies on a set of services to exchange data from/to a Wirepas Mesh network\nfrom/to a MQTT broker or host device. The implemented API is described\n[here][wirepas_gateway_to_backend_api].\n\nThe services will be known from now on as sink service and transport service.\nThe sink service is responsible to interface locally with a Wirepas device\nrunning its Dual MCU API. The transport service packs network\nmessages on protobuffers and publishes them on top of MQTT according to\nWirepas Backend API.\n\nFigure 1, provides an overview of the gateway implementation and the\napis involved at each step.\n\n![Wirepas gateway architecture][here_img_overview]\n\n**Figure 1 -** Gateway services overview.\n\n## Option 1: native installation\n\n### Requirements\n\nThe implementation is based on DBus. The C binding used to access DBus is sdbus\nfrom systemd library so even if systemd is not required to be running, the\nlibsystemd must be available.\n\nSystemd version must be higher or equal to *221*. You can check it with:\n\n```shell\nsystemd --version\n```\n\nIn order to build the sink service or the transport python wheel that contains C extensions, systemd headers are needed\n\n```shell\nsudo apt install libsystemd-dev\n```\n\nPython 3 and a recent pip version (\u003e= 18.1)\n\n```shell\nsudo apt install python3 python3-dev python3-gi\nwget https://bootstrap.pypa.io/get-pip.py \\\n   \u0026\u0026 sudo python3 get-pip.py \u0026\u0026 rm get-pip.py \\\n   \u0026\u0026 sudo pip3 install --upgrade pip\n```\n\n### Installation\n\nThe implementation uses system bus that has enforced security.\nIn order to obtain a service name on system bus, the user launching the sink\nservice must be previously declared to system.\nProvided file [*com.wirepas.sink.conf*](sink_service/com.wirepas.sink.conf)\nmust be copied under */etc/dbus-1/system.d/* and edited with the user that will\nlaunch the sink_service (and transport service).\n\nTo change the default wirepas user, please edit the following lines\nfrom com.wirepas.sink.conf:\n\n```xml\n    \u003c!-- Only wirepas user can own the service name --\u003e\n    \u003cpolicy user=\"wirepas\"\u003e\n```\n\n*It is recommended to restart your gateway once this file is copied.*\n\n#### Sink service\n\nYou can either build yourself the sink service by foolowing instructions from [sink_service folder](sink_service)\nor you can use prebuilt version available for each release on [release section of this repository][here_releases].\nDownload the one for your architecture (Arm or Amd64)\n\n#### Transport service\n\nTo build the wheel yourself, please refer to the\n[transport's service readme file][here_transport_readme].\n\nAlternatively, you can use prebuilt Python wheels.\nYou can either get it through [PyPi][wirepas_gateway_pypi] or from the\n[release section of this repository][here_releases].\n\nThe library contains a c extension which will be compiled upon installation (even with prebuilt wheel).\nPlease ensure that you have met all the build requirements prior to\nattempting the installation.\n\nIf you get the wheel from [release section of this repository][here_releases]:\n\n```shell\n    pip3 install wirepas_gateway-*.tar.gz\n```\n\nor from [PyPi][wirepas_gateway_pypi]\n\n```shell\n    pip3 install wirepas_gateway\n```\n\n### Configuration and starting services\n\n#### Sink service configuration\n\nA sink service must be started for each connected sink on Gateway:\n\n```shell\n    sink_service/build/sinkService -p \u003cuart_port\u003e -b \u003cbitrate\u003e -i \u003csink_id\u003e\n```\n\nParameters are:\n\n-   **uart_port:** uart port path (*default:* /dev/ttyACM0)\n-   **bitrate:** bitrate of sink uart (*default:* auto baudrate. 125000, 115200 and 1000000 bps are tested)\n-   **sink_id:** value between 0 and 9 (*default:* 0).\n\nIf multiple sinks are present, they must have a different *sink_id*.\n\n#### Transport service configuration\n\nParameters can be set from command line or from a setting file in YAML format.\nTo get the full list of parameters, please run:\n\n```shell\n    wm-gw --help\n```\n\n#### From command line\n\nHere is an example to start the transport module from the command line:\n\n```shell\n    wm-gw \\\n          --mqtt_hostname \"\u003cserver\u003e\" \\\n          --mqtt_port \u003cport\u003e \\\n          --mqtt_username \u003cuser\u003e \\\n          --mqtt_password \u003cpassword\u003e \\\n          [--mqtt_force_unsecure] \\\n          --gateway_id \u003cgwid\u003e \\\n```\n\nwhere:\n\n-   **mqtt_hostname:** Hostname or IP where the MQTT broker is located\n\n-   **mqtt_port:** MQTT port\n\n-   **mqtt_username:** MQTT user\n\n-   **mqtt_password:** MQTT password\n\n-   **mqtt_force_unsecure:** Toggle to disable TLS handshake.\nNecessary to establish connections to unsecure port (default: 1883).\n\n-   **gateway_id:** The desired gateway id, instead of a random generated one\n\n    \u003e It must be unique for each gateway reporting to same broker\n\n#### From configuration file\n\n```shell\n    wm-gw --settings=settings_files.yml\n```\n\nAll parameters that are accepted by the transport service can be set\nthrough the settings file. An example of a *settings_file.yml*\nfile is given below:\n\n```yaml\n    #\n    # MQTT brocker Settings\n    #\n    mqtt_hostname: \u003cIP or hostname where the MQTT broker is located\u003e\n    mqtt_port: \u003cMQTT port (default: 8883 (secure) or 1883 (local))\u003e\n    mqtt_username: \u003cMQTT user\u003e\n    mqtt_password: \u003cMQTT password\u003e\n    mqtt_force_unsecure: \u003ctrue | false\u003e\n\n    #\n    # Gateway settings\n    #\n    gateway_id: \u003cThe desired gateway id, must be unique for each gateway\u003e\n    gateway_model: \u003cCustom gateway model, can be omitted\u003e\n    gateway_version: \u003cCustom gateway version, can be omitted\u003e\n\n    #\n    # Filtering Destination Endpoints\n    #\n    ignored_endpoints_filter: \u003cEndpoints to filter out. Ex: [1, 2, 10-12]\u003e\n    whitened_endpoints_filter: \u003cEndpoints to whiten. Ex: [1, 2, 10-12]\u003e\n```\n\n#### Optional\n\n##### Start services with systemd\n\nPlease see this [Wiki entry][here wiki systemd]\n\n##### See local messages on Dbus interface\n\nLaunch local gateway process to see messages received from sinks at Dbus\nlevel. It can be launched from the command line with:\n\n```shell\nwm-dbus-print\n```\n\n##### Configure a sink locally\n\nThere is a script installed along the Wirepas Transport wheel that allow the configuration of sinks locally\n\nPlease see its help page for more information.\n\n```shell\nwm-node-conf --help\n```\n\n## Option 2: Docker installation\n\nIn order to ease the installation in a Docker environment, please see the instruction in [docker folder](docker).\n\n## Contributing\n\nWe welcome your contributions!\n\nPlease read the [instructions on how to do it][here_contribution]\nand please review our [code of conduct][here_code_of_conduct].\n\n## License\n\nCopyright 2019 Wirepas Ltd licensed under Apache License, Version 2.0 See file\n[LICENSE][here_license] for full license details.\n\n[here_contribution]: CONTRIBUTING.md\n[here_code_of_conduct]: CODE_OF_CONDUCT.md\n[here_license]: LICENSE\n[here_img_overview]: img/wm-gateway-overview.png?raw=true\n[here_releases]: https://github.com/wirepas/gateway/releases\n[here_dbus_manifest]: sink_service/com.wirepas.sink.conf\n[here_transport_readme]: python_transport/README.md\n[here wiki systemd]: https://github.com/wirepas/gateway/wiki/How-to-start-a-native-gateway-with-systemd\n\n[wirepas_backend_apis]: https://github.com/wirepas/backend-client\n[wirepas_gateway_to_backend_api]: https://github.com/wirepas/backend-apis/blob/master/gateway_to_backend/README.md\n[wirepas_gateway_pypi]: https://pypi.org/project/wirepas-gateway\n\n[dockerhub_wirepas]: https://hub.docker.com/r/wirepas/gateway\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwirepas%2Fgateway","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwirepas%2Fgateway","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwirepas%2Fgateway/lists"}