SMA Sunny Home Manager abfragen.

Begonnen von Brun, 07 Oktober 2014, 10:40:34

Vorheriges Thema - Nächstes Thema

Kalli01

Bei mir hat SMA heute den Benutzer von Standard auf Gast geändert.

11.03.2016 12:19:02 Anlage Portal/Kommunikation Info Benutzer 'xxx@xxxx.de' wurde durch serviceline@sma.de bearbeitet.

Dann ging es nicht mehr

klausph

Ich krieg seit Sonntag gar keine Livedaten mehr, weder im fhem noch im Browser und nicht als Standardbenutzer oder als normaler Benutzer.
Als Meldung gabs 'Communication with the Sunny Home Manager is currently not possible.Check the Sunny Home Manager Internet connection and try again.'
Meine Internetverbindung ist aber ok und die Tagesdaten kommen trotzdem an. Mit der IOS App kann ich auch die Livedaten sehen.
Seltsam!

Albatros_

Hallo, das Modul funktioniert bei mir einwandfrei ! Vielen Dank.

@Brun du hast in deinem ersten Post ein Plot in dem GridConsumption und SelfConsumption dargestellt bei dem du die beiden Werte scheinbar addiert hast damit sie gestapelt erscheinen. Bei mir laufen die beiden Werte ineinander. Kannst du dein Gplot File mal posten?

Grüße
Albatros

Michael

Moin

@all
Habt ihr das http://www.sma.de/partners/sma-developer.html schon gesehen?
Leider bin ich nicht in der Lage dazu.  :-[ ::)
Gruß, Michael

FHEM 6.0 auf RPi 3
CUL V3 868 Mhz | JeeLink LaCrosse & PCA301 | CCU3
BMP085(180) | 14x TX29DTH-IT | 5x PCA 301 | SMA Peripheries | MobileAlerts MA-10(100,120PRO,200,251,410,650,660,800) | HM IP

Waldmensch

Cool, wenn ich mir die Homemanager Doku laden will, muß ich sagen, was ich damit machen will. Was weiß ich denn, was da überhaupt drinsteht  :D

Xguide

#170
Hallo miteinander,

ich habe genau das gleiche Problem wie klausp.
Seit 2016-03-15 04:01:58, bekomme ich keine Daten mehr.
Der Login Status besagt folgendes: Login successful 2016-03-17 14:47:15
Wenn ich das sma Modul nun auf verbose 5 stelle, wird es ziemlich voll bei mir im Log:


2016.03.17 11:55:36 5: sunnyHomeManager -> 200
2016.03.17 11:55:36 4: not logged in. try to login...
2016.03.17 11:55:37 5: sunnyHomeManager -> 200
2016.03.17 11:55:37 5: sunnyHomeManager ->

<!DOCTYPE html>
<!--[if IE 8]><html class="ie8 oldie"><![endif]-->
<!--[if IE 9 ]><html class="ie9"><![endif]-->
<!--[if gt IE 9]><!--><html><!--<![endif]-->
    <head id="ctl00_Head"><meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" /><title>
SMA Solar Technology AG - Sunny Portal
</title><link rel="shortcut icon" type="image/x-icon" href="../favicon.ico" /><link rel="apple-touch-icon" href="../apple-touch-icon.png" />
    <link rel="stylesheet" href="/dist/css/sma.theme.css?v=7.9.13.40782"/>

    <link rel="stylesheet" href="/dist/css/sma.webforms.css?v=7.9.13.40782"/>


<!--[if IE ]>
<link rel="stylesheet" type="text/css" href="/Content/themes/redesign/webforms.ie.css" />
<![endif]-->

    <link rel="stylesheet" href="/dist/css/sma.modules.css?v=7.9.13.40782"/>
<link rel="stylesheet" type="text/css" href="/Content/Login/RedesignMaster.css" /><link rel="stylesheet" type="text/css" href="/Tools/css/form/form.css" /><link rel="stylesheet" type="text/css" href="/Tools/css/shadowbox/shadowbox.css" />



<script src="/Scripts/require.js?v=7.9.13.40782"></script>
<script src="/Scripts/requirejs-config.js?v=7.9.13.40782"></script>
<script>
    requirejs.config({ urlArgs: 'v=7.9.13.40782' });
    (function (global, name, factory) {
        global.SMA = global.SMA || {};
        global.SMA[name] = factory();
    }(this, 'version', function () {
        return '7.9.13.40782';
    }));
</script>


Für mich sieht es so aus als wenn die ganze Page ins log geschrieben wird.

Der Aufruf im Browser sieht dagegen besser aus:


https://www.sunnyportal.com/homemanager

{"__type":"LiveDataUI","Timestamp":{"__type":"DateTime","DateTime":"2016-03-17T14:54:23","Kind":"Unspecified"},"PV":6413,"FeedIn":6095,"GridConsumption":0,"DirectConsumption":288,"SelfConsumption":318,"SelfSupply":288,"TotalConsumption":288,"DirectConsumptionQuote":4,"SelfConsumptionQuote":5,"AutarkyQuote":100,"BatteryIn":30,"BatteryOut":0,"BatteryChargeStatus":97,"OperationHealth":null,"BatteryStateOfHealth":null,"ModuleTemperature":null,"EnvironmentTemperature":null,"WindSpeed":null,"Insolation":null,"InfoMessages":[],"WarningMessages":[],"ErrorMessages":[],"Info":{}}


Jemand eine Idee?

Update: SMA hatte auch meinen FHEM-Benutzter auf Gastrechte gesetzt, allerdings funktioniert es nach wie vor nicht. Einstellung ist jetzt wieder Standardbenutzer!

Gruß Marcel
FHEM 5.9 - Intel NUC i3 mit Proxmox im Stretch Container
HomeMatic - VCCU mit 2 x HM-LAN-CFG
Module: SMA Peripheries - Sonos - IPCam(s) - Philips Hue - Sprinkler - TabletUI - DBlog -

BerndArnold

Hallo,
bitte mal die Cookies-Datei löschen und danach prüfen, ob sie wieder erstellt wird.

Möglicherweise ist das "Login successful" aus dem Reading auch irreführend. Es wird geprüft, ob in der Antwort "Login Failed" vorkommt. Falls nicht, wird "successful" gesetzt. So hat es damals bei meinem Test geklappt. Möglicherweise wird aber eine andere Fehlermeldung zurückgegeben.

Also: erstmal prüfen, ob das Löschen der Cookies-Datei hilft.

Wenn das nichts bringt wäre es hilfreich, die Antwort beim Login-Versuch zu kennen. Dazu kannst du folgenden Abschnitt nach Log3 $hash->{NAME}, 5, "$hash->{NAME} -> " . $loginp->code; (ziemlich am Ende von 98_SHM.pm) hinzufügen (Modul anschließend neu laden oder Neustart von Fhem durchführen):

    open TEMPOUT, ">", "/tmp/98_SHM_loginp-output.txt";
    print TEMPOUT $loginp->content;
    close TEMPOUT;


Die Rückgabe vom Login wird in die angegebene Datei geschrieben (Annahme von mir: du hast Linux).
FHEM auf Raspberry Pi mit Arch Linux
2x HM-LAN, 1x CUL
HomeMatic, FS20, Dreambox, Fritzbox
MQTT zur Kommunikation mit zweiter und dritter FHEM-Instanz

Xguide

#172
Hallo BerndArnold,

danke für deine Antwort.

1. Löschen der mycookies.txt hat nichts gebracht, nach wie vor login = successfull
2. Erweitertes Login eingebaut, ja Jessie auf nem RaPi 2, und die gleiche Ausgabe wie im Log bei Verbose 5.
    Siehe vorheriger Post.

--> Aber ich habe es rausgefunden. Ich habe mal versucht mich mit dem User am Portal anzumelden und siehe da, Kennwort falsch... SMA hat nicht nur die Rechte für den Account verbogen, sondern auch das Kennwort verändert. Ist das noch jemandem passiert? Wie häufig holt ihr die Daten ab?
FHEM 5.9 - Intel NUC i3 mit Proxmox im Stretch Container
HomeMatic - VCCU mit 2 x HM-LAN-CFG
Module: SMA Peripheries - Sonos - IPCam(s) - Philips Hue - Sprinkler - TabletUI - DBlog -

Michael

Moin Xguide

Zitat... dem User am Portal anzumelden und siehe da, Kennwort falsch... SMA ...
Das Kennwort war bei mir auch Falsch.
Auch mit ein neuem bekomme ich keine Daten mehr.  :'(
Gruß, Michael

FHEM 6.0 auf RPi 3
CUL V3 868 Mhz | JeeLink LaCrosse & PCA301 | CCU3
BMP085(180) | 14x TX29DTH-IT | 5x PCA 301 | SMA Peripheries | MobileAlerts MA-10(100,120PRO,200,251,410,650,660,800) | HM IP

