Calendar kann Netxcloud Kalender nicht laden

Begonnen von WhyTea, 16 Februar 2022, 12:20:43

Vorheriges Thema - Nächstes Thema

WhyTea

Hallo
Ich versuche meinen Nextcloud Kalender nicht laden.
Im Log finde ich den Eintrag:
Calendar kalender: error (data not in ICal format; even not gzip data)

List des Calenderdevice:
Internals:
   DEF        ical url https://user:password@whytea.ipfire-zuhause.de/remote.php/dav/calendars/user/kalender/?export 3600
   FUUID      620ccda6-f33f-a5a6-d560-cc1decfee8fb0a76
   NAME       kalender
   NOTIFYDEV  global
   NR         1802
   NTFY_ORDER 50-kalender
   STATE      triggered
   TYPE       Calendar
   READINGS:
     2022-02-16 11:47:23   calname         kalender
     2022-02-16 11:47:23   lastUpdate      2022-02-16 11:47:21
     2022-02-16 11:47:23   nextUpdate      2022-02-16 12:47:21
     2022-02-16 12:09:55   nextWakeup      2022-02-16 13:09:54
     2022-02-16 12:09:55   state           triggered
Attributes:
   DbLogExclude .*
   SSLVerify  1
   hideOlderThan 1
   room       Obergeschoss 1->Arbeitszimmer,Zentralsysteme->Heizung


attr global httpcompress 0

ist schon gesetzt

Wenn ich die Adresse im Browser eingebe öffnet sich ein Download-Dialog. :-/

Ich seh glaube ich gerade wieder den Wald vor  lauter Bäumen nicht und hoffe auf Hilfe.

Gruß
Daniel


darkness

#1
Hey

Zitatuser/kalender/


Da muss der Benutzer und der Kalender stehen. So bei mir. Oder sind das jetzt nur "Platzhalter"?

Ich habe noch das Attribut SSLVerify gesetzt.


Hast du ja auch

Gruß

WhyTea

#2
Danke für die schnelle Antwort.

Ich habe hier natürlich alle Benutzernamen und Passwörter durch user bzw. Password ersetzt.

Wie gesagt wenn ich den verwendetem Link im Browser aufrufe erscheint der download dialog.

CoolTux

Bei mir geht es auch nur wenn ich public export mache

/remote.php/dav/public-calendars/jdkhfjkfsf76345gzfsd86t?export 86400
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

WhyTea

Zitat von: CoolTux am 16 Februar 2022, 12:46:49
Bei mir geht es auch nur wenn ich public export mache

/remote.php/dav/public-calendars/jdkhfjkfsf76345gzfsd86t?export 86400

https://whytea.ipfire-zuhause.de/remote.php/dav/public-calendars/ao4Drg8pdrGH8Afg?export


Klappt bei mir auch nicht.
2022.02.16 12:57:01 2: Calendar Nageltermine: error (data not in ICal format; even not gzip data)


CoolTux

Was ist wenn Du den Link im Browser aufrufst?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

WhyTea

Zitat von: CoolTux am 16 Februar 2022, 13:00:12
Was ist wenn Du den Link im Browser aufrufst?
Dann öffnet ich ein Download Dialog.

darkness

Kannst du vom FHEM-Server (z.b mit wget) auf die Kalender zugreifen?

WhyTea

#8
Zitat von: darkness am 16 Februar 2022, 13:03:02
Kannst du vom FHEM-Server (z.b mit wget) auf die Kalender zugreifen?
jop das geht auch
root@fhem:~# wget https://whytea.ipfire-zuhause.de/remote.php/dav/public-calendars/ao4Drg8pdrGH8Afg?export
--2022-02-16 13:21:43--  https://whytea.ipfire-zuhause.de/remote.php/dav/public-calendars/ao4Drg8pdrGH8Afg?export
Verbindungsaufbau zu 192.168.6.1:800 ... verbunden.
Proxy-Anforderung gesendet, auf Antwort wird gewartet ... 200 OK
Länge: nicht spezifiziert [text/calendar]
Wird in »ao4Drg8pdrGH8Afg?export« gespeichert.

