39_gassistant.pm (Google Assistant, Google Home)

Begonnen von dominik, 29 Januar 2019, 21:59:53

Vorheriges Thema - Nächstes Thema

juemuc

Hi dominik,

anbei das json2list eines IP-Kontaktes:
{
  "Arg":"HMIP_SWDO_0000DA498D4303",
  "Results": [
  {
    "Name":"HMIP_SWDO_0000DA498D4303",
    "PossibleSets":"clear config defaults:noArg control datapoint rpcparameter devstate toggle:noArg attrTemplate:?,speech_recognition_general_naming_master_template,speechcontrol_general_naming_master_template",
    "PossibleAttrs":"alias comment:textField-long eventMap:textField-long group room suppressReading userReadings:textField-long verbose:0,1,2,3,4,5 IODev ccuaggregate:textField-long ccucalculate:textField-long ccuflags:multiple-strict,ackState,logCommand,nochn0,trace ccureadingfilter:textField-long ccureadingformat:name,namelc,address,addresslc,datapoint,datapointlc ccureadingname:textField-long ccureadings:0,1 ccuget:State,Value ccuscaleval ccuSetOnChange ccuverify:0,1,2 disable:0,1 hmstatevals:textField-long statevals substexcl substitute:textField-long statechannel statedatapoint controldatapoint stripnumber peer:textField-long event-aggregator event-min-interval event-on-change-reading event-on-update-reading oldreadings stateFormat:textField-long timestamp-on-change-reading alexaName alexaProactiveEvents:1,0 alexaRoom assistantName:textField cmdIcon devStateIcon devStateIcon:textField-long devStateStyle gassistantName:textField genericDeviceType:security,ignore,switch,outlet,light,blind,thermometer,thermostat,contact,garage,window,lock,scene,ac_unit,aircondition,airfreshener,airpurifier,awning,bathtub,bed,blender,blinds,boiler,camera,carbon_monoxide_detector,charger,closet,coffee_maker,coffeemaker,cooktop,curtain,dehumidifier,dehydrator,dishwasher,door,drawer,dryer,fan,faucet,fireplace,fryer,gate,grill,heater,hood,humidifier,kettle,remotecontrol,mop,mower,microwave,multicooker,network,oven,pergola,petfeeder,pressurecooker,radiator,refrigerator,router,securitysystem,settop,sensor,shutter,shower,smoke_detector,sousvide,sprinkler,standmixer,tv,vacuum,valve,washer,waterheater,waterpurifier,watersoftener,yogurtmaker homebridgeMapping:textField-long icon realRoom:textField sortby webCmd webCmdLabel:textField-long widgetOverride userattr",
    "Internals": {
      "DEF": "0000DA498D4303",
      "FUUID": "5d7d3509-f33f-4885-68d1-d2e1ebb4a7a00336",
      "IODev": "HMCCU3",
      "NAME": "HMIP_SWDO_0000DA498D4303",
      "NR": "234",
      "STATE": "Status: closed / LastOpen: 28.08.2020 - 22:23:58 / LastClose: 29.08.2020 - 10:21:27",
      "TYPE": "HMCCUDEV",
      "ccuaddr": "0000DA498D4303",
      "ccudevstate": "active",
      "ccuif": "HmIP-RF",
      "ccuname": "HMIP-SWDO 0000DA498D4303",
      "ccutype": "HMIP-SWDO",
      "channels": "3",
      "firmware": "1.16.8",
      "statevals": "devstate"
    },
    "Readings": {
      "0.CONFIG_PENDING": { "Value":"0", "Time":"2020-08-29 16:58:16" },
      "0.DUTY_CYCLE": { "Value":"0", "Time":"2020-08-29 16:58:16" },
      "0.ERROR_CODE": { "Value":"0", "Time":"2020-08-29 16:58:16" },
      "0.INSTALL_TEST": { "Value":"true", "Time":"2020-08-29 16:39:16" },
      "0.OPERATING_VOLTAGE": { "Value":"1.3", "Time":"2020-08-29 16:58:16" },
      "0.OPERATING_VOLTAGE_STATUS": { "Value":"0", "Time":"2020-08-29 16:58:16" },
      "0.RSSI_DEVICE": { "Value":"-52", "Time":"2020-08-29 16:58:16" },
      "0.RSSI_PEER": { "Value":"0", "Time":"2020-08-29 16:39:16" },
      "0.SABOTAGE": { "Value":"0", "Time":"2020-08-29 16:58:16" },
      "0.UPDATE_PENDING": { "Value":"false", "Time":"2020-08-29 16:39:16" },
      "1.PRESS_SHORT": { "Value":"1", "Time":"2020-08-29 10:21:27" },
      "1.STATE": { "Value":"closed", "Time":"2020-08-29 16:58:16" },
      "LastClose": { "Value":"29.08.2020 - 10:21:27", "Time":"2020-08-29 16:39:15" },
      "LastOpen": { "Value":"28.08.2020 - 22:23:58", "Time":"2020-08-29 16:39:15" },
      "activity": { "Value":"alive", "Time":"2020-08-29 16:58:16" },
      "battery": { "Value":"ok", "Time":"2020-08-29 16:58:16" },
      "control": { "Value":"closed", "Time":"2020-08-29 16:58:16" },
      "hmstate": { "Value":"closed", "Time":"2020-08-29 16:58:16" },
      "state": { "Value":"closed", "Time":"2020-08-29 16:58:16" }
    },
    "Attributes": {
      "IODev": "HMCCU3",
      "alexaName": "Schlafzimmerfenster",
      "alias": "Schlafzimmerfenster",
      "assistantName": "Schlafzimmerfenster",
      "devStateStyle": "style=\"text-align:right\"",
      "event-min-interval": "battery:3600",
      "event-on-change-reading": ".*",
      "group": "HM Fenster-/Türkontakte",
      "hmstatevals": "ERROR!7:sabotage;SABOTAGE!1:sabotage",
      "homebridgeMapping": "ContactSensorState=state,values=closed:CONTACT_DETECTED;open:CONTACT_NOT_DETECTED",
      "icon": "hm-sec-win@black",
      "room": "Alexa,GoogleAssistant",
      "stateFormat": "{\"Status: \".ReadingsVal($name,\"state\" ,\"\").\" / LastOpen: \".ReadingsVal(\"HMCCU3\",\"Fenster_Schlafzimmer_auf\",\"\").\" / LastClose: \".ReadingsVal(\"HMCCU3\",\"Fenster_Schlafzimmer_zu\",\"\")}",
      "statedatapoint": "1.STATE",
      "substitute": "STATE!(0|false):closed,(1|true):open",
      "userReadings": "LastOpen:hmstate.* {ReadingsVal(\"HMCCU3\",\"Fenster_Schlafzimmer_auf\",\"\")},LastClose:hmstate.* {ReadingsVal(\"HMCCU3\",\"Fenster_Schlafzimmer_zu\",\"\")}"
    }
  }  ],
  "totalResultsReturned":1
}


Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

