[Résolu] Recuperer Notification Batterie ..% (Branché, pas en charge)
Re: Recuperer Notification Batterie ..% (Branche, pas en charge)
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
Objectif : WAF > 1
Re: Recuperer Notification Batterie ..% (Branche, pas en charge)
Bonsoir,
Après un cycle de test, Coupure Alimentation, Arrêt du PC et Remise en route, Sms sous et au dessus du seuil demandé ok
J'ai du ajouter dans l évènement blocky une vérification de changement d'état (passage sous ou au dessus du seuil de charge) sans lequel je recevais un SMS à chaque renseignement de Domoticz par le script Powershell (Je ne suis pas sur d'être clair
)
Copie d'écran ci-jointe.
Merci encore pour votre aide
Bertrand
Après un cycle de test, Coupure Alimentation, Arrêt du PC et Remise en route, Sms sous et au dessus du seuil demandé ok
J'ai du ajouter dans l évènement blocky une vérification de changement d'état (passage sous ou au dessus du seuil de charge) sans lequel je recevais un SMS à chaque renseignement de Domoticz par le script Powershell (Je ne suis pas sur d'être clair
Copie d'écran ci-jointe.
Merci encore pour votre aide
Bertrand
2024.6 PC Windows10 ; 2ème DEBIAN 10;DANFOSS LC13, Topp; Senseurs univ FIBARO FGBS001, Flood Sensor, ZMNHBD1 Flush 2 Relays ; FIBARO FGS222-FGS212;RFXCOM-RFXtrx433 USB 433.92MHz , Prises Phénix, Prises et Eclairage DI-O, SOMFY RTS,Sonoff ..
Re: Recuperer Notification Batterie ..% (Branche, pas en charge)
Bonjour a Tous,
Un Petit moment que je ne suis pas intervenu, le temps passe trop vite.
Je déterre ce sujet après m'être aperçu que le dispositif "Niv_Charge_Batterie_PC" ne se mettait plus à jour (A priori après mise à jour Domoticz..
Pour résumer j'ai un dispositif qui lance un script .bat sous W10, qui lance à son tour (Normalement) un fichier de commandes Powershell .
Contenu Fichier . BAT:
Contenu Fichier Niv_Charge_Batterie_PC.ps1:
J'ai ce message d'erreur sous cmd :
Merci de toute aide éventuelle apportée. A priori Problème au niveau conversion Json.. User et Pass sont correctement renseignés, le dispositif concerné a bien été ajouté à l' user Controle_Batterie_PC.
Cdt
Bertrand
Un Petit moment que je ne suis pas intervenu, le temps passe trop vite.
Je déterre ce sujet après m'être aperçu que le dispositif "Niv_Charge_Batterie_PC" ne se mettait plus à jour (A priori après mise à jour Domoticz..
Pour résumer j'ai un dispositif qui lance un script .bat sous W10, qui lance à son tour (Normalement) un fichier de commandes Powershell .
Contenu Fichier . BAT:
Code : Tout sélectionner
Powershell.exe -WindowStyle hidden -nologo -executionpolicy remotesigned -Command "& 'C:\Program Files (x86)\Domoticz\scripts\powershell\Niv_Charge_Batterie_PC.ps1'"
Code : Tout sélectionner
# --- les adresses Domoticz user/pass et l'idx à activer --------
$domoticz="http://192.168.0.XX:XXXX"
$user="Controle_Batterie_PC"
$pass="XXXX"
$idx="321"
#------------------------------------------
# -----debug a 1 pour afficher qq messages, 0 sinon ----
$debug=1
#------------------------------
# la commande powershell pour recuperer etat batteries
$pourcent_batterie = (Get-WmiObject win32_battery).estimatedChargeRemaining
#------------------------------
$pair = "${user}:${pass}"
$bytes = [System.Text.Encoding]::ASCII.GetBytes($pair)
$base64 = [System.Convert]::ToBase64String($bytes)
$basicAuthValue = "Basic $base64"
$headers = @{ Authorization = $basicAuthValue }
## la commande json a passer est
# /json.htm?type=command¶m=udevice&idx=IDX&nvalue=0&svalue=PERCENTAGE
$url1="/json.htm?type=command¶m=udevice&idx="+$idx
$url2="&nvalue=0&svalue="+$pourcent_batterie
$urldz=($domoticz+$url1+$url2)
#Invoke the web-request avec les headers d'authentification
try { $json=Invoke-WebRequest -uri $urldz -Headers $headers } catch
{
$_.Exception.Response.StatusCode.Value__
if ($_.Exception.Response.StatusCode.Value__-eq 401) {write-host "erreur authentification user/pass"}
}
# recup reponse JSON
$infos_json = ConvertFrom-Json -InputObject $json
#recuperation depuis $infos_json avelc les libelles Domoticz
$Val_Retour=$infos_json.status
if ($debug-eq 1) {
Write-Host 'pourcentage: ' $pourcent_batterie
Write-Host $json
Write-Host "url Domoticz=" $urldz
Write-Host "message Json="$json
}
J'ai ce message d'erreur sous cmd :
Je continu mes recherches, je suis passé de la version Domoticz 2023.1 a 2024.6Microsoft Windows [version 10.0.19045.4780]
(c) Microsoft Corporation. Tous droits réservés.
C:\WINDOWS\system32>Powershell.exe -nologo -executionpolicy remotesigned -Command "& 'C:\Program Files (x86)\Domoticz\scripts\powershell\Niv_Charge_Batterie_PC.ps1'"
401
erreur authentification user/pass
ConvertFrom-Json : Impossible de lier l'argument au paramètre « InputObject », car il a la valeur Null.
Au caractère C:\Program Files (x86)\Domoticz\scripts\powershell\Niv_Charge_Batterie_PC.ps1:43 : 45
+ $infos_json = ConvertFrom-Json -InputObject $json
+ ~~~~~
+ CategoryInfo : InvalidData : (:) [ConvertFrom-Json], ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.ConvertFrom
JsonCommand
pourcentage: 96
url Domoticz= http://192.168.0.XX:XXXX/json.htm?type=command¶m=udevice&idx=321&nvalue=0&svalue=96
message Json=
C:\WINDOWS\system32>
Merci de toute aide éventuelle apportée. A priori Problème au niveau conversion Json.. User et Pass sont correctement renseignés, le dispositif concerné a bien été ajouté à l' user Controle_Batterie_PC.
Cdt
Bertrand
Dernière modification par balajol le 24 août 2024, 15:22, modifié 1 fois.
2024.6 PC Windows10 ; 2ème DEBIAN 10;DANFOSS LC13, Topp; Senseurs univ FIBARO FGBS001, Flood Sensor, ZMNHBD1 Flush 2 Relays ; FIBARO FGS222-FGS212;RFXCOM-RFXtrx433 USB 433.92MHz , Prises Phénix, Prises et Eclairage DI-O, SOMFY RTS,Sonoff ..
Re: Recuperer Notification Batterie ..% (Branche, pas en charge)
Re,
J'ai trouvé..
Pour ceux qui auraient le même problème, il faut cocher "autoriser l'authentification Basic-Auth sur du pur HTTP (API seulement)" dans les parametres/securité.
Bonne Journée
Cdt
Bertrand
J'ai trouvé..
Pour ceux qui auraient le même problème, il faut cocher "autoriser l'authentification Basic-Auth sur du pur HTTP (API seulement)" dans les parametres/securité.
Bonne Journée
Cdt
Bertrand
2024.6 PC Windows10 ; 2ème DEBIAN 10;DANFOSS LC13, Topp; Senseurs univ FIBARO FGBS001, Flood Sensor, ZMNHBD1 Flush 2 Relays ; FIBARO FGS222-FGS212;RFXCOM-RFXtrx433 USB 433.92MHz , Prises Phénix, Prises et Eclairage DI-O, SOMFY RTS,Sonoff ..