NEWS
Test Adapter Birthdays
-
@glasfaser
entschuldige das ich gestern nicht mehr geantwortet habe, im Privaten ist was passiert.
Hier das Debug:NPM version: 6.14.16 Installing iobroker.birthdays@2.1.0... (System call) npm ERR! code ENOTSUP npm ERR! notsup Unsupported engine for iobroker.birthdays@2.1.0: wanted: {"node":">=14.0.0"} (current: {"node":"12.22.12","npm":"6.14.16"}) npm ERR! notsup Not compatible with your version of node/npm: iobroker.birthdays@2.1.0 npm ERR! notsup Not compatible with your version of node/npm: iobroker.birthdays@2.1.0 npm ERR! notsup Required: {"node":">=14.0.0"} npm ERR! notsup Actual: {"npm":"6.14.16","node":"12.22.12"} npm ERR! A complete log of this run can be found in: npm ERR! /home/iobroker/.npm/_logs/2022-06-24T04_01_13_077Z-debug.log host.iobroker Cannot install iobroker.birthdays@2.1.0: 1
-
Zeige mal :
sudo ln -s /usr/bin/node /usr/bin/nodejs uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs
-
@glasfaser said in Test Adapter Birthdays:
uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs
Aufgrund der Nachrichten zu meinem Problem, habe ich Node auf 14 aktualisiert und siehe da, dass Programm lässt sich installieren. Also Danke für eure Hilfe!
Aber auf Nummer sichergehen falls @Glasfaser noch was Entdeckt.armv7l /usr/bin/nodejs /usr/bin/node /usr/bin/npm v14.19.3 v14.19.3 6.14.17 pi /opt/iobroker Hit:1 http://archive.raspberrypi.org/debian bullseye InRelease Hit:2 http://raspbian.raspberrypi.org/raspbian bullseye InRelease Hit:3 https://deb.nodesource.com/node_14.x bullseye InRelease Reading package lists... Done Building dependency tree... Done Reading state information... Done 35 packages can be upgraded. Run 'apt list --upgradable' to see them. nodejs: Installed: 14.19.3-deb-1nodesource1 Candidate: 14.19.3-deb-1nodesource1 Version table: *** 14.19.3-deb-1nodesource1 500 500 https://deb.nodesource.com/node_14.x bullseye/main armhf Packages 100 /var/lib/dpkg/status 12.22.5~dfsg-2~11u1 500 500 http://raspbian.raspberrypi.org/raspbian bullseye/main armhf Packages
-
@merlin1102 sagte in Test Adapter Birthdays:
noch was Entdeckt.
alles gut ...
EDIT :
35 packages can be upgraded.
nur dein System mußt du noch Updaten
-
@glasfaser
wunderbar. Dann noch mal vielen Dank für die Hilfe! -
@haus-automatisierung
Ich nutze in meiner Nextcloud mehrere Adressbücher, die alle Geburtstagsinformationen haben können. CardDAV kann ich somit bei deinem Adapter nicht nutzen um alle Geburtstage anzeigen zu lassen. Oder gibt es da einen Kniff?In Nextcloud Kalender kann ich mir Geburtstage der Kontakte zeigen lassen und diese sind dann aus allen Adressbüchern.
Also müsste doch mit der ical Funktion deines Adapters möglich sein diese Geburtstage abzufragen, tut sie hier aber nicht.
Der Linkhttps://<url>/remote.php/dav/calendars/<user>/contact_birthdays/?export
ausgeführt im Browser jedenfalls läd die Datei nach Benutzername und Passwort eingabe herunter.
Im Debug Log werden die Geburtstage gezeigt (ich habe das auf einen gekürzt und den Namen geändert):2022-07-22 17:26:49.605 - info: birthdays.0 (12297) starting. Version 2.1.0 in /opt/iobroker/node_modules/iobroker.birthdays, node: v16.16.0, js-controller: 4.0.23 2022-07-22 17:26:49.658 - debug: birthdays.0 (12297) [settings] done 2022-07-22 17:26:49.658 - debug: birthdays.0 (12297) [ical] url/path: https://<url>remote.php/dav/calendars/<user>/contact_birthdays/?export 2022-07-22 17:26:49.659 - debug: birthdays.0 (12297) [ical] addByCalendar - looks like an http url, performing get request 2022-07-22 17:26:49.659 - debug: birthdays.0 (12297) [ical] addByCalendar - performing https requests with rejectUnauthorized = false 2022-07-22 17:26:49.685 - debug: birthdays.0 (12297) [carddav] done - url not configured - skipped 2022-07-22 17:26:52.017 - debug: birthdays.0 (12297) [ical] http(s) request finished with status: 200 2022-07-22 17:26:52.030 - debug: birthdays.0 (12297) [ical] found 151 events 2022-07-22 17:26:52.032 - debug: birthdays.0 (12297) [ical] processing event: {"component":["vevent",[["dtstamp",{},"date-time","2022-07-15T12:51:47Z"],["dtstart",{},"date","1972-05-20"],["dtend",{},"date","1972-05-21"],["uid",{},"text","176a74a9-0e17-4d8f-9e4a-99b41bad8c3e"],["rrule",{},"recur",{"freq":"YEARLY"}],["summary",{},"text","🎂 Fritz Müller (1972)"],["transp",{},"text","TRANSPARENT"],["x-nextcloud-bc-field-type",{},"unknown","BDAY"],["x-nextcloud-bc-unknown-year",{},"unknown","0"],["x-nextcloud-bc-year",{},"unknown","1972"]],[["valarm",[["trigger",{},"duration","-PT0M"],["action",{},"text","DISPLAY"],["description",{},"text","🎂 Fritz Müller (1972)"]],[]]]],"_rangeExceptionCache":{},"exceptions":{},"rangeExceptions":[]} 2022-07-22 17:26:52.033 - debug: birthdays.0 (12297) [ical] missing birth year in event: 🎂 Fritz Müller (1972)
Die Geburtstage werden also erkannt, allerdings wird ein fehlendes Geburtsjahr angemeckert. Das steht aber in Klammern dabei.Ist es möglich deinen Adapter entsprechend zu erweitern?
PS: Ich kann dann gerne noch einen Request auf Github stellen
-
@fredf sagte in Test Adapter Birthdays:
Das steht aber in Klammern dabei.
Also soll ich jetzt auch noch das Geburtsjahr aus dem Namen parsen? Bitte trag das Geburtsdatum einfach in das richtige Feld ein und dann läuft es auch.
Siehe https://github.com/klein0r/ioBroker.birthdays/blob/master/docs/de/ical.md
-
@fredf sagte in Test Adapter Birthdays:
Ich nutze in meiner Nextcloud mehrere Adressbücher, die alle Geburtstagsinformationen haben können.
Ich habe NextCloud nicht laufen um das zu testen. Was ist denn jetzt der Wunsch? Dass man mehrere CardDAV Urls pflegen kann?
-
@haus-automatisierung sagte in Test Adapter Birthdays:
Also soll ich jetzt auch noch das Geburtsjahr aus dem Namen parsen?
Meine Güte, die kleinste sinnlose Anforderung und schon verweigerst du dich
@FredF : So ganz habe ich es nicht verstanden, aber wenn du die Info (aus ical ??) in der Form bekommst, dass das Geburtsjahr "irgendwo anders" steht, dann müsstest du das doch durch ein Skript parsen und richtig setzen können
-
@amg_666 So wie ich das verstanden habe baut NextCloud den Kalender automatisch aus den Adressbüchern zusammen. Und die haben es wohl für eine gute gehalten, das Geburtsdatum in Klammern hinter den Namen zu schreiben…
-
@haus-automatisierung sagte in Test Adapter Birthdays:
Bitte trag das Geburtsdatum einfach in das richtige Feld ein und dann läuft es auch.
Klappt nur nicht, da von Nextcloud vorgegeben.
@haus-automatisierung sagte in Test Adapter Birthdays:
Dass man mehrere CardDAV Urls pflegen kann?
Wenn das machbar ist, dann bitte ja.
@amg_666 sagte in Test Adapter Birthdays:
@FredF : So ganz habe ich es nicht verstanden, aber wenn du die Info (aus ical ??) in der Form bekommst, dass das Geburtsjahr "irgendwo anders" steht, dann müsstest du das doch durch ein Skript parsen und richtig setzen können
Keine Ahnung wie das geht... Könnte man versuchen, aber es gibt ja diesen Adapter
-
@fredf sagte in Test Adapter Birthdays:
Wenn das machbar ist, dann bitte ja.
Machbar ist das alles. Nur ein Breaking Change und ne Menge Arbeit für Dich als einzigen Nutzer mit der Anforderung. Gibts keine URL welche alle Kontakte aus allen Adressbüchern zurückgibt?!
-
@haus-automatisierung
Leider gibt es diese URL für alle Kontakte nicht. Ich hatte auch schon überlegt mal bei Nextcloud anzuklopfen um die Klammern rauszunehmen aber bei >500 auch recht alten open issues lasse ich das mal lieber
Aber wie von @amg_666 vorgeschlagen, parse ich jetzt ical und bekomme somit das Geburtsjahr und kann das Alter selbst ohne diesen Adapter berechnen -
Hallo,
ich pflege meine Kontakte über Synology Contacts mit CardDAV. Die Geburtstagsdaten sind im entsprechenden Feld bei den Kontakten natürlich eingetragen (z.B. 1969-12-9). Die CardDAV URL geht über https bzw. Port 5001 und funktioniert in allen anderen Anwendungen prima.
Allerdings bekomme ich die Objekte im iobroker nicht mit dieser URL gefüllt. Das sollte doch so funktionieren, oder übersehe ich was entscheidendes? Hat jemand einen Tip? -
@mom_fuzzi sagte in Test Adapter Birthdays:
funktioniert in allen anderen Anwendungen prima.
Und wie lange ist die Response time in anderen Anwendungen?
-
@haus-automatisierung im iobroker habe ich jetzt nichts weiter im CardDAV. Im Handy funktioniert die Synchronisation mit der Diskstation.
code 401 deutet doch auf ein Berechtigungsproblem hin, oder? Den Haken bei "Zertifikatsfehlern ignorieren" habe ich gesetzt.
Und die Geburtstage werden doch in das entsprechende Feld des Formulares eingetragen, oder? -
@mom_fuzzi sagte in Test Adapter Birthdays:
Und die Geburtstage werden doch in das entsprechende Feld des Formulares eingetragen, oder?
Was meinst Du damit? Was für ein Formular?
-
Im Synology-Contacts, bei der Erstellung eines neuen Kontaktes...
-
@mom_fuzzi Richtig, das Feld wird ausgewertet.
bday
heißt das in CardDAV. https://github.com/klein0r/ioBroker.birthdays/blob/2ba56d099abcd524648b0603d92be58a593c37df/main.js#L263 -
@haus-automatisierung
Danke für den Adapter, kann ich sehr gut gebrauchen.Mir ist aber aufgefallen, dass ich bei "Name" kein Leerzeichen machen kann, so kann ich keinen Vor- und Nachnamen eintragen. Ich denke das ist ein Bug.
Grüße Alex