{"id":39425902,"url":"https://github.com/palazzem/ha-econnect-alarm","last_synced_at":"2026-01-18T04:00:15.946Z","repository":{"id":191640686,"uuid":"685052810","full_name":"palazzem/ha-econnect-alarm","owner":"palazzem","description":"Home Assistant integration that provides a full-fledged Alarm Panel to control your Elmo/IESS alarm systems.","archived":false,"fork":false,"pushed_at":"2026-01-16T16:31:27.000Z","size":1545,"stargazers_count":18,"open_issues_count":11,"forks_count":5,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-17T04:59:35.758Z","etag":null,"topics":["alarm-system","econnect","elmo","home-assistant","home-automation","iess","internet-of-things","iot","metronet","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/palazzem.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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":"2023-08-30T12:17:38.000Z","updated_at":"2026-01-16T16:31:10.000Z","dependencies_parsed_at":"2023-08-30T22:41:50.208Z","dependency_job_id":"adf96fdc-2099-4b5e-99e7-b10e7f6ef80e","html_url":"https://github.com/palazzem/ha-econnect-alarm","commit_stats":null,"previous_names":["palazzem/ha-econnect-alarm"],"tags_count":43,"template":false,"template_full_name":null,"purl":"pkg:github/palazzem/ha-econnect-alarm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/palazzem%2Fha-econnect-alarm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/palazzem%2Fha-econnect-alarm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/palazzem%2Fha-econnect-alarm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/palazzem%2Fha-econnect-alarm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/palazzem","download_url":"https://codeload.github.com/palazzem/ha-econnect-alarm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/palazzem%2Fha-econnect-alarm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28529455,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-18T00:39:45.795Z","status":"online","status_checked_at":"2026-01-18T02:00:07.578Z","response_time":98,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["alarm-system","econnect","elmo","home-assistant","home-automation","iess","internet-of-things","iot","metronet","python"],"created_at":"2026-01-18T04:00:12.047Z","updated_at":"2026-01-18T04:00:15.890Z","avatar_url":"https://github.com/palazzem.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Home Assistant Elmo/IESS Integration\n\n[![Linting](https://github.com/palazzem/ha-econnect-alarm/actions/workflows/linting.yaml/badge.svg)](https://github.com/palazzem/ha-econnect-alarm/actions/workflows/linting.yaml)\n[![Testing](https://github.com/palazzem/ha-econnect-alarm/actions/workflows/testing.yaml/badge.svg)](https://github.com/palazzem/ha-econnect-alarm/actions/workflows/testing.yaml)\n[![Coverage Status](https://coveralls.io/repos/github/palazzem/ha-econnect-alarm/badge.svg?branch=main)](https://coveralls.io/github/palazzem/ha-econnect-alarm?branch=main)\n[![hacs_badge](https://img.shields.io/badge/HACS-Custom-41BDF5.svg)](https://github.com/palazzem/ha-econnect-alarm)\n\n\n\nThis project is a [Home Assistant](https://www.home-assistant.io/) integration for your Elmo/IESS Alarm connected to\n[e-Connect cloud](https://e-connect.elmospa.com/it/) or [Metronet](https://metronet.iessonline.com/).\n\n## Supported Systems\n\nThis integration supports Elmo/IESS alarm systems. The following systems are known to work:\n- [Elmo e-Connect](https://e-connect.elmospa.com/)\n- [IESS Metronet](https://www.iessonline.com/)\n\n**Available functionalities**\n- Configuration flow implemented to add login credentials and home and night areas\n- Arm and disarm the alarm based on sectors you have configured\n- Query the system and get the status of your sectors and inputs (e.g. doors, windows, etc.)\n  and see if they are triggered or not\n- A service is available and you can configure automations via YAML or via UI\n- `EconnectAlarm` entity is available and you can use the `AlarmPanel` card to control it in lovelace\n\n**Alarm status**\n- Arm Away: arms all areas\n- Disarm: disarm all areas\n- Arm Home: based on the configuration, arms given areas (optional)\n- Arm Night: based on the configuration, arms given areas (optional)\n\nIf you are curious about the project and want to know more, check out our [Discord channel](https://discord.gg/NSmAPWw8tE)!\n\n## Installation\n\n### Download the Integration\n\n1. Create a new folder in your configuration folder (where the `configuration.yaml` lives) called `custom_components`\n2. Download the [latest version](https://github.com/palazzem/ha-econnect-alarm/releases) into the `custom_components`\n   folder so that the full path from your config folder is `custom_components/econnect_metronet/`\n3. Restart Home Assistant. If it's your only custom component you'll see a warning in your logs.\n4. Once Home Assistant is started, from the UI go to Configuration \u003e Integrations \u003e Add Integrations. Search for\n   \"Elmo/IESS Alarm\". After selecting, dependencies will be downloaded and it could take up to a minute.\n\n### Setup\n\n\u003cimg src=\"https://github.com/palazzem/ha-econnect-alarm/assets/1560405/7f2c3eee-cbf7-457c-8fe0-f586ecf0d9f5\" width=\"400\"\u003e\n\n- Username: is your username to access Elmo/IESS via web or app.\n- Password: is your password to access Elmo/IESS via web or app.\n- System: pick the brand of alarm system you are using.\n- Domain name: domain used to access your login page via web. If you access to `https://connect.elmospa.com/vendor/`,\n  you must set the domain to `vendor`. In case you don't have a vendor defined, leave it to `default`.\n\n### Options\n\nIn the option page you can configure your alarm presets in case you want to fine-tune which sectors are armed. To proceed with the configuration,\nopen the integration page and click on Elmo/IESS integration. Once the page is opened, you should see the following integration page:\n\n\u003cimg src=\"https://github.com/palazzem/ha-econnect-alarm/assets/1560405/47ddb8b9-1fae-4a3a-998c-729905c5bd64\" width=\"400\"/\u003e\n\nTo configure the integration, click on \"Configure\".\n\n\u003cimg src=\"https://github.com/palazzem/ha-econnect-alarm/assets/1560405/d82f1fd6-8cbd-47cf-b0b2-d920a28abdf0\" width=\"400\"/\u003e\n\n\nYou can now define your presets:\n- Armed areas while at home: list areas you want to arm when you select Arm Home.\n- Armed areas at night (optional): list areas you want to arm when you select Arm Night.\n- Armed areas on vacation (optional): list areas you want to arm when you select Arm Vacation.\n\nIn case you don't define any sector for a given preset, no actions are taken when you use the preset from your alarm panel.\n\n### Automations\n\nIf you use automations, remember that in the payload you must send the `code` so that the system will be properly armed/disarmed.\n\nYAML example:\n\n```yaml\nservice: alarm_control_panel.alarm_arm_away\ntarget:\n  entity_id: alarm_control_panel.\u003cYOUR ALARM ENTITY ID\u003e\ndata:\n  code: !secret alarm_code  # (check how to use secrets if you are not familiar)\n```\n\nYou can find `\u003cYOUR ALARM ENTITY ID\u003e` under *Settings \u003e Devices \u0026 Services \u003e e-Connect/Metronet Alarm* opening the list of entities and searching for *Alarm Panel*\n\n\u003cimg src=\"images/alarm_panel_entity_id.png\" width=\"400\"/\u003e\n\nUI example:\n\n\u003cimg src=\"https://user-images.githubusercontent.com/1560405/110870435-ba91f900-82cc-11eb-9ebc-442152fd67f1.png\" width=\"500\"/\u003e\n\n### Apple Home integration (HomeKit)\n\nIf you want to integrate your alarm with the Apple Home to use Siri or automations, follow these steps:\n\n1) Add these entries inside `configuration.yaml` to let Home Assistant create a new HomeKit bridge with just the Alarm Panel exposed.\n\n```\nhomekit:\n  - name: HASS Bridge Alarm\n    port: 21065\n    filter:\n      include_domains:\n        - alarm_control_panel\n    entity_config:\n      alarm_control_panel.\u003cYOUR ALARM ENTITY ID\u003e:\n        code: \u003cPIN CODE\u003e\n```\n\n1) Please replace `\u003cPIN CODE\u003e` with your specific alarm code and `\u003cYOUR ALARM ENTITY ID\u003e` with your alarm entity id.\n2) Reboot Home Assistant.\n3) Scan the QR code available in your Home Assistant Notifications area (bottom-left badge) with your iPhone to add the alarm into the Apple Home app.\n\n**Multiple HomeKit bridges**: If you have others HomeKit integrations created via the UI (i.e., Settings \u003e Devices \u0026 Services), be careful to not use the same `port` twice to prevent conflicts. Also note, if you don't specify a `port` the default `21063` is used.\n\nPlease note that Apple Home requires you to confirm automations that involves security devices such as lockers and alarm systems.\n\nAs a result of the integration you should have a similar configuration in your Home app:\n\n| Alarm panel  | Alarm panel opened |\n|---|---|\n| \u003cimg src=\"images/homekit_alarm_panel.jpg\" width=\"300\"/\u003e | \u003cimg src=\"images/homekit_alarm_panel_open.png\" width=\"300\"/\u003e |\n\n## Troubleshooting\n\nIf you encounter an issue, providing `DEBUG` logs can greatly assist us in identifying the bug. Please follow these steps to send us the debug logs:\n\n1. Navigate to the integration configuration page in Home Assistant: **Settings \u003e Devices \u0026 Services \u003e e-Connect/Metronet Alarm**.\n2. Enable debug logging by clicking on **Enable debug logging**.\n3. Restart the integration by selecting **Restart** from the three-dot menu.\n4. Reproduce the error (e.g., arm the system or modify the configuration).\n5. After reproducing the error, return to the Integration configuration page and click **Disable debug logging**.\n6. Your browser will prompt you to download the log file.\n7. Ensure that the logs do not contain sensitive information, as we do not log credentials or access tokens.\n8. Send the logs to us via a secure method. **Do not post your logs on public platforms** like our Discord general channel or GitHub issues, as they are publicly accessible.\n\n\u003cimg src=\"https://github.com/palazzem/ha-econnect-alarm/assets/1560405/08e5dc92-6b0e-4f41-bab0-e1851405425b\"\u003e\n\n## Contributing\n\nWe are very open to the community's contributions - be it a quick fix of a typo, or a completely new feature!\nYou don't need to be a Python expert to provide meaningful improvements. To learn how to get started, check\nout our [Contributor Guidelines](https://github.com/palazzem/ha-econnect-alarm/blob/main/CONTRIBUTING.md) first,\nand ask for help in our [Discord channel](https://discord.gg/NSmAPWw8tE) if you have questions.\n\n## Development\n\nWe welcome external contributions, even though the project was initially intended for personal use. If you think some\nparts could be exposed with a more generic interface, please open a [GitHub issue](https://github.com/palazzem/ha-econnect-alarm/issues)\nto discuss your suggestion.\n\n### Dev Environment\n\nTo create a virtual environment and install the project and its dependencies, execute the following commands in your\nterminal:\n\n```bash\n# Initialize the environment with the latest version of Home Assistant\nE_HASS_VERSION=$(curl --silent \"https://api.github.com/repos/home-assistant/core/releases/latest\" | sed -n 's/.*\"tag_name\": \"\\([^\"]*\\)\".*/\\1/p')\n./scripts/init $E_HASS_VERSION\nsource venv/bin/activate\n\n# Install pre-commit hooks\npre-commit install\n```\n\nInstead, if you want to develop and test this integration with a different Home Assistant version, just pass the\nversion to the init script:\n```bash\n# Initialize the environment Home Assistant 2024.1.1\n./scripts/init 2024.1.1\nsource venv/bin/activate\n\n# Install pre-commit hooks\npre-commit install\n```\n\n### Testing Changes in Home Assistant\n\nTo test your changes in an actual Home Assistant environment, you may use the Docker container available in our\n`compose.yaml` file. Launch the container with the following command:\n\n```bash\ndocker compose up -d\n```\n\nThen, navigate to `http://localhost:8123` in your web browser to set up your Home Assistant instance. Follow the standard\nprocedure to install the integration, as you would in a typical installation.\n\nThe container is configured to automatically mount the `custom_components/` and `config/` directories from your local\nworkspace. To see changes reflected in Home Assistant, make sure to restart the instance through the UI each time\nyou update the integration.\n\n### Coding Guidelines\n\nTo maintain a consistent codebase, we utilize [flake8][1] and [black][2]. Consistency is crucial as it\nhelps readability, reduces errors, and facilitates collaboration among developers.\n\nTo ensure that every commit adheres to our coding standards, we've integrated [pre-commit hooks][3].\nThese hooks automatically run `flake8` and `black` before each commit, ensuring that all code changes\nare automatically checked and formatted.\n\nFor details on how to set up your development environment to make use of these hooks, please refer to the\n[Development][4] section of our documentation.\n\n[1]: https://pypi.org/project/flake8/\n[2]: https://github.com/ambv/black\n[3]: https://pre-commit.com/\n[4]: https://github.com/palazzem/ha-econnect-alarm#development\n\n### Testing\n\nEnsuring the robustness and reliability of our code is paramount. Therefore, all contributions must include\nat least one test to verify the intended behavior.\n\nTo run tests locally, execute the test suite using `pytest` with the following command:\n```bash\npytest tests --cov --cov-branch -vv\n```\n\nFor a comprehensive test that mirrors the Continuous Integration (CI) environment across all supported Python\nversions, use `tox`:\n```bash\ntox\n```\n\n**Note**: To use `tox` effectively, ensure you have all the necessary Python versions installed. If any\nversions are missing, `tox` will provide relevant warnings.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpalazzem%2Fha-econnect-alarm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpalazzem%2Fha-econnect-alarm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpalazzem%2Fha-econnect-alarm/lists"}