Xguide

Hallo Michael,

ich habe den User im Portal gelöscht und neu angelegt, die Email besagte dann, dass das Kennwort gleichgeblieben sei. Ich konnte mich jedoch nicht anmelden, somit habe ich das Kennwort zurückgesetzt, sprich das Alte mir bekannte vergeben. Anschließend habe ich FHEM neu gestartet und schon kamen wieder Werte.
Wie sieht denn Dein Log bei Verbose 5 aus, bzw. was steht im erweiterten Logging (Vorgehen siehe Post von BerndArnold).

Noch mal die Frage, wie häufig pollt ihr die Daten?

Ich habe bei mir 60s eingestellt...

Ein schönes Wochenende,

Marcel
FHEM 5.9 - Intel NUC i3 mit Proxmox im Stretch Container
HomeMatic - VCCU mit 2 x HM-LAN-CFG
Module: SMA Peripheries - Sonos - IPCam(s) - Philips Hue - Sprinkler - TabletUI - DBlog -

Michael

#175
Hallo Xguide

Danke für deine Antwort.

Zitatich habe den User im Portal gelöscht und neu angelegt ...
Leider hat auch das nichts geholfen.

ZitatAutor: BerndArnold
« am: 17 März 2016, 18:46:16 » Zitat einfügen
Habe das gemacht,
Die Dateien sind im Anhang.

Habe aber noch die Hoffnung, das eines Tages ein anderes Modul kommt.  ;)
ZitatAutor: Michael
« am: 14 März 2016, 17:34:17
Gruß, Michael

FHEM 6.0 auf RPi 3
CUL V3 868 Mhz | JeeLink LaCrosse & PCA301 | CCU3
BMP085(180) | 14x TX29DTH-IT | 5x PCA 301 | SMA Peripheries | MobileAlerts MA-10(100,120PRO,200,251,410,650,660,800) | HM IP

BerndArnold

Hallo Michael,
vielen Dank für die Ausgabe. Das war sehr aufschlussreich. In deinem Fall ist diese Zeile enthalten

<span id="ctl00_ContentPlaceHolder1_Logincontrol1_ErrorLabel" class="base-error">Login failed! Login will be blocked for 125 seconds.</span>

Meine Prüfung im Perl-Modul war auf "Login Failed" (also ein großes F). Bei einem erfolgreichen Login wird dieses Span-Konstrukt nicht ausgegeben, das habe ich gerade getestet.

Ich habe die Prüfung angepasst. "Login successful" wird jetzt nur gesetzt, wenn die Span-ID in der Ausgabe nicht vorkommt. Ansonsten wird der Inhalt als zusätzliches Reading gesetzt.

Mein angepasster Code sieht jetzt so aus:
    if ( $loginp->content =~ /<span id="ctl00_ContentPlaceHolder1_Logincontrol1_ErrorLabel" class="base-error">([^<]+)<\/span>/ ) {
        readingsSingleUpdate($hash, "Login-Status", "Login failed", 1);
        readingsSingleUpdate($hash, "Login-Error", "$1", 1);
    } else {
        readingsSingleUpdate($hash, "Login-Status", "Login successful", 1);
        readingsSingleUpdate($hash, "Login-Error", "", 1);                                                                             
    }


Das Reading Login-Error wird auf den Inhalt vom Span gesetzt (was in meinem Fall jetzt gleich ist mit dem Login-Status, siehe Bild im Anhang).

Viele Grüße
Bernd
FHEM auf Raspberry Pi mit Arch Linux
2x HM-LAN, 1x CUL
HomeMatic, FS20, Dreambox, Fritzbox
MQTT zur Kommunikation mit zweiter und dritter FHEM-Instanz

Michael

#177
Hallo BerndArnold

Das ganze wird bei mir  ::) immer seltsammer.
Neuen Standardnutzer Angelegt und prompt Fehlermeldung "Login failed".
Selbst beim Sunnyportal Mail-Addr od. PWD Falsch.

Mit meiner Admin Mail klappt alles.

ZitatMein angepasster Code sieht jetzt so aus:
Code: [Auswählen]
    if ( $loginp->content =~ /<span id="ctl00_ContentPlaceHolder1_Logincontrol1_ErrorLabel" class="base-error">([^<]+)<\/span>/ ) {
        readingsSingleUpdate($hash, "Login-Status", "Login failed", 1);
        readingsSingleUpdate($hash, "Login-Error", "$1", 1);
    } else {
        readingsSingleUpdate($hash, "Login-Status", "Login successful", 1);
        readingsSingleUpdate($hash, "Login-Error", "", 1);                                                                             
    }
