# Broadlink Listener
[![pypi](https://img.shields.io/pypi/v/broadlink-listener.svg)](https://pypi.org/project/broadlink-listener/)
[![python](https://img.shields.io/pypi/pyversions/broadlink-listener.svg)](https://pypi.org/project/broadlink-listener/)
[![Build Status](https://github.com/gpongelli/broadlink-listener/actions/workflows/dev.yml/badge.svg)](https://github.com/gpongelli/broadlink-listener/actions/workflows/dev.yml)
[![codecov](https://codecov.io/gh/gpongelli/broadlink-listener/branch/main/graphs/badge.svg)](https://codecov.io/github/gpongelli/broadlink-listener)
Broadlink IR codes listener and SmartIR json generator.
This project will install a `broadlink-listener` command line tool that can be used to generate a climate [SmartIR](https://github.com/smartHomeHub/SmartIR)
compatible json, starting from an initial structure that defines climate behavior, putting Broadlink IR remote to
listening state, until all IR code combination will being scan.
* Documentation: <https://gpongelli.github.io/broadlink-listener>
* GitHub: <https://github.com/gpongelli/broadlink-listener>
* PyPI: <https://pypi.org/project/broadlink-listener/>
* Free software: MIT
## Features
* Discover Broadlink IR remote
* Starting from SmartIR json structure like
```json
{
"supportedController": "Broadlink",
"minTemperature": 16,
"maxTemperature": 31,
"precision": 1,
"operationModes": [
"op_a",
"op_b"
],
"fanModes": [
"fan_a",
"fan_b"
],
"swingModes": [
"swing_a",
"swing_b"
]
}
```
it helps you listen all the defined IR codes to create a json like
```json
{
"supportedController": "Broadlink",
"minTemperature": 16,
"maxTemperature": 31,
"precision": 1,
"operationModes": [
"op_a",
"op_b"
],
"fanModes": [
"fan_a",
"fan_b"
],
"swingModes": [
"swing_a",
"swing_b"
],
"commands": {
"off": "...",
"op_a": {
"fan_a": {
"swing_a": {
"16": "....",
"31": "...."
},
"swing_b": {
"16": "....",
"31": "...."
}
},
"fan_b": {
"swing_a": {
"16": "....",
"31": "...."
},
"swing_b": {
"16": "....",
"31": "...."
}
}
},
"op_b": {
"fan_a": {
"swing_a": {
"16": "....",
"31": "...."
},
"swing_b": {
"16": "....",
"31": "...."
}
},
"fan_b": {
"swing_a": {
"16": "....",
"31": "...."
},
"swing_b": {
"16": "....",
"31": "...."
}
}
}
}
}
```
* Mandatory fields into starting json
* `supportedController`, `minTemperature`, `maxTemperature`, `precision`
* Optional fields (at least one must be present or nothing will be listened):
* `operationModes`, `fanModes`,`swingModes`
* Generated file can be used into SmartIR HomeAssistant component
## Credits
This package was created with [Cookiecutter](https://github.com/audreyr/cookiecutter) and the [gpongelli/cookiecutter-pypackage](https://github.com/gpongelli/cookiecutter-pypackage) project template.
Raw data
{
"_id": null,
"home_page": "https://github.com/gpongelli/broadlink-listener",
"name": "broadlink-listener",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8.0,<4.0",
"maintainer_email": "",
"keywords": "",
"author": "Gabriele Pongelli",
"author_email": "gabriele.pongelli@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/41/1e/f1d587e9f3f2b72539366a53c5383a32e1cb328ac557ba78982d7bcbf2cf/broadlink_listener-1.0.0.tar.gz",
"platform": null,
"description": "# Broadlink Listener\n\n\n[![pypi](https://img.shields.io/pypi/v/broadlink-listener.svg)](https://pypi.org/project/broadlink-listener/)\n[![python](https://img.shields.io/pypi/pyversions/broadlink-listener.svg)](https://pypi.org/project/broadlink-listener/)\n[![Build Status](https://github.com/gpongelli/broadlink-listener/actions/workflows/dev.yml/badge.svg)](https://github.com/gpongelli/broadlink-listener/actions/workflows/dev.yml)\n[![codecov](https://codecov.io/gh/gpongelli/broadlink-listener/branch/main/graphs/badge.svg)](https://codecov.io/github/gpongelli/broadlink-listener)\n\n\n\nBroadlink IR codes listener and SmartIR json generator.\n\nThis project will install a `broadlink-listener` command line tool that can be used to generate a climate [SmartIR](https://github.com/smartHomeHub/SmartIR)\ncompatible json, starting from an initial structure that defines climate behavior, putting Broadlink IR remote to\nlistening state, until all IR code combination will being scan.\n\n\n* Documentation: <https://gpongelli.github.io/broadlink-listener>\n* GitHub: <https://github.com/gpongelli/broadlink-listener>\n* PyPI: <https://pypi.org/project/broadlink-listener/>\n* Free software: MIT\n\n\n## Features\n\n* Discover Broadlink IR remote\n* Starting from SmartIR json structure like\n```json\n{\n \"supportedController\": \"Broadlink\",\n \"minTemperature\": 16,\n \"maxTemperature\": 31,\n \"precision\": 1,\n \"operationModes\": [\n \"op_a\",\n \"op_b\"\n ],\n \"fanModes\": [\n \"fan_a\",\n \"fan_b\"\n ],\n \"swingModes\": [\n \"swing_a\",\n \"swing_b\"\n ]\n}\n```\n it helps you listen all the defined IR codes to create a json like\n```json\n{\n \"supportedController\": \"Broadlink\",\n \"minTemperature\": 16,\n \"maxTemperature\": 31,\n \"precision\": 1,\n \"operationModes\": [\n \"op_a\",\n \"op_b\"\n ],\n \"fanModes\": [\n \"fan_a\",\n \"fan_b\"\n ],\n \"swingModes\": [\n \"swing_a\",\n \"swing_b\"\n ],\n \"commands\": {\n \"off\": \"...\",\n \"op_a\": {\n \"fan_a\": {\n \"swing_a\": {\n \"16\": \"....\",\n\n \"31\": \"....\"\n },\n \"swing_b\": {\n \"16\": \"....\",\n\n \"31\": \"....\"\n }\n },\n \"fan_b\": {\n \"swing_a\": {\n \"16\": \"....\",\n\n \"31\": \"....\"\n },\n \"swing_b\": {\n \"16\": \"....\",\n\n \"31\": \"....\"\n }\n }\n },\n \"op_b\": {\n \"fan_a\": {\n \"swing_a\": {\n \"16\": \"....\",\n\n \"31\": \"....\"\n },\n \"swing_b\": {\n \"16\": \"....\",\n\n \"31\": \"....\"\n }\n },\n \"fan_b\": {\n \"swing_a\": {\n \"16\": \"....\",\n\n \"31\": \"....\"\n },\n \"swing_b\": {\n \"16\": \"....\",\n\n \"31\": \"....\"\n }\n }\n }\n }\n}\n```\n\n* Mandatory fields into starting json\n * `supportedController`, `minTemperature`, `maxTemperature`, `precision`\n* Optional fields (at least one must be present or nothing will be listened):\n * `operationModes`, `fanModes`,`swingModes`\n* Generated file can be used into SmartIR HomeAssistant component\n\n\n## Credits\n\nThis package was created with [Cookiecutter](https://github.com/audreyr/cookiecutter) and the [gpongelli/cookiecutter-pypackage](https://github.com/gpongelli/cookiecutter-pypackage) project template.\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Broadlink IR codes listener and SmartIR json generator.",
"version": "1.0.0",
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"md5": "8628c9e3675cac367bfe98d289bb583e",
"sha256": "1ea44512366cb8c897f396051cf19b64cea2cb7380f6d40ba4b8c3ee397715ce"
},
"downloads": -1,
"filename": "broadlink_listener-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8628c9e3675cac367bfe98d289bb583e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8.0,<4.0",
"size": 11397,
"upload_time": "2022-12-18T22:53:16",
"upload_time_iso_8601": "2022-12-18T22:53:16.010877Z",
"url": "https://files.pythonhosted.org/packages/47/6b/f1307f75331f2225e64e0599618ad00187ccd2dc391299fd4b3296b576de/broadlink_listener-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "4b83e82fd005739316b1996e5940f07b",
"sha256": "f997c44275833639e3dd21ce9fd4e75055441aa713bdb2562971e13bfebbdbbc"
},
"downloads": -1,
"filename": "broadlink_listener-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "4b83e82fd005739316b1996e5940f07b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8.0,<4.0",
"size": 15750,
"upload_time": "2022-12-18T22:53:17",
"upload_time_iso_8601": "2022-12-18T22:53:17.393284Z",
"url": "https://files.pythonhosted.org/packages/41/1e/f1d587e9f3f2b72539366a53c5383a32e1cb328ac557ba78982d7bcbf2cf/broadlink_listener-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-12-18 22:53:17",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "gpongelli",
"github_project": "broadlink-listener",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "broadlink-listener"
}