[Neues Modul] 74_AutomowerConnect, Husqvarnas OpenAPI

Begonnen von Ellert, 17 Januar 2023, 14:33:07

Vorheriges Thema - Nächstes Thema

Ellert

#75
Ab dem morgigen Update:

Das Modul wurde mit einer Websocketverbindung zur Husqvarna API ergänzt, damit werden Änderungen ereignisnah angezeigt.

Das Attribut mowerActivityToHighLight steht nicht mehr zur Verfügung. Eine Hervorhebung kann über das Attribut mapDesignAttributes eingestellt werden.
Das Attribut interval wird nicht mehr benötigt , da die Websocketverbindung Events mit Datenupdates sendet.
Das Reading status_TimestampOld wird nicht mehr aktualisiert und darf mit deletereading gelöscht werden. Das Reading status_TimestampDiff sollte ausreichend sein zur Beurteilung der letzten Aktualisierung.
Das Reading state zeigt den Zustand der Websocketverbindung an. Das ist durch DevIo vorgegeben.
Das neue Reading device_state übernimmt die Funktion von state, also auch die Triggerung von userReadings, usw.
Das neue Reading mower_wsEvent zeigt die vom Mäher gesendeten Events(status-event, positions-events, settings-events) an.
Das neue Reading mower_commandSend zeigt den letzten erfolgreich gesendeten Befehl an.
Die vorletzten API-Daten werden nicht mehr gespeichert.
Das Mähericon wird in die Hauptbewegungsrichtung (Nord, Süd, Ost, West) positioniert.

ACHTUNG: Möglicherweise funktioniert der bereits verwendete Application Key (client_id) nicht, es muss dann ein neuer Key erzeugt und verwendet werden, siehe https://developer.husqvarnagroup.cloud/apis/automower-connect-api#websocket

Nach einem fehlerfreien Update sollte einmal save config ? im Frontend durchgeführt werden damit die Löschungen gespeichert werden.[/i]
Browsercache löschen und die Webseite neu laden.

Depechem

Zitat von: Ellert am 23 Mai 2023, 17:09:28Ab dem morgigen Update:

Das Modul wurde mit einer Websocketverbindung zur Husqvarna API ergänzt, damit werden Änderungen ereignisnah angezeigt.

Das Attribut mowerActivityToHighLight steht nicht mehr zur Verfügung. Eine Hervorhebung kann über das Attribut mapDesignAttributes eingestellt werden.
Das Attribut interval wird nicht mehr benötigt , da die Websocketverbindung Events mit Datenupdates sendet.
Das Reading status_TimestampOld wird nicht mehr aktualisiert und darf mit deletereading gelöscht werden. Das Reading status_TimestampDiff sollte ausreichend sein zur Beurteilung der letzten Aktualisierung.
Das Reading state zeigt den Zustand der Websocketverbindung an. Das ist durch DevIo vorgegeben.
Das neue Reading device_state übernimmt die Funktion von state, also auch die Triggerung von userReadings, usw.
Das neue Reading mower_wsEvent zeigt die vom Mäher gesendeten Events(status-event, positions-events, settings-events) an.
Das neue Reading mower_commandSend zeigt den letzten erfolgreich gesendeten Befehl an.
Die vorletzten API-Daten werden nicht mehr gespeichert.
Das Mähericon wird in die Hauptbewegungsrichtung (Nord, Süd, Ost, West) positioniert.

ACHTUNG: Möglicherweise funktioniert der bereits verwendete Application Key (client_id) nicht, es muss dann ein neuer Key erzeugt und verwendet werden, siehe https://developer.husqvarnagroup.cloud/apis/automower-connect-api#websocket

Nach einem fehlerfreien Update sollte einmal save config ? im Frontend durchgeführt werden damit die Löschungen gespeichert werden.[/i]
Browsercache löschen und die Webseite neu laden.

Hallo Ellert,
Ich habe geupdatet. Auch einen neuen Key habe ich erstellt.
Trotzdem kommt immer folgende Fehlermeldung direkt bei öffnen des Moduls.

#FHEMWEB notification:
AutomowerConnectUpdateDetail ( 'RasenroboterAM405X', 'AutomowerConnect', './fhem/AutomowerConnect/RasenroboterAM405X/map', 951, 686, 539, 89, 'top', 65.5998735272603, [ '-', '' ], [ 696,217,605,246,586,161,609,144,647,303,633,282,656,293,641,287,716,226,709,217,667,275,580,266,546,224,482,103,601,107,750,116,746,178,745,108,727,198,760,157,715,124,596,93,609,240,664,271,609,106,554,160,657,164,542,93,573,182,637,295,643,298,639,297,634,267,603,211,587,83,529,122,562,102,583,247,581,181,658,93,608,99,586,212,631,204,608,129,558,139,623,269,620,214,533,93,649,137,647,95,659,167,554,138,602,117,574,260,548,109,541,122,562,123,660,219,548,203,522,127 ], [ 457,76,800,115,739,214,693,184,715,143,709,138,681,183,729,221,675,299,631,268,595,312,585,313,577,322,579,338,570,351,614,390,544,464,516,437,492,468,513,493,385,601,357,586,337,600,315,607,272,577,307,526,307,526,357,563,425,485,443,479,487,422,493,408,492,401,487,396,463,374,500,323,516,321,518,302,496,286,476,267,453,251,477,235,502,220,500,212,489,202,476,194,462,201,452,220,410,194,429,161,437,169,454,146,447,139,469,110,489,136,495,128,477,107,479,101,460,84 ], [ ], [ -951,686 ], [ -14842024,86964963,0,0,-475,343 ], [ -14842024,86964963 ] )
TypeError: null is not an object (evaluating 'div.getAttribute( 'data-'+ type + 'LineDash' ).split')

Und ich sehe nur die Karte aber weder Mäher, noch Fahrstrecke
RaspberryPi2 / FHEM / 3 Wand-Tablets mit Tablet UI / HM USB / verschiedene HM-Aktoren / JeeLink USB für WS1600 und mehrere LaCrosse Sensoren / HEOS ...

Ellert

#77
Hast Du "Browsercache löschen und die Webseite neu laden." durchgeführt?

Da auch das Javascript erneuert wurde muss automowerconnect.js auch neu geladen werden. Wenn der Browsercache nicht gelöscht wird, dann wird ggf. die  alte Datei automowerconnect.js geladen. Das führt dann zu Fehlermeldungen.

Da die Farben der Pfade jetzt über das Attribut mapDesignAttributes eingestellt werden, kann im gesetzen Attribut etwas fehlen. Daher einmal das Attribut mit set <name> defaultDesignAttributesToAttribut neu setzen.

Ellert

Ab dem morgigen Update:

Die Statistik wurde nicht berechnet, behoben.
Beim Update der Karte werden nur noch Differenzdaten übermittelt.
Anzeige der täglichen Kollisionen zusätzlich im Reading statistics_numberOfCollisons (täglich/gesammt)
Ein Fehlerspeicher wurde eingebaut und ein Getter errorStack um ihn anzuzeigen

Der Browsercache muss gelöscht und die Webseite neu geladen werden, damit auch das erneuerte Javascript geladen wird.
Falls es dennoch zu Javascriptfehlern kommt, einmal das Attribut defaultDesignAttribues mit set <name> defaultDesignAttributesToAttribut neu setzen damit ggf. fehlende Attribute ergänzt werden.