NEWS
iOS App - Tester gesucht!
-
Hey zusammen, ich habe mir ein paar Nächte um die Ohren geschlagen und eine iOS App inkl. Adapter für den IoBroker erstellt.
DIe App verbindet sich mit einem IoBroker-Adapter und ermöglicht es deinem iOS-Gerät, Sensordaten an deinen IoBroker zu senden. Mit der App kannst du mehrere Server und Zonen definieren. Die Zonen werden im IoBroker angelegt, und Personen werden automatisch ein- und ausgeloggt. Außerdem wird die Entfernung zur Zone gesendet.
Features:
- Sensordatenübertragung: Dein iOS-Gerät sendet kontinuierlich Sensordaten an den IoBroker.
- Mehrere Server: Unterstützung für die Verbindung mit mehreren Servern.
- Zonenverwaltung: Definiere und verwalte mehrere Zonen, die im IoBroker angelegt werden.
- Präsenz- und Distanz-Tracking: Automatisches Ein- und Ausloggen von Personen in Zonen sowie Übermittlung der Entfernung zur Zone.
Offene Punkte:
- Push-Benachrichtigungen: Empfang von Push-Benachrichtigungen vom IoBroker zu iOS.
- NFC-Tags: Lesen und Schreiben von NFC-Tags sowie Auslösung von Aktionen im IoBroker.
- Widgets: Integration von Widgets (nur bei viel Motivation).
Beta-Tester werden:
Um Beta-Tester zu werden, aktiviere den Entwicklermodus auf deinem iPhone und sende mir deine UDID. Ich trage sie dann in meinen Entwickleraccount ein.
Wer mal lust hat zu testen, git adapter + iPhone im DEV mode wird benötigt.
-
Hi @stolly82 ,
zwar habe ich kein iPhone im dev modus, möchte dir aber gerne sagen dass die geposteten Screenshots sehr vielversprechend aussehen
Wenn du an den Punkt kommst um die App im Testflight zu haben teste ich gerne für dich
Steffen
-
@stolly82 Sieht stark aus! Wäre es nicht sinnvoll, das Ganze mit in die offizielle Visu-App mit einfließen zu lassen? Die kann ja mittlerweile auch Geofencing usw.
https://forum.iobroker.net/topic/74030/feature-geofence-anwesenheitserkennung-visu-app-v1-1
-
Die kannte ich gar nicht
Ich bin im August Vater von Zwillingen geworden, hatte aufgrund dessen tatsächlich das letzte Jahr ein bisschen den Faden verloren, und hatte beim Starten des Projektes nicht noch nachgekuckt, was es aktuell Neues gibt.
Die einzelnen Überschneidung sind wenn ich das richtig gesehen habe, bisher nur die Zonen.
Bei den Zonen hab ich allerdings noch ein paar Funktionen mehr drin, zum Beispiel, dass die Entfernung von ioBroker System geladen aus den Konfiguration zum iPhone mit angezeigt wird und kalkuliert wird.
In die Zonen wollte ich bei mir noch mit einarbeiten, dass die indoor Lokalisierung im Haus funktioniert. Ich hab aktuell mehrere Scripts, die zum Beispiel beacons oder über WLAN den Raum zu ordnen können, indem man ist.
Das wird vermutlich mit einer nativen iOS App wesentlich besser funktionieren wie mit meinem Skript, da das iPhone beziehungsweise die Apple Watch ja dann die Signale verarbeitet, aktuell arbeite ich genau andersrum, dass die Repeater beziehungsweise die ESP 32 in meinen Steckdosen dieses über triangulieren kalkulieren.
Was ich gestern fast fertig bekommen habe ist die NFC Funktion zum beschreiben der NFCs, ebenfalls das Triggern im ioBroker, wenn diese gelesen werden.
Wenn ich die Zwillinge heute im Bett hab, wollte ich mich heute an die Push Notifications setzen, da bin ich nur gerade im Kopf noch nicht soweit, ob ich das ganz normal über den Apple Server (APN) laufen lasse, oder ob ich websockets schreibe und über die internen Pushs laufen lassen,… oder sogar eine Kombination mit fallback.
Die Push Nachrichten habe ich generell schon vorbereitet, da ich Anforderungen aus einem anderen Projekt nutze, würde ich sehr wahrscheinlich ein Objektbaum im ioBroker aufbauen, wo man dann auch den Typ wie zum Beispiel Video oder Bilder oder normale Push Nachrichten einstellen kann, ebenfalls die iOS Töne Mappen kann etc.
Wenn alles fertig ist, kann ich mir vorstellen, dass wir das mit der offiziellen App Mergen, wenn es so gewünscht wird.
Ich habe mir auch schon CarPlay und Widgets angeguckt, da vermute ich, dass wir im ioBroker Adapter eventuell Templates einbauen, die man dann hinzufügen kann.
Meine persönliche To-do ist (nach Aufwand)
- Push Notification
- NFC
- CarPlay
- Widgets
- Triangulierung (noch nicht klar)
Falls ihr noch andere Ideen habt, die wirklich wichtig oder interessant sind, gib mir die gerne rüber, dann schaue ich mir dieses an.
-
@stolly82 könntest du eine Beta deiner IOS App über die TestFlight App bereitstellen?
-
Sieht super aus, fuer mich persoenlich finde ich es gut, eine Alternative App zur iobroker-vis zu haben, da mir fuer Unterwegs so etwas lieber ist, und ich auf meine Vis sowieso nur per VPN drauf komme.
Feature Push Notification mit Bild waere prima, NFC fantastisch und CarPlay natuerlich auch.
-
Erledigt!
TestFlight
Für TestFlight bitte die Email,... also alle die, die wollen!
-
Ich habe euch alle in das interne testing gesetzt, da ich für den externen Test im Store Connect noch Daten für die Prüfung hinterlegen muss, das geht vom iPhone aus nicht gut und ich habe für heute PC verbot bekommen
Ich hoffe ihr könnt drauf zugreifen, ansonsten erst morgen wenn ich das App in dem Build in das externe schiebe.
Ganz kurze Erklärung:
IoBroker Adapter (User PW vorübergehend deaktiviert)
Port Rest macht aktuell alles
Port Websocket macht bald alles
Ich schreibe noch mal in auf WS.WS notifications bin ich in IoBroker durch.
IOS
- Server hinzufügen
- wenn Verbindung geprüft lädt er die User, wenn keiner angelegt neu anlegen klicken (Auswahl etwas buggy)
- von dem User werden devices geladen oder neu anlegen.
Da packe ich automatisch das iOS device als Typ (iPhone, iPad) Vorauswahl rein wenn leer. - wenn ihr anlegen gedrückt habt speichert er den Server, IoBroker bekommt Daten.
Standort
Muss ich hoffentlich nichts erklären, Zonen werden im
IoBroker angelegt
Entfernung und presence wird gesetztBenachrichtigung
In Vorbereitung
Sensoren
Könnt ihr einzeln deaktivieren, geht noch nicht bei jedem
Interval 10 sec ist zum testen, es werden nur Änderungen gepusht, die speichere ich für jeden Server zwischen
NFC
habe ich tot gelegt, App Crash wenn man schreiben 2x gemacht hat und dann 1x lesen.
-
Super seit gestern Abend läuft es hier im Testsystem aufm Raspi4 mit bookworm und Node 22.
Js Controller 6.06Die App geht aufm ipad air 2021 und iPhone 13 mini
-
Geilo!
Ich bin gespannt ob du in den bisherigen Funktionen wirkliche bugs findest.
im Adapter name.device.connected funktioniert noch nicht sauber ist mir noch aufgefallen, da gehe ich aber erst dran wenn die WS implementiert sind, da ich den State dann daraus ziehe.
Wenn du in einer Location/Zone bist und die hinzufügst, während du drin bist, geht die nicht auf true.
Da muss ich aber schauen ob das zu vernachlässigen ist, da es wohn etwas mit dem anlegen zu tun hat.messages / push
Schau dir gerne den Objekt Baum mal an.
Mein Vorhaben, aus dem device die Töne laden und an den IoBroker übertragen, diese sollte dann als Auswahl bei Töne erscheinen.Alle Daten in dem Ordner messages werden beim send Button in den payload gehauen, der löst dann die Push aus.
Das hat den Grund, dass man dann auch den payloaf selber setzen kann, über JS Adapter z.B. und man dann nicht alle Objekte füllen muss.
-
Also Benachrichtigung geht bei mir nicht..
Im debug log passiert nichts.. es wird auch keine json erstellt.. -
@ilovegym sagte in iOS App - Tester gesucht!:
Also Benachrichtigung geht bei mir nicht..
Im debug log passiert nichts.. es wird auch keine json erstellt..Wenn du den Adapter auf debug stellst sollte eigentlich das pyload im log erscheinen, wenn du auf send true machst
-
Bei mir bricht die Installation des Adapters leider ab
$ iobroker url https://github.com/DNAngelX/ioBroker.iOSAppAdapter --host buanet-iobroker1 --debug install DNAngelX/ioBroker.iOSAppAdapter#c4bb9c68dd1fcd9f5b3f228a0bfb43d3b5c7455b NPM version: 10.8.1 Installing DNAngelX/ioBroker.iOSAppAdapter#c4bb9c68dd1fcd9f5b3f228a0bfb43d3b5c7455b... (System call) up to date in 2m169 packages are looking for funding run `npm fund` for details host.buanet-iobroker1 Cannot install DNAngelX/ioBroker.iOSAppAdapter#c4bb9c68dd1fcd9f5b3f228a0bfb43d3b5c7455b: 0 ERROR: Process exited with code 25
IoBroker läuft im Docker Container
Node.js v18.20.3
js-controller 6.0.6
admin 7.0.9 -
ja, das stand komischerweise nicht auf debug, hatte ich beim installieren aber angegeben, jetzt kommt ein Websocket error, der Port stimmt.. :
2024-07-03 07:24:34.051 - debug: iobapp.0 (205148) Redis Objects: Use Redis connection: 127.0.0.1:9001 2024-07-03 07:24:34.084 - debug: iobapp.0 (205148) Objects client ready ... initialize now 2024-07-03 07:24:34.087 - debug: iobapp.0 (205148) Objects create System PubSub Client 2024-07-03 07:24:34.089 - debug: iobapp.0 (205148) Objects create User PubSub Client 2024-07-03 07:24:34.118 - debug: iobapp.0 (205148) Objects client initialize lua scripts 2024-07-03 07:24:34.127 - debug: iobapp.0 (205148) Objects connected to redis: 127.0.0.1:9001 2024-07-03 07:24:34.146 - debug: iobapp.0 (205148) Redis States: Use Redis connection: 127.0.0.1:9000 2024-07-03 07:24:34.154 - debug: iobapp.0 (205148) States create System PubSub Client 2024-07-03 07:24:34.157 - debug: iobapp.0 (205148) States create User PubSub Client 2024-07-03 07:24:34.168 - debug: iobapp.0 (205148) States connected to redis: 127.0.0.1:9000 2024-07-03 07:24:34.288 - info: iobapp.0 (205148) starting. Version 0.0.2 in /opt/iobroker/node_modules/iobroker.iobapp, node: v22.3.0, js-controller: 6.0.6 2024-07-03 07:24:34.311 - debug: iobapp.0 (205148) Adapter ready: Initializing express app. 2024-07-03 07:24:34.323 - info: iobapp.0 (205148) WebSocket server listening on port 9191 2024-07-03 07:24:34.326 - info: iobapp.0 (205148) REST server listening on port 9192 2024-07-03 07:25:17.069 - debug: iobapp.0 (205148) Received request to set presence for zone: Home, person: Bernd with presence: undefined and distance: 18 2024-07-03 07:25:17.082 - debug: iobapp.0 (205148) Received request to set presence for zone: Home, person: Bernd with presence: undefined and distance: 0 2024-07-03 07:25:17.090 - debug: iobapp.0 (205148) Received request to set presence for zone: ESOC, person: Bernd with presence: undefined and distance: 8510 2024-07-03 07:25:17.099 - debug: iobapp.0 (205148) Received request to set presence for zone: ESOC, person: Bernd with presence: undefined and distance: 8524 2024-07-03 07:25:17.115 - info: iobapp.0 (205148) State iobapp.0.zones.Home.Bernd_distance changed: 18 (ack = true) 2024-07-03 07:25:17.118 - debug: iobapp.0 (205148) Distance for Bernd in Home set to 18 2024-07-03 07:25:17.139 - info: iobapp.0 (205148) State iobapp.0.zones.Home.Bernd_distance changed: 0 (ack = true) 2024-07-03 07:25:17.140 - info: iobapp.0 (205148) State iobapp.0.zones.ESOC.Bernd_distance changed: 8510 (ack = true) 2024-07-03 07:25:17.141 - debug: iobapp.0 (205148) Distance for Bernd in Home set to 0 2024-07-03 07:25:17.145 - debug: iobapp.0 (205148) Distance for Bernd in ESOC set to 8510 2024-07-03 07:25:17.199 - info: iobapp.0 (205148) State iobapp.0.zones.ESOC.Bernd_distance changed: 8524 (ack = true) 2024-07-03 07:25:17.201 - debug: iobapp.0 (205148) Distance for Bernd in ESOC set to 8524 2024-07-03 07:26:04.885 - info: iobapp.0 (205148) State iobapp.0.person.Bernd.iphone13m.messages.send changed: true (ack = false) 2024-07-03 07:26:04.937 - info: iobapp.0 (205148) State iobapp.0.person.Bernd.iphone13m.messages.payload changed: {"aps":{"alert":{"title":"test","subtitle":"testsubtitle","body":"test"},"sound":"default","badge":1,"category":"INVITE_CATEGORY"}} (ack = true) 2024-07-03 07:26:04.940 - debug: iobapp.0 (205148) Payload generated for Bernd's iphone13m: {"aps":{"alert":{"title":"test","subtitle":"testsubtitle","body":"test"},"sound":"default","badge":1,"category":"INVITE_CATEGORY"}} 2024-07-03 07:26:04.952 - warn: iobapp.0 (205148) WebSocket not connected, queuing message for Bernd's iphone13m 2024-07-03 07:26:04.956 - info: iobapp.0 (205148) State iobapp.0.person.Bernd.iphone13m.messages.send changed: false (ack = true) 2024-07-03 07:26:05.006 - info: iobapp.0 (205148) State iobapp.0.person.Bernd.iphone13m.messages.payload changed: (ack = true) 2024-07-03 07:26:12.790 - debug: iobapp.0 (205148) Received request to set value for path: person.Bernd.iphone13m.sensors.activity to Stationary 2024-07-03 07:26:12.796 - debug: iobapp.0 (205148) Received request to set value for path: person.Bernd.iphone13m.sensors.battery_state to Unplugged
-
hat bei mir 2 versuche gebraucht, dann gings.. und ich konnte keine Instanz im Admin anlegen, habs aber auf den buggy Admin 7.x geschoben.. und dann alles von der Konsole aus gemacht, das ging dann ohne Probleme..
-
@stolly82 Installation schlägt leider fehl:
iobroker url https://github.com/DNAngelX/ioBroker.iOSAppAdapter --debug install DNAngelX/ioBroker.iOSAppAdapter#c4bb9c68dd1fcd9f5b3f228a0bfb43d3b5c7455b NPM version: 10.7.0 Installing DNAngelX/ioBroker.iOSAppAdapter#c4bb9c68dd1fcd9f5b3f228a0bfb43d3b5c7455b... (System call) up to date in 22s 198 packages are looking for funding run `npm fund` for details host.PVE-Iobroker Cannot install DNAngelX/ioBroker.iOSAppAdapter#c4bb9c68dd1fcd9f5b3f228a0bfb43d3b5c7455b: 0
keine weiteren Informationen
IoBroker läuft unter Debian in Proxmox
Node.js v20.15.0
js-controller 6.0.5
admin 7.0.2 -
bite update mal deine Betas.. der Fehler kann auch gut an den alten Versionen liegen..
-
@ilovegym kann ich leider gerade nicht, wenn ich den Adminadapter hochziehe crasht mir der Javascriptadapter permanent , den js-controler habe ich auch noch nicht stabil :), weil Beta :).
-
@tomtom24 wenn alle Versionen auf dem aktuellen Stand sind, gibts zur Zeit keine Crashs..
Ausserdem.. was hat der Admin mit dem javascript zu tun?
Mach dazu am besten mal ein eigenen Thema auf, und lass uns hier mal guggen.. -
Im Menu NFC wird das Menu Location angezeigt...