Duke Energy a fermé le programme pilote Gateway fin juin 2023. Cette intégration a cessé de fonctionner et est obsolète.
Duke Energy GatewayIl s'agit d'une intégration personnalisée pour l'assistant à domicile. Il tire la consommation d'énergie en temps réel de Duke Energy via le programme pilote Duke Energy Gateway.
Cette intégration exploite la bibliothèque pyduke-energy , également écrite par moi, pour extraire des données. Cette API est très non officielle et peut cesser de travailler à tout moment (voir avertissement).
Vous devez avoir une passerelle Duke Energy connectée à votre smartmètre pour que cela fonctionne. Il s'agit d'un appareil distinct que votre compteur intelligent et est fourni par un programme d'invitation uniquement pour le moment. Si vous ne savez pas ce que c'est, alors vous ne l'avez probablement pas. Cette intégration ne prend en charge aucune autre méthode de récupération des données (voir l'exigence de passerelle).
Ce composant mettra en place les entités suivantes:
sensor.duke_energy_current_usage_wsensor.duke_energy_usage_today_kwh , ou vous devez nourrir ce capteur en temps réel via l'intégration intégrale de Riemann Sum.sensor.duke_energy_usage_today_kwhpyduke-energy ).mjmeli/ha-duke-energy-gateway et choisissez Integration comme catégorie.configuration.yaml ).custom_components (dossier), vous devez le créer.custom_components (dossier), créez un nouveau dossier appelé duke_energy_gateway .custom_components/duke_energy_gateway/ dossier (dossier) dans ce référentiel.La configuration sera effectuée dans l'interface utilisateur. Initialement, vous devrez fournir les données suivantes:
| Données | Description |
|---|---|
email | Votre e-mail de connexion à Duke Energy. |
password | Votre mot de passe de connexion à Duke Energy. |
Une fois l'intégration configurée, vous pourrez effectuer une configuration supplémentaire en cliquant sur "Configurer" sur la page d'intégration. Cela vous permettra de modifier les options suivantes:
| Données | Description |
|---|---|
Real-time Usage Update Interval (sec) | Par défaut, le capteur d'utilisation en temps réel sera mis à jour chaque fois qu'une lecture entre. Si ces données sont trop fréquentes, vous pouvez configurer cette valeur pour étrangler les données. Lorsqu'il est défini sur un entier positif X , le capteur ne sera mis à jour qu'une fois toutes X secondes. En d'autres termes, si vousts sur 30, vous obtiendrez une nouvelle utilisation en temps réel toutes les 30 secondes. |
Le flux de configuration tentera automatiquement d'identifier votre passerelle et votre SmartMètre. À l'heure actuelle, un seul est pris en charge par compte. Le premier identifié sera utilisé. Si l'on ne peut pas être trouvé, le processus de configuration doit échouer.
Si votre sélection de compteur échoue, une première étape devrait être d'activer la journalisation du composant (voir journalisation). Si cela ne donne pas un aperçu du problème, veuillez ouvrir un problème GitHub.
Si vous rencontrez des problèmes et que vous souhaitez examiner les journaux, cette intégration fournit une journalisation verbale au niveau du débogage. Cela peut être activé en ajoutant ce qui suit à votre fichier configuration.yaml .
logger :
default : info
logs :
custom_components.duke_energy_gateway : debug
pyduke_energy.client : debug
pyduke_energy.realtime : debug Je suggère d'utiliser le conteneur Dev pour le développement en ouvrant dans Visual Studio Code avec code . et cliquer sur l'option pour rouvrir avec Dev Container. Dans VS Code, vous pouvez exécuter la tâche "Exécutez l'assistant à domicile sur le port 9123", puis y accéder via http: // localhost: 9123.
Si vous souhaitez installer manuellement, vous pouvez installer des dépendances de développement avec pip install -r requirements_dev.txt .
Avant de commander, exécutez pre-commit run --all-files .
pyduke-energy Si vous travaillez sur la mise en œuvre de nouvelles modifications de pyduke-energy mais que vous ne souhaitez pas publier la version de cette bibliothèque, vous pouvez configurer votre environnement de développement pour installer à partir d'une branche de travail à distance.
requirements_dev.txt pour remplacer le main en git+https://github.com/mjmeli/pyduke-energy@main avec votre branche de travail et mettez à jour le nom d'utilisateur si vous avez une fourche (par exemple git+https://github.com/notmjmeli/pyduke-energy@new-feature-dev-branch )pyduke-energy : pip uninstall -y pyduke-energypip install -r requirements_dev.txt Si vous souhaitez y contribuer, veuillez lire les directives de contribution
Ce projet a été généré à partir du modèle de cuisine de composant personnalisé de l'assistant à domicile de @ OnCleben31.
Le modèle de code a été principalement tiré du modèle d'intégration_blueprint de @ Ludeeus