dominik

Erledigt, sollte in 5 Minuten gehen. HMIP-SWDO wird nun auch automatisch erkannt (reload notwendig).
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

juemuc

#2117
Hi Dominik,

vielen Dank. Allerdings habe ich zufälligerweise gemerkt, dass bei schwacher Batterie er immer behautet, dass das Fenster offen sei. Battery gewechselt und alles war ok. In FHEM wird aber auch mit schwacher Batterie der richtige Status angezeigt.

Zusatzinfo. hmstate hat dann weder offen noch closed sonden "battery warn". Der richtige Status steht in "state".

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

juemuc

Zitat von: dominik am 28 August 2020, 22:51:03
Hi,
gibt es einen Grund wieso du nicht das Device selbst in Google Assistant hinzufügst? Weil beim dummy Device kann ich leider nicht viel automatisch erkennen, da braucht man ein homebridgeMapping. Probier mal das hier
{
  "OpenClose": {
    "reading": "pct",
    "values": ["/^0/:CLOSED", "/.*/:OPEN"],
    "cmdOpen": "pct 100",
    "cmdClose": "pct 0"
  },
  "TargetPosition": {
    "reading": "pct",
    "cmd": "pct",
    "invert": true
  },
  "CurrentPosition": {
    "reading": "pct",
    "invert": true
  }
}

Falls es dann noch falsch herum ist, nimm einfach das "invert" raus.

Hi Dominik,

ja es gibt einen Grund  ;D Ich habe keinen Rolladen-Aktor. Ich steuer meine Velux-Rollos über eine HM-Steuereinheit. Hierbei setze ich die Prozentsätze in eine Zeit um, in der bestimmte Schalter gedrückt werden.
somit muss auch 100% = zu und 0% = offen sein. Zus#tzlich kann ich noch 25%, 50% und 75%. Mit Alexa geht das :-)

Wenn ich Deinen Vorschlag etwas anpasse (open/closed) geht zwar "öffnen" und schließen aber nicht das setzen auf eine bestimmte Prozentzahl. Hierbei spielt es keine Rolle ob mit oder ohne "invers".

Somit nur eine Verschlechterung zu vorher, da die Schrittweite von 25% (für ALEXA) verloren gegangen ist.



{
  "OpenClose": {
    "reading": "pct",
    "values": ["/^0/:CLOSED", "/.*/:OPEN"],
    "cmdOpen": "pct 0",
    "cmdClose": "pct 100"
  },
  "TargetPosition": {
    "reading": "pct",
    "cmd": "pct"
  },
  "CurrentPosition": {
    "reading": "pct"
  }
}


Hast Du noch eine Idee?

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

dominik

