Einbindung Symphon-E /Fems - Auslesen schlägt fehl

groegner

New member
Hallo Zusammen,


habe große Probleme beim Einbinden meiner Solaranlage Symphon-E /Fems,


Was habe ich bereits verfolgt:


Aktuel versuche ich die Einbindung über die config.yaml und Rest-API.
Bei 2 Direktwerten ist mir das auch bereits gelungen.
Jetzt scheiter ich an Werten , die sich in der Rückgabe von json in einem Array befinden.Die suche im Array bekomme ich nicht hin. Kann da bitte wer helfen?

Beispiel aus der yaml.

Code:
- plattform: rest
    resource: "http://fems[meine Kennung]:8084/rest/channel/charger.+/.*"
    username: x
    password: user
    authentication: basic
    scan_interval: 20
    name: "FEMS PV 1 Leistung"
    value_template: "{{value_json | selectattr('address', 'equalto', 'charger0/ActualEnergy') | map(attribute='value') | first }}"
    unit_of_measurement: "W"
    device_class: power
    state_class: measurement
    unique_id: "fems/charger0/ActualPower"

dazugehörige Rückgabe im APi-Tester im Google-Chrome


Code:
[
{
"address": "charger0/ActualPower",
"type": "INTEGER",
"accessMode": "RO",
"text": "",
"unit": "W",
"value": 479
},
{
"address": "charger0/_PropertyId",
"type": "STRING",
"accessMode": "RO",
"text": "",
"unit": "",
"value": "charger0"
},
{
"address": "charger0/HasNoDcPv",
"type": "BOOLEAN",
"accessMode": "RO",
"text": "This GoodWe has no DC-PV. Chargers can be deleted.",
"unit": "",
"value": 0
},
{
"address": "charger0/State",
"type": "INTEGER",
"accessMode": "RO",
"text": "0:Ok, 1:Info, 2:Warning, 3:Fault",
"unit": "",
"value": 0
},
{
"address": "charger0/_PropertyMaxBatteryPower",
"type": "INTEGER",
"accessMode": "RO",
"text": "",
"unit": "",
"value": 5200
},
{
"address": "charger0/_PropertyMpptForShadowEnable",
"type": "STRING",
"accessMode": "RO",
"text": "",
"unit": "",
"value": "ENABLE"
},
{
"address": "charger0/_PropertyControlMode",
"type": "STRING",
"accessMode": "RO",
"text": "",
"unit": "",
"value": "SMART"
},
{
"address": "charger0/Current",
"type": "INTEGER",
"accessMode": "RO",
"text": "",
"unit": "mA",
"value": 1000
},
{
"address": "charger0/_PropertySafetyCountry",
"type": "STRING",
"accessMode": "RO",
"text": "",
"unit": "",
"value": "GERMANY"
}
]

der Wert steht definitiv drin, wird aber über den Sucheintrag in HA nicht gefunden, Was mache ich falsch?

Code:
 value_template: "{{value_json | selectattr('address', 'equalto', 'charger0/ActualEnergy') | map(attribute='value') | first }}"
 
in der kompletten Datei ist es dabei, ich hab jetzt mal das beispil in der suche auf actualPower gesetzt. aber auch da kommt nix. Anscheinend ist dieser Suchstring nicht richtig. Einzelwerte von anderen Punkten kommen ja aber wenn ich einen Eintrag mit werte-Array hab und über dieses Suchkonstrukt gehe findet HA keine Werte.
 
Oh Schande über mein Haupt : Fehler gefunden !!!
- plattform: rest = - platform: rest !!

Jetzt funktioniert es auch wies soll. Dankeschön
 
Aber eine neue Frage hätte ich dennoch, wie macht man aus 2 Einträgen dann eine Abfrage?

Quelle:

Code:
- platform: rest                                                                                                                 
   resource: "http://fems(meine Kennung):8084/rest/channel/charger.+/.*"                                                                     
   username: x                                                                                                                     
   password: user                                                                                                                 
   authentication: basic                                                                                                           
   scan_interval: 20                                                                                                               
   name: "FEMS PV 1 Leistung"                                                                                                     
   value_template: "{{value_json | selectattr('address', 'equalto', 'charger0/ActualPower') | map(attribute='value') | first }}"   
   unit_of_measurement: "W"                                                                                                       
   device_class: power                                                                                                             
   state_class: measurement                                                                                                       
   unique_id: "fems/charger0/ActualPower"                                                                                         
 - platform: rest                                                                                                                 
   resource: "http://fems(meine Kennung):8084/rest/channel/charger.+/.*"                                                                     
   username: x                                                                                                                     
   password: user                                                                                                                 
   authentication: basic                                                                                                           
   headers:                                                                                                                       
     User-Agent: Home Assistant                                                                                                   
     Content-Type: application/json                                                                                               
   scan_interval: 20                                                                                                               
   name: "FEMS PV 1 Spannung"                                                                                                     
   value_template: "{{value_json | selectattr('address', 'equalto', 'charger0/Voltage') | map(attribute='value') | first / 1000 }}"
   unit_of_measurement: "V"                                                                                                       
   device_class: voltage

Das sind Zwei Abfragen mit der selben Quelle und dem gleichen Ergebnis 9in einem Array aus dem einfach nur die Werte gezogen werden müssen.
 

Letzte Anleitungen

Statistik des Forums

Themen
7.739
Beiträge
75.707
Mitglieder
8.344
Neuestes Mitglied
BrunnerMich
Zurück
Oben