sendCommand auf einen Channel

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
PSch
Beiträge: 20
Registriert: 3. Okt 2018 09:53
Answers: 0

sendCommand auf einen Channel

Beitrag von PSch »

Moin,

unser neuer Roomba möchte gerne nach Hause telefoniert...das will ich aber nicht. Leider funktioniert dann der automatische Start nicht mehr, weil der scheinbar nur mit der Roomba-Cloud Anbindung geht. Aaaabbbbeeerrr Openhab könnte ihn ja steuern.

Funktioniert mit dem Binding openhab2.roomba auch ohne großen Aufwand. (https://github.com/Sonic-Amiga/openhab2 ... /README.md)

Binding ins richtige Verzeichnis kopiert, thing definiert

Code: Alles auswählen

irobot:roomba:roomba960 [ ipaddress="192.168.100.60", password=":1:1545347494:kjasdlkfasdf" ]
items angelegt

Code: Alles auswählen

String	RoombaCommand	 "Roomba Command [%s]"	<roomba>	{channel="irobot:roomba:roomba960:command"}
String	RoombaMission	"Roomba Mission [%s]"	<roomba>	{channel="irobot:roomba:roomba960:cycle"}
...
Number  RoombaSNR       "Roomba SNR [%d]"       <signal>      {channel="irobot:roomba:roomba960:snr"}
und über einen Eintrag in der Sitemap wie

Code: Alles auswählen

Switch label="Roomba Befehle" item=RoombaCommand
läßt sich der Robi auch ein und ausschalten etc (Clean, Spot, Dock, Pause, Stop).

Aber ich bekomme es nicht geregelt, ihn aus einer Rule zu starten. Vermutet hatte ich, das es mit

Code: Alles auswählen

RoombaCommand.sendCommand("Clean") 
funktioniert. Aber da passiert garnichts.

Ich denke, ich habe das System mit den Channel noch nicht verstanden; oder es funktioniert nicht. Kann mir jemand einen Tip geben, was ich vielleicht falsch mache?

Gruß
Peter

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: sendCommand auf einen Channel

Beitrag von PeterA »

Mach mal Anführungszeichen bei Clean weg.
- OpenHab 2.4
#PWRUP

PSch
Beiträge: 20
Registriert: 3. Okt 2018 09:53
Answers: 0

Re: sendCommand auf einen Channel

Beitrag von PSch »

Hi,

hatte ich schon, Ergebnis:

Code: Alles auswählen

 Rule 'Roomba_Start': The name 'Clean' cannot be resolved to an item or type; line 11, column 29, length 5
Trotzdem Danke

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: sendCommand auf einen Channel

Beitrag von PeterA »

Poste doch mal bitte Deine ganze Rule.
- OpenHab 2.4
#PWRUP

PSch
Beiträge: 20
Registriert: 3. Okt 2018 09:53
Answers: 0

Re: sendCommand auf einen Channel

Beitrag von PSch »

Hi,

die ist eigentlich trivial:

Code: Alles auswählen


rule "Roomba_Start"
when 
  Item VS_Roomba_clean changed from OFF to ON 
then 

  RoombaCommand.sendCommand(Clean)

end 
Gruß
Peter

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: sendCommand auf einen Channel

Beitrag von PeterA »

In der Beschreibung des Bindings sind die Commands alle klein Geschrieben:

Code: Alles auswählen

Command to execute: clean, spot, dock, pause, stop
- OpenHab 2.4
#PWRUP

PSch
Beiträge: 20
Registriert: 3. Okt 2018 09:53
Answers: 0

Re: sendCommand auf einen Channel

Beitrag von PSch »

Hi,

danke....Ich hatte mich durch die Darstellung in der Sitemap irritieren lassen. Da sind die Befehle mit erstem Buchstaben groß geschrieben... Alles groß hatte ich versucht, mit und ohne " aber nie alles klein....hinterher ist man immer schlauer.

Vielen Dank.

Gruß und schönes Wochenende
Peter

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: sendCommand auf einen Channel

Beitrag von PeterA »

Prima! Freut mich das es nun funktioniert.

Eigentlich ist dafür keine Rule notwendig.
Du könntest die Befehle auch direkt über die Sitemap mit einem Switch Widget und Mappings senden.

Siehe zb hier:

viewtopic.php?f=8&t=2987

Das Mapping erzeugt Schaltflächen welche die Commands an das String item senden.
Bild
- OpenHab 2.4
#PWRUP

PSch
Beiträge: 20
Registriert: 3. Okt 2018 09:53
Answers: 0

Re: sendCommand auf einen Channel

Beitrag von PSch »

Ja, dann könnte ich ihn per Sitemap einschalten...aber eigentlich soll er nur jede Nacht um 2:00 Uhr seine Runden drehen, außer, wenn wir Besuch haben. Dann klopft er nämlich immer ans Gästezimmer und die meisten unserer Gäse finden das doof:-)

Wenn die ganze Bude aber einen "Übernachtungsgast anwesend" Status hat, dann soll er nicht fahren. Und ich denke, das ist über eine Rule recht einfach lösbar.

Trotzdem werde ich mir das mit den mappings mal anschauen. (Auch) da fehlt mir noch ein wenig Verständnis. Und die Zeit, mich endlich mal tiefer einzuarbeiten.

Gruß
Peter

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: sendCommand auf einen Channel

Beitrag von PeterA »

Das wird schon [emoji3].

Gruß Peter
- OpenHab 2.4
#PWRUP

Antworten