ao4Drg8pdrGH8Afg?export                   [ <=>                                                                    ] 359,02K  --.-KB/s    in 0,002s 

2022-02-16 13:21:45 (151 MB/s) - »ao4Drg8pdrGH8Afg?export« gespeichert [367638]

root@fhem:~#


Wenn ich die Datei öffne sieht die auch normal aus. :-/

Hier mal die ersten Zeilen.

BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
PRODID:-//SabreDAV//SabreDAV//EN
X-WR-CALNAME:Naegel (nadine)
X-APPLE-CALENDAR-COLOR:#EE82EE
REFRESH-INTERVAL;VALUE=DURATION:PT4H
X-PUBLISHED-TTL:PT4H
BEGIN:VTIMEZONE
TZID:Europe/Berlin
BEGIN:DAYLIGHT
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
TZNAME:CEST
DTSTART:19700329T020000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
TZNAME:CET
DTSTART:19701025T030000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
END:STANDARD
END:VTIMEZONE
BEGIN:VTIMEZONE
TZID:Africa/Tunis
BEGIN:DAYLIGHT
DTSTART:20060326T020000
RRULE:FREQ=YEARLY;UNTIL=20080330T010000Z;BYMONTH=3;BYDAY=-1SU
TZNAME:MESZ
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
END:DAYLIGHT
BEGIN:STANDARD
DTSTART:20081026T030000
TZNAME:MEZ
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
END:STANDARD
...

darkness

Ja, das sieht gut aus. Aber meine Ideen sind damit aufgebraucht.....

WhyTea

