A Duke Energy encerrou o programa piloto de gateway no final de junho de 2023. Essa integração parou de funcionar e está presa.
Duke Energy GatewayEsta é uma integração personalizada para o assistente doméstico. Ele extrai o uso de energia em tempo real da Duke Energy através do Programa Piloto de Gateway da Duke Energy.
Essa integração aproveita a biblioteca pyduke-energy , também escrita por mim, para extrair dados. Esta API não é muito oficial e pode parar de funcionar a qualquer momento (consulte a isenção de responsabilidade).
Você deve ter um gateway de energia da Duke conectado ao seu SmartMeter para que isso funcione. Este é um dispositivo separado que o seu medidor inteligente e é fornecido por um programa apenas de convite no momento. Se você não sabe o que é isso, provavelmente não o tem. Essa integração não suporta nenhum outro método de recuperação de dados (consulte o requisito do gateway).
Este componente configurará as seguintes entidades:
sensor.duke_energy_current_usage_wsensor.duke_energy_usage_today_kwh , ou precisa alimentar esse sensor em tempo real através da integração integral de Riemann soma.sensor.duke_energy_usage_today_kwhpyduke-energy .).mjmeli/ha-duke-energy-gateway e escolha Integration como a categoria.configuration.yaml ).custom_components (pasta) lá, precisará criá -lo.custom_components (pasta), crie uma nova pasta chamada duke_energy_gateway .custom_components/duke_energy_gateway/ Diretório (pasta) neste repositório.A configuração será feita na interface do usuário. Inicialmente, você precisará fornecer os seguintes dados:
| Dados | Descrição |
|---|---|
email | Seu e -mail de login para a Duke Energy. |
password | Sua senha de login para Duke Energy. |
Após a configuração da integração, você poderá fazer uma configuração adicional clicando em "Configurar" na página de integração. Isso permitirá que você modifique as seguintes opções:
| Dados | Descrição |
|---|---|
Real-time Usage Update Interval (sec) | Por padrão, o sensor de uso em tempo real será atualizado sempre que uma leitura chegar. Se esses dados forem muito frequentes, você poderá configurar esse valor para acelerar os dados. Quando definido como um número inteiro positivo X , o sensor será atualizado apenas uma vez a cada X segundos. Em outras palavras, se definido como 30, você obterá um novo uso em tempo real a cada ~ 30 segundos. |
O fluxo de configuração tentará automaticamente identificar seu gateway e SmartMeter. No momento, apenas um é suportado por conta. O primeiro identificado será usado. Se não se pode encontrar, o processo de configuração deve falhar.
Se a seleção do seu medidor falhar, uma primeira etapa deve ser ativar o log para o componente (consulte o log). Se isso não fornecer informações sobre o problema, abra um problema do GitHub.
Se você tiver algum problema e quiser olhar para os logs, essa integração fornecerá um logbose no nível de depuração. Isso pode ser ativado adicionando o seguinte ao seu arquivo configuration.yaml .
logger :
default : info
logs :
custom_components.duke_energy_gateway : debug
pyduke_energy.client : debug
pyduke_energy.realtime : debug Sugiro usar o contêiner de dev para desenvolvimento, abrindo no Código do Visual Studio com code . e clicando na opção de reabrir com o recipiente de dev. No código VS, você pode executar a tarefa "Run Home Assistant na porta 9123" e depois acessá -la via http: // localhost: 9123.
Se você deseja instalar manualmente, pode instalar dependências dev com pip install -r requirements_dev.txt .
Antes de cometer, execute pre-commit run --all-files .
pyduke-energy Se você estiver trabalhando na implementação de novas alterações da pyduke-energy mas não deseja liberar a versão dessa biblioteca, pode configurar seu ambiente de desenvolvimento para instalar a partir de uma ramificação de trabalho remoto.
requirements_dev.txt para substituir o main em git+https://github.com/mjmeli/pyduke-energy@main com sua filial de trabalho e atualize o nome de usuário se você tiver um garfo (por exemplo, git+https://github.com/notmjmeli/pyduke-energy@new-feature-dev-branch :pyduke-energy : pip uninstall -y pyduke-energypip install -r requirements_dev.txt Se você deseja contribuir com isso, leia as diretrizes de contribuição
Este projeto foi gerado a partir do modelo de cookieCutter de componente personalizado do @Oncleben31.
O modelo de código foi retirado principalmente do modelo de @Ludeeus Integration_BluePrint