NEWS
[Projekt] Bolio App
-
Hallo zusammen,
ich habe eine kleine Flutter Anwendung geschrieben, welche über die simpleAPI mit dem ioBroker kommuniziert.
Man kann mit ihr ein natives Dashboard erstellen mit welchem man Datenelemente anzeigen und schalten kann.
Ich wollte damit eine kleine Lösung ohne viel Schnick-Schnack bauen.Vielleicht kann sie jemand von euch gebrauchen.
Ich freue mich über jedes Feedback zur Weiterentwicklung.Viel Spaß beim Ausprobieren!
Github Repo: https://github.com/SiBolio/bolio/releases
EDIT:
Im Web Ordner befindet sich jetzt auch der aktuelle WEB Build.
https://github.com/SiBolio/bolio/tree/master/webDen Inhalt kann man z.B. auf den Raspi unter /var/www/html/ ablegen um dann über den Browser auf die App zugreifen zu können. Die Einstellungen sind wie bisher auf den Geräten einzeln gespeichert, deswegen müssen die Favoriten neu angelegt werden.
-
@Artemus
Dankeschön, die App hat wirklich Potential.
Habe sie kurz mal getestet. Wenn man das Prinzip verstanden hat, dann kann dies wirklich was ganz großes werden.Installation durch Apk kein Problem.
Vorteil ist auf jeden Fall die einfache Anbindung, nur sollte da für später dann auch der passwortschutz möglich sein um von unterwegs drauf zugreifen zu können. Btw. Kann man bedenkenlos später den api Port freischalten um per dyndns darauf zu kommen?
Zur App selbst, das auswählen der Favoriten ist noch etwas mühselig, da innerhalb der Adapter keine Struktur ist. Ich kann den Ansatz verstehen den du da verfolgst, aber mir wäre die die objektstruktur lieber. Da ich nicht weiß wo die selbstangelegten unterordner jetzt zu finden sind.
Vielleicht wäre es auch schön wenn man bestimmte datenpunkte vorher schon ausfiltern könnte oder diese nur nach Bedarf anzeigen lassen kann.
Derzeit sind diese auch nicht erkennbar sortiert, alphabetisch nach name oder id wäre super.
Unter Umständen wäre es beim auswählen auch schon gut den aktuellen Wert zu sehen um sicher zu sein das man den richtigen DP hat.Die Anpassung der einzelnen DP in der Anzeigeart finde ich super, da wird später bestimmt noch einiges an Ideen und Vorschläge kommen.
Hier fehlt derzeit noch die Möglichkeit selbst die Reihenfolge zu verändern oder wie man Unterseiten nutzen kann. Mit einer scrollbaren Seite werde ich später nicht klar kommen.Mir ist klar, das die App noch sehr früh in der Entwicklung ist, dennoch sollte man sich frühzeitig überlegen in welche Richtung das alles geht.
Hoffe du verstehst die Ideen und kannst diese umsetzen.Danke.
-
@e-s
Danke die für deine Rückmeldung,
bzgl. der Objektstrukturierung halte ich mich derzeit an das was mir von der Simple API geliefert wird, da muss ich mir noch Gedanken machen wie das übersichtlicher hinbekomme...
Eine Sortierfunktion gibt es übrigens schon Wenn man in seinen Favoriten ein Objekt gedrückt hält kann man es in der Liste verschieben. -
@Artemus
Ich war die Tage auch schon in Gedanken, halte eigentlich ja nicht viel davon irgendwelche ports zu öffnen.
Cloudnutzung ist auch nur teilweise schön.Da ich noch ungenutzten webspace habe, würde ich am liebsten Datenpunkte die ich von außen sehen oder verändern will, in eine Datenbank da drauf legen.
Aber das hat erstmal ja nichts mit deiner App zu tun.Ich hoffe du hast noch viel Lust an dem Projekt weiter zu machen.
-
Sehr schöne und minimale App! Erinnert mich an das Interface von "Blloc" (https://www.instagram.com/p/By7xiqSCa-j/).
Ich kann auch schon alle Adapter/States auflisten und welche als Favoriten auf die Startseite legen, doch leider haben diese absolut keine Funktion. Die Buttons schalten nicht, Einzelwerte werden nur mit einem Bindestrich angezeigt und Slider sind eine graue Fläche. Muss ich noch bestimmte Einstellungen in Simple-API vornehmen?Kleine Verbesserungsvorschläge:
- Die Suchfunktion liest nur von links nach rechts und ist case-sensitive. Man muss also genau wissen, wonach man sucht und kann nicht einfach "Switch" eingeben, um alle Switches zu bekommen.
- ( @e-s ) "Unter Umständen wäre es beim auswählen auch schon gut den aktuellen Wert zu sehen um sicher zu sein das man den richtigen DP hat."
Wenn man in der Liste auf einen State tippt, kommt nur ein Popup, das nochmals den Titel anzeigt. Da könnte man eventuell noch den aktuellen Wert einbauen.
Ich bin auch gerade dabei, mir meine eigene minimale VIS-Alternative zu basteln und habe deshalb noch paar technische Fragen an dich Warum setzt du auf die Simple-API und nicht socket.io? Also hat das einen bestimmten Grund? Und wie funktioniert bei dir diese 2-Wege-Verbindung zwischen ioBroker und Client? Ich arbeite mit Javascript und habe das Problem, dass beide Seiten gegeneinander ankämpfen, wer zuerst seinen State durchdrücken darf. Wenn ich im falschen Moment z.B. einen Button einschalte (
on
), aber zeitgleich der Stateoff
vom Server gelesen und in der App gesetzt wird, hat das drücken des Buttons nicht funktioniert und man muss es nochmals versuchen... und gerät womöglich dann wieder in den falschen Moment.Auf die Weiterentwicklung bin ich sehr gespannt!
-
@KLVN
Das mit den nicht-funktionalen Favoriten sollte natürlich nicht sein...hast du auch immer einen passenden Datenpunkt für die jeweiligen Widgets verwendet?
Also z.B. verwende ich für meine Lampen ein "Power"-Objekt mit der Rolle "Switch" welcher die Werte "true/false" annehmen kann.
Ich will zukünfig einen Vorschlag mit einbauen, der zu einem Objekt auch gleich ein Widget vorschlägt. Evlt. löst das einige Probleme beim Einrichten.
Mit der Suche hast du Recht, das sollte ich wirklich nochmal angehenBzgl. der technischen Seite:
Wie schon im Eingangstext gesagt setze ich bei der App auf "Flutter/Dart" um möglichst alle Plattformen gleichzeitig abdecken zu können und eine saubere und performante Lösung bauen zu können.
Von Haus aus ist es bei Flutter einfacher die Kommunikation über REST (Also die Simple API) zu bauen. Für socket.io gibt es zwar Plugins, aber da bin ich mir wiederum nicht sicher wer sie pflegt und ob sie auf all meinen Plattformen laufen wird.
Wenn du rein auf JS setzt ist socket.io natürlich super, da habe ich mit der ioBroker Schnittstelle auch nur gute Erfahrungen gemacht.
Mit einem REST Call hast du diese 2-Wege-Problematik auch nicht, da ich einfach einen Status setze und nach einer definierten Zeit den Status wieder abfragen kann/muss.
Solche zeitkritischen Überlegungen waren für mich bei dieser App aber zweitrangig.Danke für deine Rückmeldung!
-
Hmm, scheinbar funktioniert Bolio nur mit dem Shelly-Adapter nicht. Ich kann die Datenpunkte der anderen Geräte auslesen und sogar den Fernseher steuern* - nur Shelly scheint nicht zu funktionieren.
* an der Stelle würde ich noch einen setState-Button vorschlagen, der einen bestimmten Wert sendet
-
@KLVN
Ich nutze generell für alles was mir wichtig ist den linkeddevice Adapter. Darüber gingen Rollos über slider sowie Lampen über Schalter ohne Probleme per shelly Adapter. -
@e-s sagte in [Projekt] Bolio App:
@KLVN
Ich nutze generell für alles was mir wichtig ist den linkeddevice Adapter. Darüber gingen Rollos über slider sowie Lampen über Schalter ohne Probleme per shelly Adapter.Ach wie geil! Mit dem linkeddevices-Adapter funktioniert jetzt auch Bolio. Bin noch relativ neu auf dem Gebiet des ioBrokers und habe schon länger nach so einem Adapter gesucht. Danke!
-
Wirklich nett gemacht.
Installation total einfach, Konfiguration durch linkeddevices auch schnell gemacht.
Bei mir leider kein produktiver Einsatz, wird aber viele Fans finden.
Testen werde ich trotzdem. Helfe gern mit sowas weiter.
MfG
eMd -
Hallo zusammen,
ich habe etwas von eurer Kritik in die App eingearbeitetHauptsächliche Änderungen in der Version 0.2:
- Bei der Objektsuche wird der aktuelle Wert und der Objekttyp angezeigt
- Die Objektsuche lässt sich jetzt nach Typen filtern
Bugfixes und kleine Änderungen:
- Overflow bei Graph Widgets korrigiert
- Versionsnummer wird im Reiter "Sonstige" angezeigt
Hier gehts zur APK: https://github.com/SiBolio/bolio/releases
Vielen Dank euch fürs Testen und einen schönen Sonntag noch!
-
Ich habe die Benachrichtigungen bei GitHub aktiviert und mir auch gleich v0.2 installiert
Was mir gerade noch aufgefallen ist: wenn man in einer langen Liste das letzte Element favorisieren will, ist der Floating Action Button (FAB) exakt darüber. Entweder verkürzt man die Liste, indem man nach der ID sucht oder scrollt einen kleinen wenig herum, damit das Sternchen zwischen FAB und Bildschirmrand zu sehen und antippbar ist (siehe Screenshot).
-
@Artemus
Wie funktioniert das mit den graph Anzeigen, aus welchem Adapter muss der dp kommen? -
@e-s
Die Daten kommen vom History Adapter. Dort müssen für die Daten für den jeweiligen Zeitraum erst angesammelt werden. -
@Artemus
könnte da auch eine andere Quelle hinter liegen, wenn jemand bspw. MariaDB oder InfluxDB statt history einsetzt? -
@Artemus
Daher mein Problem, nutze influxdb -
@e-s
Ihr habt Recht, habe selbst nie was anderes als den History Adapter benutzt.
Aber sollte auch machbar sein. Ich schau mir das an! -
@Artemus
vielleicht kannst Du das hier abfragen, oder musst das am Datenpunkt selbst geschehen?
-
@Artemus
ich füge dir mal einen Datenpunkt eines per InfluxDB aufgezeichneten Datenpunktes an.
Unter "custom" befinden sich entsprechende Einträge die ggf. nutzbar sind?! -