Ich habe mal für das Device Verbose auf 5 gestellt.
Das Ergebnis hilft mir aber auch nicht weiter :-(

2022.02.16 13:46:03 4: Calendar Nageltermine: Updating...
2022.02.16 13:46:03 5: SSL verify mode set to 1
2022.02.16 13:46:03 4: Calendar Nageltermine: Getting data from URL <hidden>
2022.02.16 13:46:03 5: Calendar Nageltermine: HTTP response code 200
2022.02.16 13:46:03 4: Calendar Nageltermine: parsing data asynchronously (PID= 2675761)
2022.02.16 13:46:03 5: Calendar Nageltermine: control passed back to main loop.
2022.02.16 13:46:04 4: Calendar Nageltermine: got result from asynchronous parsing.
2022.02.16 13:46:04 4: Calendar Nageltermine: asynchronous parsing finished.
2022.02.16 13:46:04 2: Calendar Nageltermine: error (data not in ICal format; even not gzip data)
2022.02.16 13:46:04 4: Calendar Nageltermine: Checking times...
2022.02.16 13:46:04 4: Calendar Nageltermine: process ended.

CoolTux

Mach das ganze mal direkt auf dem FHEM Server per wegt und schaue Dir das erhaltene File an.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

WhyTea


betateilchen

Lege mal einen neuen Kalender ohne Einträge in Deiner nextcloud an und teste, ob das Problem mit dem neuen Kalender auch auftritt.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!


CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

betateilchen

Bei mir funktioniert Dein public Calendar völlig problemlos.


defmod nc_test Calendar ical url https://whytea.ipfire-zuhause.de/remote.php/dav/public-calendars/PSCcwp9TABM24m3y?export

setstate nc_test triggered
setstate nc_test 2022-02-16 16:17:04 calname test2 (nadine)
setstate nc_test 2022-02-16 16:17:04 lastUpdate 2022-02-16 16:17:02
setstate nc_test 2022-02-16 16:17:04 nextUpdate 2022-02-16 17:17:02
setstate nc_test 2022-02-16 16:17:04 nextWakeup 2022-02-16 17:17:02
setstate nc_test 2022-02-16 16:17:04 state triggered

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

WhyTea

#17
Zitat von: CoolTux am 16 Februar 2022, 16:17:50
Dein Link klappt bei mir.

Das ist ja schon mal gut dann kann ich eine externe Fehlerquelle ausschließen.

Aber ich weis nicht wo ich noch suchen soll. :-(
Zumal ich noch einen Google Kalender abfrage und das funktioniert einwandfrei.

Dr. Boris Neubert

Spuckt der fhem.pl-Prozess noch was aus? Ich meine, was Du auf der Konsole sehen würdest, wenn Du FHEM nicht als Daemon sondern im Vordergrund starten würdest?
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

WhyTea

Es ist bei mir einen Debian Installation und FHEM wird als Service gestartet.
Dem entsprechend habe ich keine Ausgabe auf der Konsole.

Ich probiere es aber gerne aus. Was muss ich tun?

betateilchen

Zitat von: WhyTea am 17 Februar 2022, 08:58:13
Ich probiere es aber gerne aus. Was muss ich tun?

Auf die Systemkonsole gehen, den FHEM Service stoppen und FHEM dann von der Konsole im Verzeichnis /opt/fhem manuell starten mit "perl fhem.pl fhem.cfg"
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Du hattest geschrieben, dass Du die Kalenderdatei manuell per wget abrufen kannst.

Hast Du mal probiert, die heruntergeladene Datei als Calendar in FHEM einzulesen?

defmod testCal Calendar ical file <pfadName/dateiName>

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

WhyTea

Zitat von: betateilchen am 17 Februar 2022, 09:25:49
Du hattest geschrieben, dass Du die Kalenderdatei manuell per wget abrufen kannst.

Hast Du mal probiert, die heruntergeladene Datei als Calendar in FHEM einzulesen?

defmod testCal Calendar ical file <pfadName/dateiName>

Ja das geht.

Wobei mir dabei aufgefallen ist das es vielleicht ein Berechtigungsproblem ist.
Der User root konnte die Datei per wget holen der User fhem aber nicht weil er keine Schreibberechtigung in dem Pfad /home/fhem/ hatte.
Aus einem mir nicht nachvollziehbaren Grund gehörte das Verzeichnis User 1000 und nicht fhem. Nachdem ich das geändert hatte konnte die Datei per wget geholt werden.

Da FHEM unter User fhem läuft wird das Calender Modul die Datei auch als User fhem schreiben wollen aber wohin? Und warum treten diese Probleme nicht mit dem Google-Kalender auf?  :o

Dr. Boris Neubert

Zitat von: WhyTea am 17 Februar 2022, 10:05:41
Da FHEM unter User fhem läuft wird das Calender Modul die Datei auch als User fhem schreiben wollen aber wohin? Und warum treten diese Probleme nicht mit dem Google-Kalender auf?  :o

Das Calendar-Modul lädt den iCalendar in den Speicher, es wird keine Datei erzeugt. Hier kann das Problem nicht bestehen.
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Dr. Boris Neubert

Was kommt denn eigentlich auf

get Nageltermine vcalendar

zurück?
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Dr. Boris Neubert

Und auch mal das Attribut SSLVerify auf 0 setzen.
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

WhyTea

Zitat von: Dr. Boris Neubert am 17 Februar 2022, 10:11:07
Was kommt denn eigentlich auf

get Nageltermine vcalendar

zurück?
jquery.min.js line 1:
SyntaxError: expected expression, got '<'

WhyTea

Zitat von: Dr. Boris Neubert am 17 Februar 2022, 10:13:00
Und auch mal das Attribut SSLVerify auf 0 setzen.

Das hatte ich schon probiert. Das ändert nix.

Dr. Boris Neubert

Zitat von: WhyTea am 17 Februar 2022, 10:18:13
jquery.min.js line 1:
SyntaxError: expected expression, got '<'


Aha, kommt das aus FHEMWEB?

Kannst Du Dich bitte mal mit

telnet DeineFHEMMaschine 7072

oder einem anderen Terminalprogramm mit der FHEM-Konsole verbinden und den Befehl dort ausführen?
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

aramis

Ich hatte ein ähnliches Problem.
Ich musste damals die URL anpassen.
Bei deinem Beispiel wäre es:

https://user:password@whytea.ipfire-zuhause.de/remote.php/dav/calendars/<dein-username>/<kalender-name>?export
Ich musste das letzte "/" vor dem Fragezeichen entfernen. Danach lief es komischerweise.
####################
=> ganz viele verrückte Ideen
####################

WhyTea

Zitat von: Dr. Boris Neubert am 17 Februar 2022, 10:27:17
Aha, kommt das aus FHEMWEB?
Ja das kommt auf dem FHEMWEB als Popup.

Zitat von: Dr. Boris Neubert am 17 Februar 2022, 10:27:17
Kannst Du Dich bitte mal mit

telnet DeineFHEMMaschine 7072

oder einem anderen Terminalprogramm mit der FHEM-Konsole verbinden und den Befehl dort ausführen?

An localhost kann ich mich mit telnet verbinden.
root@fhem:~# telnet 127.0.0.1 7072
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Password:

fhem>

sowohl als root als auch als fhem

Meine Telnet Konfiguration sieht wie folgt aus:
define localTelnet telnet 7072
setuuid localTelnet 5c46c491-f33f-a5a6-4bcf-04f6f482c8c2af03
attr localTelnet room Zentralsysteme->System

define allowed_localTelnet allowed
setuuid allowed_localTelnet 5c46c491-f33f-a5a6-1164-e761fd956edfda82
attr allowed_localTelnet password xxxxxxxxxx
attr allowed_localTelnet room Zentralsysteme->System
attr allowed_localTelnet validFor localTelnet


CoolTux

Dann geh noch mal in die telnet Session und mach da ein

get Nageltermine vcalendar
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

WhyTea

Zitat von: CoolTux am 17 Februar 2022, 11:07:48
Dann geh noch mal in die telnet Session und mach da ein

get Nageltermine vcalendar

Sieht für mich gut aus.

root@fhem:~# su fhem
fhem@fhem:/root$ cd /home/fhem/
fhem@fhem:/home/fhem$ telnet 127.0.0.1 7072
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Password:

fhem> get Nageltermine vcalendar
<!DOCTYPE html>
<html class="ng-csp" data-placeholder-focus="false" lang="de" data-locale="de" >
<head
data-requesttoken="">
<meta charset="utf-8">
<title>
NW HomeConsulting </title>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
<meta name="apple-itunes-app" content="app-id=1125420102">
<meta name="theme-color" content="#B90081">
<link rel="icon" href="/apps/theming/favicon?v=10">
<link rel="apple-touch-icon" href="/apps/theming/icon?v=10">
<link rel="mask-icon" sizes="any" href="/core/img/favicon-mask.svg" color="#B90081">
<link rel="manifest" href="/apps/theming/manifest?v=10">
<link rel="stylesheet" href="/core/css/guest.css?v=c807d3aa-10">
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/core/js/dist/main.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/core/js/dist/files_fileinfo.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/core/js/dist/files_client.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/js/core/merged-template-prepend.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/core/l10n/de.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/apps/comments/l10n/de.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/apps/comments/js/comments-app.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/apps/files_sharing/l10n/de.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/apps/files_sharing/js/dist/main.js?v=c807d3aa-10"></script>
</head>
<body id="body-login">
<noscript>
<div id="nojavascript">
<div>
Diese Anwendung benötigt JavaScript zum ordnungsgemäßen Betrieb. Bitte <a href="https://www.enable-javascript.com/" target="_blank" rel="noreferrer noopener">aktiviere JavaScript</a> und lade die Seite neu. </div>
</div>
</noscript>
<input type="hidden" id="initial-state-comments-max-message-length" value="MTAwMA==">
<input type="hidden" id="initial-state-comments-maxAutoCompleteResults" value="MTA=">
<input type="hidden" id="initial-state-accessibility-data" value="eyJjaGVja01lZGlhIjp0cnVlLCJ0aGVtZSI6ZmFsc2UsImhpZ2hjb250cmFzdCI6ZmFsc2V9">
<div class="wrapper">
<div class="v-align">
<header role="banner">
<div id="header">
<div class="logo">
<h1 class="hidden-visually">
NW HomeConsulting </h1>
<img src="/apps/theming/image/logo?useSvg=1&amp;v=10"/>
</div>
</div>
</header>
<main>
<div class="error">
<h2>Fehler</h2>
<ul>
<li>
<p>App not installed: </p>
</li>
</ul>
</div>
</main>
</div>
</div>
<footer role="contentinfo">
<p class="info">
<a href="http://www.nw-nails.de" target="_blank" rel="noreferrer noopener" class="entity-name">NW HomeConsulting</a> – ein sicherer Ort für all Deine Daten </p>
</footer>
</body>
</html>

fhem>

Dr. Boris Neubert

So, damit ist ein Teil des Problems gelöst.

Der Abruf der URL aus der Nextcloud liefert nicht den Kalender sondern eine Webseite, die sich darüber beschwert, dass Javascript nicht aktiviert ist. Warum ein wget auf dieselbe URL aber den Kalender beschafft, ist mir unklar. Ich hoffe auf die Kenner der Kalender-Funktion von Nextcloud.

Kannst Du bitte mal aramis' Rat befolgen?

Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

WhyTea

Zitat von: Dr. Boris Neubert am 17 Februar 2022, 11:39:52
Kannst Du bitte mal aramis' Rat befolgen?
Das macht bei mir leider keinen Unterschied ob mit oder ohne "/"


WhyTea

Zitat von: CoolTux am 16 Februar 2022, 16:17:50
Dein Link klappt bei mir.

Zitat von: betateilchen am 16 Februar 2022, 16:18:50
Bei mir funktioniert Dein public Calendar völlig problemlos.


defmod nc_test Calendar ical url https://whytea.ipfire-zuhause.de/remote.php/dav/public-calendars/PSCcwp9TABM24m3y?export

setstate nc_test triggered
setstate nc_test 2022-02-16 16:17:04 calname test2 (nadine)
setstate nc_test 2022-02-16 16:17:04 lastUpdate 2022-02-16 16:17:02
setstate nc_test 2022-02-16 16:17:04 nextUpdate 2022-02-16 17:17:02
setstate nc_test 2022-02-16 16:17:04 nextWakeup 2022-02-16 17:17:02
setstate nc_test 2022-02-16 16:17:04 state triggered



Das wundert mich dann jetzt aber wirklich!  ???

WhyTea

#36
Okay ich hab die Ursache gefunden.

Ich betreibe meinen FHEM hinter einem Proxy und habe das Attribut dem entsprechend gesetzt.

attr global proxy 192.168.6.1:800
attr global proxyExclude ^192\.168\.6\.*|.*\.lan\.whity$


Wenn ich das Attribut entferne und dem FHEM direkten Internetzugang erlaube geht es.

Nun habe ich im Kalenderdevice das Attribut SSLVerify gesetzt.
attr Nageltermine SSLVerify 0

Zusätzlich habe ich die Kalender URL auf die lokale IP-Adresse der Nextcloud geändert.
defmod Nageltermine Calendar ical url https://user:password@192.168.6.114/remote.php/dav/calendars/nadine/naegel?export 3600

Das geht jetzt auch. Dies ist natürlich nur ein Workaround und eigentlich keine Lösung bzw. Erklärung warum es durch einen Proxy nicht geht.
Zumal das nur geht weil ich meine Netxcloud bei mir Zuhause betreibe und nicht bei einem Hoster.

Aber wir sind wieder einen Schritt weiter und ich bin gerne weiter bei der Analyse behilflich.  ;D




Dr. Boris Neubert

Sehr gut, wir kommen weiter!

Das Fehlerbild deutet darauf hin, dass FHEM Schwierigkeiten haben könnte, via HTTPUtils über einen Proxy auf den Nextcloud-Server zuzugreifen.

Gehen Aufrufe des Kalenders via wget auch über den Proxy?
Die Seite, die statt des VCALENDARs heruntergeladen wird, kommt die vom Nextcloud-Server oder vom Proxy? Da stehen ein paar interessante Dinge im HTML-Code, die Dir die Frage zu beantworten erlauben sollten.
Weitere Tests sollten mittels direktem Aufruf der Perl-Funktionen in HTTPUtils.pm zum Abruf des Nextcloud-Kalenders oder anderer Seiten hinter dem Proxy erfolgen, um sich an das Problem heranzutasten.
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

betateilchen

Zitat von: WhyTea am 17 Februar 2022, 13:27:27
Ich betreibe meinen FHEM hinter einem Proxy und habe das Attribut dem entsprechend gesetzt.


attr global proxy 192.168.6.1:800
attr global proxyExclude ^192\.168\.6\.*|.*\.lan\.whity$



800 ist ein ungewöhnlicher port für eine Proxy-Konfiguration.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

WhyTea

#39
Zitat von: Dr. Boris Neubert am 17 Februar 2022, 13:35:11
Sehr gut, wir kommen weiter!

Das Fehlerbild deutet darauf hin, dass FHEM Schwierigkeiten haben könnte, via HTTPUtils über einen Proxy auf den Nextcloud-Server zuzugreifen.

Gehen Aufrufe des Kalenders via wget auch über den Proxy?

Ja wget geht auch durch den Proxy.
Siehe hier: https://forum.fhem.de/index.php/topic,126240.msg1208605.html#msg1208605

Zitat von: Dr. Boris Neubert am 17 Februar 2022, 13:35:11
Die Seite, die statt des VCALENDARs heruntergeladen wird, kommt die vom Nextcloud-Server oder vom Proxy? Da stehen ein paar interessante Dinge im HTML-Code, die Dir die Frage zu beantworten erlauben sollten.

Wenn Du das hier meinst:

root@fhem:~# su fhem
fhem@fhem:/root$ cd /home/fhem/
fhem@fhem:/home/fhem$ telnet 127.0.0.1 7072
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Password:

fhem> get Nageltermine vcalendar
<!DOCTYPE html>
<html class="ng-csp" data-placeholder-focus="false" lang="de" data-locale="de" >
<head
data-requesttoken="">
<meta charset="utf-8">
<title>
NW HomeConsulting </title>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
<meta name="apple-itunes-app" content="app-id=1125420102">
<meta name="theme-color" content="#B90081">
<link rel="icon" href="/apps/theming/favicon?v=10">
<link rel="apple-touch-icon" href="/apps/theming/icon?v=10">
<link rel="mask-icon" sizes="any" href="/core/img/favicon-mask.svg" color="#B90081">
<link rel="manifest" href="/apps/theming/manifest?v=10">
<link rel="stylesheet" href="/core/css/guest.css?v=c807d3aa-10">
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/core/js/dist/main.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/core/js/dist/files_fileinfo.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/core/js/dist/files_client.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/js/core/merged-template-prepend.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/core/l10n/de.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/apps/comments/l10n/de.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/apps/comments/js/comments-app.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/apps/files_sharing/l10n/de.js?v=c807d3aa-10"></script>
<script nonce="bXRDWE1oMU1kTDZLT0EvUVUyTUFpTlBDUUlOSU1wQzZqdUlLUWtGd0d2VT06dzVyMEFDb2JJNC9QVnlDSUNUbFdwNys2SXUwK1ZQbVIyYzE5S1RFVUxJWT0=" defer src="/apps/files_sharing/js/dist/main.js?v=c807d3aa-10"></script>
</head>
<body id="body-login">
<noscript>
<div id="nojavascript">
<div>
Diese Anwendung benötigt JavaScript zum ordnungsgemäßen Betrieb. Bitte <a href="https://www.enable-javascript.com/" target="_blank" rel="noreferrer noopener">aktiviere JavaScript</a> und lade die Seite neu. </div>
</div>
</noscript>
<input type="hidden" id="initial-state-comments-max-message-length" value="MTAwMA==">
<input type="hidden" id="initial-state-comments-maxAutoCompleteResults" value="MTA=">
<input type="hidden" id="initial-state-accessibility-data" value="eyJjaGVja01lZGlhIjp0cnVlLCJ0aGVtZSI6ZmFsc2UsImhpZ2hjb250cmFzdCI6ZmFsc2V9">
<div class="wrapper">
<div class="v-align">
<header role="banner">
<div id="header">
<div class="logo">
<h1 class="hidden-visually">
NW HomeConsulting </h1>
<img src="/apps/theming/image/logo?useSvg=1&amp;v=10"/>
</div>
</div>
</header>
<main>
<div class="error">
<h2>Fehler</h2>
<ul>
<li>
<p>App not installed: </p>
</li>
</ul>
</div>
</main>
</div>
</div>
<footer role="contentinfo">
<p class="info">
<a href="http://www.nw-nails.de" target="_blank" rel="noreferrer noopener" class="entity-name">NW HomeConsulting</a> – ein sicherer Ort für all Deine Daten </p>
</footer>
</body>
</html>

fhem>


Das kommt definitiv von der Nextcloud.

Zitat von: Dr. Boris Neubert am 17 Februar 2022, 13:35:11
Weitere Tests sollten mittels direktem Aufruf der Perl-Funktionen in HTTPUtils.pm zum Abruf des Nextcloud-Kalenders oder anderer Seiten hinter dem Proxy erfolgen, um sich an das Problem heranzutasten.
Sag einfach was ich tun soll ich bin für fast alle Schandtaten bereit. ;-)

betateilchen

#40
Zitat von: WhyTea am 17 Februar 2022, 14:59:46
Sag einfach was ich tun soll ich bin für fast alle Schandtaten bereit.

Mach mal in der FHEM Befehlszeile folgendes:


{GetFileFromURL('deine URL zum Kalender')}


Das sollte Logmeldungen im Loglevel 4 produzieren, die vielleicht weiterhelfen.

Edit: sorry, da fehlte eine Klammer.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

WhyTea

Gesagt, getan aber sehen tu ich nix im Log.

Wenn ich die lokale IP nehme zeigt er mir die vcalender Daten.
Wenn ich den extern erreichbaren DNS-Namen benutze und er somit per Proxy raus geht zeigt er mir die Html-Datei an wie bei der Verbindung per Telnet.

Ein attr global verbose 4 brachte zwar jede Menge Logeinträge aber nichts mit Bezug auf das abgesetzte Kommando.

Oder habe ich da was falsch verstanden?  :-\

betateilchen

Verstehe ich das richtig?

Du versuchst, aus Deinem lokalen Netzwerk über Deinen eigenen Proxy einen Server über seine externe Adresse quasi "von außen" anzusprechen, der sich in Wirklichkeit in Deinem lokalen Netzwerk befindet?

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

WhyTea

Wenn Du das so schreibst klingt das in der tat etwas seltsam.  ;D

Der normale zustand ist, dass die Nextcloud in einer DMZ steht und nicht im selben Subnetz.
Und dem FHEM möchte keinen direkten Internetzugang erlauben daher möchte ich einen Proxy verwenden.

Die Krücke, dass die Nextcloud im selben Subnetz steht habe ich nur gebaut weil Du und CoolTux sauber zugreifen konntet und ich nicht.

Dr. Boris Neubert

Hallo,

welchen Proxy verwendest Du denn bitte?

Kannst Du sehen, welchen Request FHEM an den Proxy sendet und welcher Request vom Proxy an den Nextcloud-Server geht?

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

WhyTea

Zitat von: Dr. Boris Neubert am 21 Februar 2022, 09:47:12
welchen Proxy verwendest Du denn bitte?

Kannst Du sehen, welchen Request FHEM an den Proxy sendet und welcher Request vom Proxy an den Nextcloud-Server geht?

Es ist ein Squid.

Da der lokal bei mir läuft habe ich natürlich Vollzugriff.
Sag mir was Du brauchst ich versuche Dir die Informationen zu beschaffen.

Dr. Boris Neubert

Interessanterweise liefert der direkte Zugriff von FHEM auf die Nextcloud ja die richtige Seite und der Zugriff über Squid irgend etwas anderes. Es wäre also interessant zu sehen,
- wie der Request von FHEM beim Webserver aufschlägt, unter dem die Nextcloud läuft,
- und wie er beim Proxy aufschlägt,
- und wie der Request vom Proxy beim Webserver aufschlägt.

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!