Diesen Code habe ich übernommen. Danke.

PS. Hatte gerade im Sunnyportal neue User mit unterschiedliche Rechte angelegt.
      Und mit keinen konnte ich mich Anmelden.
      Denke mal das dass Sunnyportal bei mir Probleme macht.
      So werde ich erstmal mit meiner Admin Mail es laufen lassen müssen.
      Zugang von Außen ist nicht gegeben.
Gruß, Michael

FHEM 6.0 auf RPi 3
CUL V3 868 Mhz | JeeLink LaCrosse & PCA301 | CCU3
BMP085(180) | 14x TX29DTH-IT | 5x PCA 301 | SMA Peripheries | MobileAlerts MA-10(100,120PRO,200,251,410,650,660,800) | HM IP

BerndArnold

Zitat von: Michael am 19 März 2016, 13:50:01
Mit meiner Admin Mail klappt alles.

Das ist echt seltsam. Also natürlich freut es mich, dass du wieder Werte bekommst, aber dass du dazu das Adminkonto brauchst, finde ich merkwürdig. Bei mir geht es weiterhin mit einem Standardbenutzer.

Hm, vielleicht liegt es auch an dem Kennwort? Zu komplex? Zuviele oder "falsche" Sonderzeichen mit drin? Oder zu kurz? Oder zu lang? Das ist noch ein Punkt, an dem du experimentieren könntest...

Zitat von: Xguide am 18 März 2016, 14:57:49
Noch mal die Frage, wie häufig pollt ihr die Daten?

Ich habe bei mir 60s eingestellt...

Ein schönes Wochenende,

Marcel

Dito für das 98_SHM. Die Forecast-Werte ca. alle 6 Minuten.
FHEM auf Raspberry Pi mit Arch Linux
2x HM-LAN, 1x CUL
HomeMatic, FS20, Dreambox, Fritzbox
MQTT zur Kommunikation mit zweiter und dritter FHEM-Instanz

DS_Starter

#179
Hallo Brun, hallo BerndArnold, hallo Solar-Freunde,

herzlichen Dank für dieses hilfreiche Modul welches bei mir nun ebenfalls gute Dienste leistet.  :)

Ausgehend vom Originalmodul von Brun habe ich mein Modul alledings komplett auf Blocking.pm umgestellt, weil mein FHEM sonst 1-3 Sekunden beim Datenabruf blockierte.
Auch sonst habe ich einiges umgebaut und angepasst, es sind auch Ideen enthalten die hier im Forum geäußert wurden.
Ich möchte euch die Änderungen die ich gemacht habe nicht vorenthalten.

Hier die Änderungen (sind auch im Kopf des Moduls enthalten):

- Nutzung von BlockingCall um blockierende Situationen zu vermeiden
- nur ein BlockingCall zur gleichen Zeit darf laufen (entspr. Doku im Wiki)
- Attribut "timeout" (default 30) für den Portalabruf
- Attribut "userAgent" um den Useragnt eingeben zu können (default: "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)"
- Attribut "disable" disabled das Modul temporär wenn "1"
- Attribut "cookieLocation" für Pfad/namen des cookiefile (default: "./log/mycookies.txt")
  Achtung: nicht ändern wenn 98_SHMForecast.pm eingesetzt wrd -> Abhängigkeit !
- erweiterte Logeinträge für verbose-modes
- Testroutine für "Login failed" geändert (nur Test auf "Logincontrol1_ErrorLabel")
- alle Readings werden upgedatet, nicht nur diejenigen bei denen sich die Werte geändert haben
   -> das führt zu einer korrekten SVG-Darstellung wenn Werte lange Zeit "0" sind und dann auf einen anderen Wert ändern

Wenn ihr das Modul einsetzt und "stateFormat" so setzt:

{ ReadingsVal("$name","state", undef) eq "disabled" ? ReadingsVal("$name","state", undef) : ReadingsVal("$name","state", undef)." W ,ToGrid (+) , FromGrid (-)" }


wird auch der disabled-Status in der Übersicht entprechend angezeigt wenn gesetzt.

Ich hoffe meine Änderungen sind eine Anregung und nutzen euch etwas.

Den Datenabruf mache ich übrigens alle 185 Sekunden mit einem Standardnutzer.

Schönes WE und viele Grüße
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter