huemon


Namehuemon JSON
Version 1.0.4 PyPI version JSON
download
home_pagehttps://github.com/edeckers/huemon.git
SummaryMonitor your Philips Hue network
upload_time2023-08-30 18:24:13
maintainerEly Deckers
docs_urlNone
authorEly Deckers
requires_python>=3.8,<4.0
licenseMPL-2.0
keywords hue monitoring zabbix zigbee
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Huemon

[![License: MPL 2.0](https://img.shields.io/badge/License-MPL%202.0-brightgreen.svg)](https://opensource.org/licenses/MPL-2.0)
[![Build](https://github.com/edeckers/huemon/actions/workflows/test.yml/badge.svg?branch=develop)](https://github.com/edeckers/huemon/actions/workflows/test.yml)
[![PyPI](https://img.shields.io/pypi/v/huemon.svg?maxAge=3600)](https://pypi.org/project/huemon)
[![security: bandit](https://img.shields.io/badge/security-bandit-yellow.svg)](https://github.com/PyCQA/bandit)

Zabbix monitoring with low-level discovery for Philips Hue networks.

![Dashboard: sensors](https://raw.githubusercontent.com/edeckers/huemon/develop/assets/docs/dashboard-sensors.png?raw=true "Dashboard: sensors")

## Requirements

- Zabbix server 5.0+
- Zabbix agent 5.0+
- Python 3.8+ on Zabbix agent machine

## Installation

```bash
pip3 install huemon
```

## Configuration

1. Copy `config.example.yml` from `src/huemon` to `/path/to/config.yml`
2. Make necessary changes
3. Provide the path through environment variable `HUEMON_CONFIG_PATH`

### Plugins

Create a command or discovery plugin by implementing [HueCommand](src/huemon/commands/hue_command_interface.py) or [Discovery](src/huemon/discoveries/discovery_interface.py) respectively and copy the file to the configured path in `plugins.commands.path` or `plugins.discoveries.path` of the configuration file.

### Zabbix agent configuration

```
# file:/path/to/zabbix/agent/conf.d/hue.conf

UserParameter=hue.discovery[*],HUEMON_CONFIG_PATH=/path/to/config.yml python3 -m huemon discover $1
UserParameter=hue.value[*],HUEMON_CONFIG_PATH=/path/to/config.yml python3 -m huemon $1 $2 $3
```

Or Docker

```
# file:/path/to/zabbix/agent/conf.d/hue.conf

UserParameter=hue.discovery[*],docker-compose run huemon discover $1
UserParameter=hue.value[*],docker-compose run huemon $1 $2 $3
```

Or _agent mode_

```
# file:/path/to/zabbix/agent/conf.d/hue.conf

UserParameter=hue.discovery[*],curl http://127.0.0.1:8000/discover?q=$1
UserParameter=hue.value[*],curl http://127.0.0.1:8000/$1?q=$2\&q=$3
```

### Configure Systemd service

An installer that configures Huemon as a Systemd service is included in this repository. It uses `/etc/huemon/config.yml` as the configuration path.

```bash
assets/service-installer.sh install
```

## Usage

### Shell

```bash
HUEMON_CONFIG_PATH=/path/to/config.yml python3 -m huemon discover lights
```

Or _agent mode_

```bash
HUEMON_CONFIG_PATH=/path/to/config.yml python3 -m huemon agent start
```

### Docker

Provide a configuration path for the `huemon-config` volume in `docker-compose.yml` before running the commands below.

```bash
docker-compose run huemon discover lights
```

Or _agent mode_

```bash
docker-compose up -d
```

## Screenshots

### Dashboards
![Dashboard: sensors](https://raw.githubusercontent.com/edeckers/huemon/develop/assets/docs/dashboard-sensors.png?raw=true "Dashboard: sensors")

### Discoveries

![Discoveries: batteries](https://raw.githubusercontent.com/edeckers/huemon/develop/assets/docs/discoveries-batteries.png?raw=true "Discoveries: batteries")

![Discoveries: lights](https://raw.githubusercontent.com/edeckers/huemon/develop/assets/docs/discoveries-lights.png?raw=true "Discoveries: lights")

![Discoveries: sensors](https://raw.githubusercontent.com/edeckers/huemon/develop/assets/docs/discoveries-sensors.png?raw=true "Discoveries: sensors")

### Template

![Template](https://raw.githubusercontent.com/edeckers/huemon/develop/assets/docs/template-discoveries.png?raw=true "Template")

## Contributing

See the [contributing guide](CONTRIBUTING.md) to learn how to contribute to the  repository and the development workflow.

## Code of Conduct

[Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms.

## License

MPL-2.0


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/edeckers/huemon.git",
    "name": "huemon",
    "maintainer": "Ely Deckers",
    "docs_url": null,
    "requires_python": ">=3.8,<4.0",
    "maintainer_email": "",
    "keywords": "Hue,Monitoring,Zabbix,Zigbee",
    "author": "Ely Deckers",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/3b/b3/e7a15cef2fa72ab6fe923db89799997a5c08ecb89626fc08775a4bb4a03e/huemon-1.0.4.tar.gz",
    "platform": null,
    "description": "# Huemon\n\n[![License: MPL 2.0](https://img.shields.io/badge/License-MPL%202.0-brightgreen.svg)](https://opensource.org/licenses/MPL-2.0)\n[![Build](https://github.com/edeckers/huemon/actions/workflows/test.yml/badge.svg?branch=develop)](https://github.com/edeckers/huemon/actions/workflows/test.yml)\n[![PyPI](https://img.shields.io/pypi/v/huemon.svg?maxAge=3600)](https://pypi.org/project/huemon)\n[![security: bandit](https://img.shields.io/badge/security-bandit-yellow.svg)](https://github.com/PyCQA/bandit)\n\nZabbix monitoring with low-level discovery for Philips Hue networks.\n\n![Dashboard: sensors](https://raw.githubusercontent.com/edeckers/huemon/develop/assets/docs/dashboard-sensors.png?raw=true \"Dashboard: sensors\")\n\n## Requirements\n\n- Zabbix server 5.0+\n- Zabbix agent 5.0+\n- Python 3.8+ on Zabbix agent machine\n\n## Installation\n\n```bash\npip3 install huemon\n```\n\n## Configuration\n\n1. Copy `config.example.yml` from `src/huemon` to `/path/to/config.yml`\n2. Make necessary changes\n3. Provide the path through environment variable `HUEMON_CONFIG_PATH`\n\n### Plugins\n\nCreate a command or discovery plugin by implementing [HueCommand](src/huemon/commands/hue_command_interface.py) or [Discovery](src/huemon/discoveries/discovery_interface.py) respectively and copy the file to the configured path in `plugins.commands.path` or `plugins.discoveries.path` of the configuration file.\n\n### Zabbix agent configuration\n\n```\n# file:/path/to/zabbix/agent/conf.d/hue.conf\n\nUserParameter=hue.discovery[*],HUEMON_CONFIG_PATH=/path/to/config.yml python3 -m huemon discover $1\nUserParameter=hue.value[*],HUEMON_CONFIG_PATH=/path/to/config.yml python3 -m huemon $1 $2 $3\n```\n\nOr Docker\n\n```\n# file:/path/to/zabbix/agent/conf.d/hue.conf\n\nUserParameter=hue.discovery[*],docker-compose run huemon discover $1\nUserParameter=hue.value[*],docker-compose run huemon $1 $2 $3\n```\n\nOr _agent mode_\n\n```\n# file:/path/to/zabbix/agent/conf.d/hue.conf\n\nUserParameter=hue.discovery[*],curl http://127.0.0.1:8000/discover?q=$1\nUserParameter=hue.value[*],curl http://127.0.0.1:8000/$1?q=$2\\&q=$3\n```\n\n### Configure Systemd service\n\nAn installer that configures Huemon as a Systemd service is included in this repository. It uses `/etc/huemon/config.yml` as the configuration path.\n\n```bash\nassets/service-installer.sh install\n```\n\n## Usage\n\n### Shell\n\n```bash\nHUEMON_CONFIG_PATH=/path/to/config.yml python3 -m huemon discover lights\n```\n\nOr _agent mode_\n\n```bash\nHUEMON_CONFIG_PATH=/path/to/config.yml python3 -m huemon agent start\n```\n\n### Docker\n\nProvide a configuration path for the `huemon-config` volume in `docker-compose.yml` before running the commands below.\n\n```bash\ndocker-compose run huemon discover lights\n```\n\nOr _agent mode_\n\n```bash\ndocker-compose up -d\n```\n\n## Screenshots\n\n### Dashboards\n![Dashboard: sensors](https://raw.githubusercontent.com/edeckers/huemon/develop/assets/docs/dashboard-sensors.png?raw=true \"Dashboard: sensors\")\n\n### Discoveries\n\n![Discoveries: batteries](https://raw.githubusercontent.com/edeckers/huemon/develop/assets/docs/discoveries-batteries.png?raw=true \"Discoveries: batteries\")\n\n![Discoveries: lights](https://raw.githubusercontent.com/edeckers/huemon/develop/assets/docs/discoveries-lights.png?raw=true \"Discoveries: lights\")\n\n![Discoveries: sensors](https://raw.githubusercontent.com/edeckers/huemon/develop/assets/docs/discoveries-sensors.png?raw=true \"Discoveries: sensors\")\n\n### Template\n\n![Template](https://raw.githubusercontent.com/edeckers/huemon/develop/assets/docs/template-discoveries.png?raw=true \"Template\")\n\n## Contributing\n\nSee the [contributing guide](CONTRIBUTING.md) to learn how to contribute to the  repository and the development workflow.\n\n## Code of Conduct\n\n[Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms.\n\n## License\n\nMPL-2.0\n\n",
    "bugtrack_url": null,
    "license": "MPL-2.0",
    "summary": "Monitor your Philips Hue network",
    "version": "1.0.4",
    "project_urls": {
        "Documentation": "https://github.com/edeckers/huemon",
        "Homepage": "https://github.com/edeckers/huemon.git",
        "Repository": "https://github.com/edeckers/huemon.git"
    },
    "split_keywords": [
        "hue",
        "monitoring",
        "zabbix",
        "zigbee"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a28a1a3a1b1fa5a7b2c98aaaef7b7eb7cbe911f1444188325137a12150a86b08",
                "md5": "8b1bf2ca5bb378c47ce5542be68d75c8",
                "sha256": "b768662f211a95494eb9b2f6be8644aa2ed01d8c2e78ee2c1b713e5b5188cffc"
            },
            "downloads": -1,
            "filename": "huemon-1.0.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8b1bf2ca5bb378c47ce5542be68d75c8",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8,<4.0",
            "size": 35389,
            "upload_time": "2023-08-30T18:24:12",
            "upload_time_iso_8601": "2023-08-30T18:24:12.212362Z",
            "url": "https://files.pythonhosted.org/packages/a2/8a/1a3a1b1fa5a7b2c98aaaef7b7eb7cbe911f1444188325137a12150a86b08/huemon-1.0.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3bb3e7a15cef2fa72ab6fe923db89799997a5c08ecb89626fc08775a4bb4a03e",
                "md5": "b36a27b35001e88ad63ab2345ba16221",
                "sha256": "51fb32f3f70b296a5c777e76d8081cc80d52a90e6c57a144020170985066c44b"
            },
            "downloads": -1,
            "filename": "huemon-1.0.4.tar.gz",
            "has_sig": false,
            "md5_digest": "b36a27b35001e88ad63ab2345ba16221",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8,<4.0",
            "size": 18422,
            "upload_time": "2023-08-30T18:24:13",
            "upload_time_iso_8601": "2023-08-30T18:24:13.863249Z",
            "url": "https://files.pythonhosted.org/packages/3b/b3/e7a15cef2fa72ab6fe923db89799997a5c08ecb89626fc08775a4bb4a03e/huemon-1.0.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-30 18:24:13",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "edeckers",
    "github_project": "huemon",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "huemon"
}
        
Elapsed time: 0.10806s