NEWS
Android App ioGo 2.2.x
-
Hi All,
die App wurde von Java auf Kotlin umgeschrieben.
Was vorher Java war ist nun Kotlin, das betrifft so ziemlich 95% der Programmecodes.
Oder anders ausgedrückt sind es über 500 Dateien die angepasst wurden.Mit Hilfe einiger neugieriger User wurde die Anpassungen der Version 2.2 bisher in einer Betaphase vorab getestet und noch einige Verbesserungen bei den Themes vorgenommen. Vielen Dank für die sehr aktive Unterstützung.
Was hat sich geändert:
- Neue Themes für Dark und Light
- Änderungen am Layout der Statelisten um längere Textwerte anzuzeigen
- Anzeige von Zusatztexten bei Switches
- Neuer Login Screen beim ersten Starten der App
- Feedback beim eingeben der Logindaten
Als nächstes ist Geplant die App für das iPhone zu entwicklen.
Bei Schwierigkeiten mit der neuen Version gerne melden.
Wer weitere Ideen für sinnvolle Anpassungen oder zusätzliche Funktionen darf diese gerne nennen.
Wem die App gefällt, darf gerne mir eine Freude machen und eine positive Bewertung im Google Playstore verfassen. Danke dafür schon mal vorab.
Viele Grüße
Nis -
Super, vielen Dank für das Update! Das helle Theme gefällt mir sehr gut!
Mir sind noch ein paar Dinge aufgefallen.
-
Die Temperaturreglung von den Thermostaten (level.temperature) ist nun nicht mehr per Schieberegler möglich. Stattdessen muss man einen Zahlenwert eingeben. Ist das Absicht?
-
Objekte mit der Rolle "state" und dem Type "boolean" lassen sich nicht mehr zwischen True und False ändern, trotz Schreibrechten. Alternativ würde es jedoch funktionieren, wenn ich dem ganzen die Rolle "switch" gebe.
-
-
@bjoernson sagte in Android App ioGo 2.2.x:
Die Temperaturreglung von den Thermostaten (level.temperature) ist nun nicht mehr per Schieberegler möglich. Stattdessen muss man einen Zahlenwert eingeben. Ist das Absicht?
Der Schieberegler sollte bei allen States der Rolle level.x erscheinen wenn min und max angegeben sind und Schreibrechte vorhanden sind. Poste gerne mal den RAW von deinem Objekt und ich teste das bei mir.
-
@bjoernson sagte in Android App ioGo 2.2.x:
Objekte mit der Rolle "state" und dem Type "boolean" lassen sich nicht mehr zwischen True und False ändern, trotz Schreibrechten. Außer ich füge eine Liste wie im folgenden Beispiel mit dem RAW-Editor zum Objekt dazu. Dann lassen sich die Werte wieder schalten.
Was ist denn das für ein State, macht vielleicht Sinn dort die Rolle switch.irgendwas zu nutzen.
-
@bjoernson sagte in Android App ioGo 2.2.x:
Objekte mit der Rolle "state" und dem Type "boolean" lassen sich nicht mehr zwischen True und False ändern, trotz Schreibrechten. Alternativ würde es jedoch funktionieren, wenn ich dem ganzen die Rolle "switch" gebe.
Du hast scheinbar selber die Antwort gefunden und deinen Beitrag editiert. Ja, das sollte sinnvoller sein.
-
@nis said in Android App ioGo 2.2.x:
@bjoernson sagte in Android App ioGo 2.2.x:
Die Temperaturreglung von den Thermostaten (level.temperature) ist nun nicht mehr per Schieberegler möglich. Stattdessen muss man einen Zahlenwert eingeben. Ist das Absicht?
Der Schieberegler sollte bei allen States der Rolle level.x erscheinen wenn min und max angegeben sind und Schreibrechte vorhanden sind. Poste gerne mal den RAW von deinem Objekt und ich teste das bei mir.
level, min, max und Schreibrechte sind vorhanden. Es handelt sich dabei um Homematic Wandthermostate:
{ "from": "system.adapter.hm-rpc.2", "ts": XXXXXXXXXXX, "user": "system.user.admin", "common": { "name": "Küche Soll-Temp.", "type": "number", "unit": "°C", "role": "level.temperature", "def": 20, "min": 4.5, "max": 30.5, "read": true, "write": true, "custom": { "history.0": { "enabled": true, "changesOnly": true, "debounce": "1000", "maxLength": 1, "retention": "31536000", "changesRelogInterval": 0, "changesMinDelta": 0, "aliasId": "Temperatur-Kueche-SOLL" }, "material": { "admin": { "useDefaultIcon": "", "name": "Soll-Temperatur", "colorOn": "", "doubleSize": true, "icon": "data:image/svg+xml;base64,XXXXXX", "background": "", "enabled": true } } }, "smartName": { "de": "hm-rpc.2.XXXXXXXXXX.2.SET_TEMPERATURE" } }, "native": { "CONTROL": "HEATING_CONTROL.SETPOINT", "ID": "SET_TEMPERATURE", "TYPE": "FLOAT", "UNIT": "°C", "DEFAULT": 20, "FLAGS": 1, "MAX": 30.5, "MIN": 4.5, "OPERATIONS": 7, "TAB_ORDER": 8 }, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 }, "_id": "hm-rpc.2.XXXXXXXXXX.SET_TEMPERATURE", "type": "state" }
-
@bjoernson probiere mal oben es an den Nachkommastellen bei min/max liegt
-
@nis said in Android App ioGo 2.2.x:
@bjoernson sagte in Android App ioGo 2.2.x:
Objekte mit der Rolle "state" und dem Type "boolean" lassen sich nicht mehr zwischen True und False ändern, trotz Schreibrechten. Alternativ würde es jedoch funktionieren, wenn ich dem ganzen die Rolle "switch" gebe.
Du hast scheinbar selber die Antwort gefunden und deinen Beitrag editiert. Ja, das sollte sinnvoller sein.
Da warst du aber auch schnell mit antworten ;). Nehmen wir an ich habe das Objekt "Anwesend". In der Regel möchte ich eigentlich nur schauen ob jemand anwesend ist oder nicht. Im Notfall kann es aber passieren, dass etwas nicht funktioniert und ich diese variable manuell schalten muss. In der alten App Version konnte ich beim klick auf einen state die Wörter true oder false beim klick auf das Objekt per Textfeld schreiben. Das fand ich sehr praktisch. Auf einen Button (switch) kommt man auch schnell mal aus versehen. Wenn man das Wort manuell schreiben muss, macht man dies bewusst.
Ist aber alles kein Beinbruch. Es gibt ja Lösungen
-
@nis said in Android App ioGo 2.2.x:
@bjoernson probiere mal oben es an den Nachkommastellen bei min/max liegt
Nicht ganz. Es liegt an der Nachkommastelle vom aktuellen Sollwert. Das bedeutet also, der Regler erscheint nur, wenn der Soll-Wert eine Ganze Zahl ist. Sobald der Wert eine Kommastelle hat, verschwindet der Regler. Bei Homematic bedeutet übrigens ein Soll-Wert von 4.5°C, dass das Thermostat aus ist. Da alle Thermostate gerade auf 4.5(aus) gestellt sind, ist kein Balken sichtbar.
-
@bjoernson sagte in Android App ioGo 2.2.x:
@nis said in Android App ioGo 2.2.x:
@bjoernson probiere mal oben es an den Nachkommastellen bei min/max liegt
Nicht ganz. Es liegt an der Nachkommastelle vom aktuellen Sollwert. Das bedeutet also, der Regler erscheint nur, wenn der Soll-Wert eine Ganze Zahl ist. Sobald der Wert eine Kommastelle hat, verschwindet der Regler. Bei Homematic bedeutet übrigens ein Soll-Wert von 4.5°C, dass das Thermostat aus ist. Da alle Thermostate gerade auf 4.5(aus) gestellt sind, ist kein Balken sichtbar.
Perfekt, dann haben wir schonmal die Ursache. Ich überlege mir eine Lösung damit dort Schieberegler genutzt werden können
-
@nis
Hi,
ich verwende die App in Version 2.2.4, in Functions werden die Anzahlen der Geräte/Sensoren usw. richtig angezeigt, klickt man dann auf eine Kathegorie sind bspw. nicht 7 sondern nur 4 oder garkeine Geräte in der Gruppe.
Habe mir dann eine 1 Jahreslizens gekauft weil ich dachte dass das vielleicht am IoB liegt, aber es hat sich nichts geändert.
Und im Log habe ich nichts aufschlussreiches außer folgende Fehlermeldungen:
Die Adapterversion ist die 0.5.9
-
@Peoples Zeig mal das RAW von einem der States im Log, vielleicht bekommen wir´s damit hin.
-
@CrunkFX
Hi,
bitteschön:{ "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1592510953835, "common": { "name": "VitoBetriebFerien", "desc": "Ferienbetrieb" }, "native": {}, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 }, "_id": "viessmann.0.get.VitoBetriebFerien", "type": "state" }
Meinst du die leeren Einträge kommen von dem Fehler vorher?
-
@Peoples Da ich leider nicht genau weiß was deine Datenpunkte Anzeigen also Text oder Zahl o.Ä. hier mal ein Beispiel:
Ich bin mir ziemlich sicher, dass iogo wissen muss welchen Typ der Datenpunkt hat, es geht zwar ohne Rolle aber bestimmt nicht ohne Typ. Gib dazu mal nen Typ in der DP Konfig an und schau mal was passiert.{ "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1592510953835, "common": { "name": "VitoBetriebFerien", "desc": "Ferienbetrieb", "type": "string", "read": true, "write": true, "role": "value", }, "native": {}, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 }, "_id": "viessmann.0.get.VitoBetriebFerien", "type": "state" }
"type": "string", <-- Typ angeben "string", "number", "boolean" o.ä. "read": true, "write": true, <-- Evtl. Schreibzugriff gewähren "role": "value", <-- Rolle angeben, bei Text "text" oder "info" o.ä.
-
@CrunkFX
Also wenn ich bei den Datenpunkten einen type angebe moniert er genau diesen nicht mehr. Wäre es für mich einfacher möglich einfach den Adapter nicht auszuwerten?Hast du auch eine Lösung wegen den leeren Auflistungen?
-
@Peoples Hast du mal unter info synchronisiert?
-
@Peoples Wie gesagt, ein Type ist notwendig sonst gibt´s fehler im Log. Ob iogo die dann in der Auflistung nicht Anzeigt weiß ich nicht. Allerdings muss der Type natürlich dem Wert entsprechen. Macht Viessmann eine Zahl muss der Type number sein. Siehst du denn in deinen Aufzählungen gar keine Items oder nur bestimmte nicht?
-
@CrunkFX
Die leeren Listen sind nicht die Viessmann Datenpunkte sondern Licht oder Ähnliches.Also, ich habe nun den Viessmann Adapter neu installiert, und habe ich folgendes:
{ "type": "state", "common": { "name": "VitoTempWWSoll", "unit": "°C", "type": "number", "desc": "Warmwassersolltemperatur in °C", "read": true, "write": false }, "native": {}, "from": "system.adapter.viessmann.0", "user": "system.user.admin", "ts": 1592668103189, "_id": "viessmann.0.get.VitoTempWWSoll", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
Moniert wird das nach wie vor obwohl nun ein Type drin steht.
Dazugekommen sind nun diese Fehlermeldungen:
iogo.0 2020-06-20 18:00:36.664 warn (29542) Value of state javascript.0.Bewaesserung.Vorne.bwVentilSchalten has wrong type iogo.0 2020-06-20 18:00:36.664 warn (29542) Value of state javascript.0.Bewaesserung.Terasse.bwVentilSchalten has wrong type iogo.0 2020-06-20 18:00:36.664 warn (29542) Value of state javascript.0.Bewaesserung.Terasse.bwAktiv has wrong type iogo.0 2020-06-20 18:00:36.664 warn (29542) Value of state javascript.0.Bewaesserung.Hinten.bwVentilSchalten has wrong type
und:
2020-06-20 00:03:16.909 - warn: iogo.0 (24211) EnumObject is corrupt: enum.functions.Zentrale 2020-06-20 00:03:16.909 - warn: iogo.0 (24211) EnumObject is corrupt: enum.functions.weckerdatenpunkte 2020-06-20 00:03:16.909 - warn: iogo.0 (24211) EnumObject is corrupt: enum.rooms.Fittness 2020-06-20 00:03:16.910 - warn: iogo.0 (24211) EnumObject is corrupt: enum.rooms.Gaeste WC 2020-06-20 00:03:16.910 - warn: iogo.0 (24211) EnumObject is corrupt: enum.rooms.Keller ELW WC 2020-06-20 00:03:16.910 - warn: iogo.0 (24211) EnumObject is corrupt: enum.rooms.Schlafzimmer 2020-06-20 00:03:16.910 - warn: iogo.0 (24211) EnumObject is corrupt: enum.rooms.Werkstatt
-
@Peoples Deine Bewässerungs DP scheinen auch keinen Type zu haben, haben deine Enums ein gemeinsames Objekt was evtl. den Fehler verursachen könnte?
-
@Peoples sagte in Android App ioGo 2.2.x:
Hi,
ich verwende die App in Version 2.2.4, in Functions werden die Anzahlen der Geräte/Sensoren usw. richtig angezeigt, klickt man dann auf eine Kathegorie sind bspw. nicht 7 sondern nur 4 oder garkeine Geräte in der Gruppe.Es kann sein dass du Objekte zugeordnet hast die es entweder gar nicht mehr gibt oder Objekte zugeordnet hast vom Type Channel oder Device. Angezeigt werden in der App jedoch nur direkt zugeordnete Objekte vom Typ State