Was bekommst du bei den Prozentwerten für eine Rückmeldung? Ich habe mal im Log gesucht, da konnte ich zumindest ein EXECUTE: "set Rollo_Buero pct 75" finden. Es dürfte also durchaus funktionieren.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

juemuc

Hallo Dominik,

wenn ich sage "setze Rollo im Büro auf 25%" werden 75% gesetzt  :-[ Bei 75% entsprechend 25%. Bei Alexa wird das gesetzt, was ich sage  8)
Bei Alexa wird sogar auf 0,25,50,75 bzw 100% gesetzt, wenn ich einen abweichenden Wert sage  ;D


Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

dominik

Zitat von: juemuc am 29 August 2020, 20:04:34
Hallo Dominik,

wenn ich sage "setze Rollo im Büro auf 25%" werden 75% gesetzt  :-[ Bei 75% entsprechend 25%. Bei Alexa wird das gesetzt, was ich sage  8)
Bei Alexa wird sogar auf 0,25,50,75 bzw 100% gesetzt, wenn ich einen abweichenden Wert sage  ;D


Viele Grüße
Jürgen

ok, verstanden. Na das bekommen wir auch noch hin :)

Kannst du bitte nochmals "invert" weglassen, reload machen und dann nochmals testen?
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

juemuc

Hallo Det20,

wie soll den FHEM Deinen Wecker als Gerät finden? Der GoogleAssistant verbindet doch nur in FHEM vorhandene Geräte mit Google und FHEM  ???

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

dominik

Zitat von: Det20 am 29 August 2020, 20:15:38
Ich habe da mal ne Frage. Habe mir heute eine "Lenovo Smart Clock" geholt, ist ein Wecker mit Google Assistant. In der Home App wird das Gerät gelistet und ist auch über andere Geräte ("Ok google") sichtbar. In FHEM taucht das Gerät aber nicht auf, auch ein Neustart von FHEM und sogar ein kompletter System-Neustart (Raspberry) bringt das Gerät nicht in FHEM.

Wird das nicht unterstützt, weil es kein Original Google ist? Oder kann ich bei der Einbindung irgendwie helfen?

Da musst du mir jetzt etwas weiterhelfen was du genau machen willst. Die Cast Devices werden nur mit dem GOOGLECAST Modul in FHEM angezeigt, nicht mit FHEM Connect (gassistant). Die FHEM Devices kannst du mit "Lenovo Smart Home" auch steuern koennen solange in der Home App "FHEM Connect" eingerichtet ist.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

juemuc

Zitat von: dominik am 29 August 2020, 20:17:45
ok, verstanden. Na das bekommen wir auch noch hin :)

Kannst du bitte nochmals "invert" weglassen, reload machen und dann nochmals testen?

Hi Dominik,

ich habe es gerade mit diesem homebridgemapping durchgeführt:
clear CurrentPosition=pct,minValue=0,maxValue=100,minStep=25
TargetPosition=pct,minValue=0,maxValue=100,minStep=25,cmd=pct
OpenClose=state,cmdOpen=pct 0,cmdClose=pct 100


Oder benötigts Du unbedingt "Deine" Schreibweise?

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

dominik

Bitte mal mit der Schreibweise im JSON Format ("meiner") probieren.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

juemuc

Hi Dominik,

Aufruf ist nun hiermit erfolgt:
{
  "OpenClose": {
    "reading": "pct",
    "values": ["/^0/:CLOSED", "/.*/:OPEN"],
    "cmdOpen": "pct 0",
    "cmdClose": "pct 100"
  },
  "TargetPosition": {
    "reading": "pct",
    "cmd": "pct"
  },
  "CurrentPosition": {
    "reading": "pct"
  }
}


Ergbnis wie erwartet. Ich sage 25% - Google macht 75%  ???

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

dominik

Hi,

ich weiss schon wo der Fehler liegt. Invert wird trotzdem auf true gesetzt, probier bitte folgendes
{
  "OpenClose": {
    "reading": "pct",
    "values": ["/^0/:CLOSED", "/.*/:OPEN"],
    "cmdOpen": "pct 0",
    "cmdClose": "pct 100"
  },
  "TargetPosition": {
    "reading": "pct",
    "cmd": "pct",
    "invert": false
  },
  "CurrentPosition": {
    "reading": "pct",
    "invert": false
  }
}
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

juemuc

Super,

damit hat es funktioniert. Damit wäre das 1. Problem gelöst  ;D.
Jetzt fehlt nur noch die Möglichkeit einer "Step-Eingabe" wie bei ALEXA (minStep=25)  ::)

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

Det20

Ach Mist, falscher Ansatz, sorry, ist ja ein Googlecast Device. Habe Anfrage hier gelöscht.

Zitat von: juemuc am 29 August 2020, 20:18:24
Hallo Det20,

wie soll den FHEM Deinen Wecker als Gerät finden? Der GoogleAssistant verbindet doch nur in FHEM vorhandene Geräte mit Google und FHEM  ???

Viele Grüße
Jürgen