bluerai / ioBroker.mobile-alerts

Mobile Alerts for ioBroker - an adapter to download data from the Mobile Alerts server
MIT License
7 stars 5 forks source link

Daten werden nicht abgerufen #21

Closed fisch336 closed 1 year ago

fisch336 commented 2 years ago

Hallo,

seit vorgestern werden keine Daten mehr abgerufen und folgende Meldung ist im Log:

host.iobroker | 2022-04-15 09:07:02.817 | error | instance system.adapter.mobile-alerts.0 terminated with code 6 (UNCAUGHT_EXCEPTION) mobile-alerts.0 | 2022-04-15 09:07:02.295 | warn | Terminated (UNCAUGHT_EXCEPTION): Without reason mobile-alerts.0 | 2022-04-15 09:07:02.295 | info | terminating mobile-alerts.0 | 2022-04-15 09:07:02.291 | error | Cannot read property 'toString' of null mobile-alerts.0 | 2022-04-15 09:07:02.290 | error | TypeError: Cannot read property 'toString' of null at Request._callback (/opt/iobroker/node_modules/iobroker.mobile-alerts/main.js:103:19) at Request.self.callback (/opt/iobroker/node_modules/iobroker.mobile-alerts/node_modules/request/request.js:186:22) at Request.emit (events.js:400:28) at Request. (/opt/iobroker/node_modules/iobroker.mobile-alerts/node_modules/request/request.js:1163:10) at Request.emit (events.js:400:28) at IncomingMessage. (/opt/iobroker/node_modules/iobroker.mobile-alerts/node_modules/request/request.js:1085:12) at Object.onceWrapper (events.js:519:28) at IncomingMessage.emit (events.js:412:35) at endReadableNT (internal/streams/readable.js:1334:12) at processTicksAndRejections (internal/process/task_queues.js:82:21)

Auf die Seite https://measurements.mobile-alerts.eu/Home/SensorsOverview?phoneid=XXXXXXX ist auch kein Zugriff möglich.

Wurde dir API geändert ?

Gruß Jens

bluerai commented 2 years ago

Hi Jens, bei mir tritt das Problem nicht auf. Daher keine Änderung des Seitenaufbaus der Overview-Seite.

Ich empfehle zunächst die Version 0.5.1 - falls noch nicht geschehen - nach der Beaschreibung aus Github installieren.

Die Antwortzeiten des Mobile-Alerts-Servers sind zeitweise grottenschlecht. Öffnet sich die Overview-Seite nach sehr langer Wartezeit (mehrere Minuten)? Die aktuelle Version hat einen längeren Timeout. Möglicherweise ist damit das Problem behoben.

Gruß Rai

fisch336 commented 2 years ago

Hi Rai,

die 0.5.1 ist installiert und läuft schon eine Ewigkeit erfolgreich.

Wenn ich die Measurement-Seit mit meiner Phone-ID aufrufe, bekomme ich eine leere Seite (Firefox und Chrome).

Erst wenn ich auf die Seite gehen wo ich die Phone-ID eingeben kann und wirklich per Hand eingebe (Copy-Paste geht nicht), läd die Seite meine Sensoren.

grafik

bluerai commented 2 years ago

Hi Jens, ok, dann muss dafür gesorgt werden, dass die Overview-Seite direkt aufgerufen werden kann. Hast du mal die URLs verglichen - Direktaufruf aus ioBroker bzw. Aufruf nach manueller Eingabe der PhoneId? Sind die URLs gleich? Das sind sie - normalerweise. Bei dir dürfte das nach deiner Schilderung eigentlich nicht der Fall sein. Sind irgendwelche Filter etc. auf dem Router gesetzt? Der Aufruf erfolgt natürlich von dem Gerät aus, auf dem ioBroker installiert ist. Gruß Rai

fisch336 commented 2 years ago

Hi Rai,

der Iobroker läuft im Docker-Container. Habe keine Filter im Router und auch bereits einen anderen DNS-Server probiert.

Was ich seltsam finde das die Webseite meine PhoneID nicht kennt und eine Stunde später geht es (Browser).

Ich denke das ist wiedermal ein Serverprobleme von MobileAlerts, zumal in der Nacht ein Abruf (über den iobroker) geklappt hat.

fisch336 commented 2 years ago

Hi Rai, habe den Adapter mal neu installiert, ohne Erfolg.

Bekomme jetzt die Meldung:

instance system.adapter.mobile-alerts.0 terminated with code 253 (253) Exit: Data not matched

grafik

bluerai commented 2 years ago

Hallo Jens, das ist derselbe Fehler wie bisher. ioBroker erhält zwar Daten (könnte auch ein Leerstring sein), aber diese Daten lassen sich nicht mit einem RegExp matchen. Interessant wäre für mich, welche Rückmeldung genau erfolgt. Im debug-Mode (den du ja schon eingeschaltet hast) müsste nach der Error-Meldung eine Zeile mit "Body: " kommen. Könntest du mir auch diese Zeile senden? Gruß Rai

fisch336 commented 2 years ago

Hallo Rai,

habe folgendes jetzt mal probiert: PhoneID meines Iphones genutzt um auf meinem Gallaxy Tab die Sensoren zu übernehmen, dann die PhoneID des Tabs im Iobroker genutzt und siehe da es geht.

Ist dir bekannt das MobileAlerts eventuell PhoneID´s blockt ?

bluerai commented 2 years ago

Ok Jens, schön, dass es jetzt klappt.

Ich glaube nicht, dass der MobileAlerts-Server bestimmte IDs blockiert. Es gibt aber in der API (die der Adapter nicht benuutzt) zeitlich befristete Sperren, wenn von einer IP-Adresse aus häufige fehlerhafte Anfragen gesendet wurden. Bist du sicher, dass immer die richtige PhoneID verwendet wurde? Stand vielleicht aus Versehen ein Blank am Ende oder Ähnliches? Ich würde es noch mal mit der ersten PhonerId versuchen. Nur um sicher zu gehen, ....

Gruß Rai

fisch336 commented 2 years ago

Hallo Rai, hab es noch mal auf die ID meines Iphones geändert, wieder Error 253. Geändert auf die ID des Tablet geht es.

Alles ID´s von Hand eingegeben, keine C&P.

Gruß Jens

bluerai commented 2 years ago

Hi Jens, ich habe dafür keine Erklärung. Voraussetzung für den Adapter ist, dass die Seite https://measurements.mobile-alerts.eu/Home/SensorsOverview?phoneId='phoneId' aufgerufen werden kann. Wenn das nicht geht ist entweder die PhoneId nicht gültig oder es gibt irgendetwas auf Clientseite, was den Aufruf verhindert. Was anderes sehe ich nicht. Gruß Rai