huemon


Namehuemon JSON
Version 2.0.4 PyPI version JSON
download
home_pagehttps://github.com/edeckers/huemon
SummaryMonitor your Philips Hue network
upload_time2025-01-01 12:07:10
maintainerEly Deckers
docs_urlNone
authorEly Deckers
requires_python<4.0,>=3.9
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.9+ 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",
    "name": "huemon",
    "maintainer": "Ely Deckers",
    "docs_url": null,
    "requires_python": "<4.0,>=3.9",
    "maintainer_email": null,
    "keywords": "Hue, Monitoring, Zabbix, Zigbee",
    "author": "Ely Deckers",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/c8/dc/4924ffe8ac54f09af07ee332dbc2ed984ddfec5c0fd11913e5fa5b148cf3/huemon-2.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.9+ 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",
    "bugtrack_url": null,
    "license": "MPL-2.0",
    "summary": "Monitor your Philips Hue network",
    "version": "2.0.4",
    "project_urls": {
        "Documentation": "https://github.com/edeckers/huemon",
        "Homepage": "https://github.com/edeckers/huemon",
        "Repository": "https://github.com/edeckers/huemon.git"
    },
    "split_keywords": [
        "hue",
        " monitoring",
        " zabbix",
        " zigbee"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f6c3ff5bac9f8cf0316cf0535d6abb610c9fb620b3569388df8b55f5828aa887",
                "md5": "93dff212a6688efd90f39f8ce9369628",
                "sha256": "ce14be7619f7726ad209980da94703cda7cb9685ad30bb78c29c48fc969cf999"
            },
            "downloads": -1,
            "filename": "huemon-2.0.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "93dff212a6688efd90f39f8ce9369628",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.9",
            "size": 35399,
            "upload_time": "2025-01-01T12:07:08",
            "upload_time_iso_8601": "2025-01-01T12:07:08.386464Z",
            "url": "https://files.pythonhosted.org/packages/f6/c3/ff5bac9f8cf0316cf0535d6abb610c9fb620b3569388df8b55f5828aa887/huemon-2.0.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c8dc4924ffe8ac54f09af07ee332dbc2ed984ddfec5c0fd11913e5fa5b148cf3",
                "md5": "4f4d67e13a0da6113fa8ea7b1f2e8b36",
                "sha256": "754cfb7bd2bbeec082ffb8c61fd000e782f4c4875cfa1b10f25cad51407133c8"
            },
            "downloads": -1,
            "filename": "huemon-2.0.4.tar.gz",
            "has_sig": false,
            "md5_digest": "4f4d67e13a0da6113fa8ea7b1f2e8b36",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.9",
            "size": 18436,
            "upload_time": "2025-01-01T12:07:10",
            "upload_time_iso_8601": "2025-01-01T12:07:10.618392Z",
            "url": "https://files.pythonhosted.org/packages/c8/dc/4924ffe8ac54f09af07ee332dbc2ed984ddfec5c0fd11913e5fa5b148cf3/huemon-2.0.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-01 12:07:10",
    "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.44727s