Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Connection Status vs Connection Timeout #182

Open
1 task done
krobipd opened this issue Oct 19, 2021 · 5 comments
Open
1 task done

Connection Status vs Connection Timeout #182

krobipd opened this issue Oct 19, 2021 · 5 comments
Labels
Enhancement New feature or request

Comments

@krobipd
Copy link

krobipd commented Oct 19, 2021

Is there an existing issue for this?

  • I have searched the existing issues and no issue is describing my issue

The problem

Hallo

aufgrund der vielen Serverprobleme in letzter zeit mit meinem Ozmo 950 ist mir folgendes aufgefallen.

Im Adapter wird das Gerät unter "connection" als "true" angezeigt.
aber gleichzeitig steht unter "Error" "Connection Timeout".

in der App wird dann der Roboter auch als Offline angezeigt.

Vl wäre es möglich hier den Connection Status mit dem Error code zu verknüpfen.
Da der Sauger ja nicht online sein kann wenn er gleichzeitig keine Verbindung hat.

ich hoffe das war jetzt verständlich.
Bildschirmfoto 2021-10-19 um 21 38 04
Bildschirmfoto 2021-10-19 um 21 37 57

With which model does the problem occur?

Deebot OZMO 950

From which source you have installed the adapter?

Beta (latest)

Version of the ioBroker adapter ("info.version")

1.2.4

Version of the ecovacs-deebot.js library ("info.library.version")

0.6.8

Version of the JS controller

3.3.18

Version of Node.js

14.18.1

Operating system

Linux

Anything in the logs that might be useful?

No response

Additional information

No response

Which "other" models are you using?

No response

Ecovacs device class ("info.deviceClass")

yna5xi

Communication protocol ("info.library.communicationProtocol")

MQTT

Is the canvas module installed? ("info.library.canvasModuleIsInstalled")

yes (true)

@krobipd krobipd added Potential bug Potential bug Verification Verification labels Oct 19, 2021
@mrbungle64
Copy link
Owner

Hallo @krobipd

ich muss Dich korrigieren - es handelt sich um einen "Request timeout" (500) und nicht um einen "Connection Timeout" (s. auch Screenshot).

Ein "Request timeout" bedeutet, dass es keine Antwort für eine oder mehrere Anfragen gegeben hat.

Das kann natürlich auch gleichzeitig bedeuten, dass der Bot gar nicht mehr antwortet und nicht mehr verfügbar ist - dafür gibt es aber eigentlich den "Recipient unavailable" (404). In diesem Fall wird "info.connection" auch entsprechend auf false gesetzt.

Ich würde mir überlegen, ob ich in den Einstellungen eine Option anbiete, dass man selbst entscheiden kann, ob der "Request timeout" (500) auch zu einem false bei "info.connection" führt, so dass die Instanz dann rot angezeigt wird.

@mrbungle64 mrbungle64 removed the Potential bug Potential bug label Oct 19, 2021
@krobipd
Copy link
Author

krobipd commented Oct 19, 2021

danke für dein Feedback ;-)

na gut du weißt ja auch welche Fehlermeldungen du eingebaut hast ;-)
ich sehe leider immer nur error 500 und die app zeigt dann auch an das der Sauger offline ist - ist er ja nicht aber naja ecovacs server halt :-/

aber gut zu wissen das es einen 404 error gäbe.

ja dein Vorschlag wäre unter umständen sicherlich eine gute Variante.

@mrbungle64
Copy link
Owner

mrbungle64 commented Oct 19, 2021

na gut du weißt ja auch welche Fehlermeldungen du eingebaut hast ;-)

Die Fehlermeldungen >= 0 kommen von Ecovacs 😉

404 = Der Bot ist offline
500 = Der Bot hat auf mind. eine Anfrage nicht geantwortet (Status ist aber nicht offline)

Hier sind sämtliche Codes zu sehen

@edenhaus
Copy link

Eine andere Möglichkeit ist, dass man regelmäßig alle devices abruft und dort schaut welchen Status der Bot hat. Dies mache ich in der HA integration.
Siehe https://github.com/DeebotUniverse/Deebot-4-Home-Assistant/blob/88bdb442bb52127d185fd200f8d08e201e463274/custom_components/deebot/hub.py#L113-L119

@mrbungle64
Copy link
Owner

@edenhaus

Eine andere Möglichkeit ist, dass man regelmäßig alle devices abruft und dort schaut welchen Status der Bot hat. Dies mache ich in der HA integration.

Danke für den Tipp!

Ich habe bisher die Devices in der Library nur über users/user.do und GetDeviceList bezogen - da war der Status nicht drin.
Habe das nun erweitert, so dass die Devices auch über appsvr/app.do und GetGlobalDeviceList bezogen werden.
Dort ist der Status dann drin.

Das wird dann früher oder später auch im ioBroker Adapter verfügbar sein, so dass der Gerätestatus über die Ecovacs API bezogen wird und man diesen für den Connection Status der Adapter Instanz benutzen kann.

@mrbungle64 mrbungle64 added Enhancement New feature or request and removed Verification Verification labels Nov 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants