KraigM / homebridge-wink

Wink hub plugin for HomeBridge
54 stars 37 forks source link

Siri not working with lock after ios 10.2 #74

Open rrrrrk opened 7 years ago

rrrrrk commented 7 years ago

Did anyone else's locks stop responding to siri requests after updating to ios 10.2?

The lock still works with the home app, but siri can no longer control it.

dasoutherland commented 7 years ago

I don't have any locks but I'm getting that type of behavior with the nest thermostat. I can still control it but it is not giving me verbal statuses.

rjmcfadd commented 7 years ago

I can't get Siri to work with my kwikset lock but I just added it today. Any fix for this yet?

schmittx commented 7 years ago

I'm having the same issue with my Schlage Touch Connect locks, Home app works fine but Siri times out on getting the status when operating via voice control.

earlthesquirrel commented 7 years ago

I'm seeing the same problem. I do have some further info.... when I run homebridge with this plugin, it works fine (Siri turn on light, etc.) UNTIL I try to lock or unlock a lock. It then stops working until homebridge is restarted.

I'm wondering if this is related to them preventing things like Alexia from being able to open locks. They've disabled that capability because of the security concerns... (i.e. Someone coming to your front door and yelling "Alexia open the front door" or the like...)

So, I don't believe this is related to the IOS version. I'm going to try to test via curl, etc. to see what is happening... if the V1 API is returning some sort of error...

earlthesquirrel commented 7 years ago

I think this is related to this : https://github.com/nfarina/homebridge/issues/1000

KraigM -- Are you going to look and see if this is an issue?

n8man commented 7 years ago

I got it working by taking a look at the changes made to the smart things plugin.

Tracking down homebridge-wink/accessories/locks.js

The block beginning at line 68 should look like this:

                .on('set', function (value, callback) {
                        switch (value) {
                                case Characteristic.LockTargetState.SECURED:
                                        that.updateWinkProperty(callback, "locked", true);
                                        break;
                                case Characteristic.LockTargetState.UNSECURED:
                                        that.updateWinkProperty(callback, "locked", false);
                                        break;
                        }
                });

Add this code:

                        if (value === false) {
                                value = Characteristic.LockTargetState.UNSECURED;
                        } else if (value === true) {
                                value = Characteristic.LockTargetState.SECURED;
                        }

so the block now looks like this:

                .on('set', function (value, callback) {
                        if (value === false) {
                                value = Characteristic.LockTargetState.UNSECURED;
                        } else if (value === true) {
                                value = Characteristic.LockTargetState.SECURED;
                        }

                        switch (value) {
                                case Characteristic.LockTargetState.SECURED:
                                        that.updateWinkProperty(callback, "locked", true);
                                        break;
                                case Characteristic.LockTargetState.UNSECURED:
                                        that.updateWinkProperty(callback, "locked", false);
                                        break;
                        }
                });

Saving and restarting homebridge fixed the Siri issue with locks.

rrrrrk commented 7 years ago

That seems to have fixed it for me

earlthesquirrel commented 7 years ago

That fixes it for me as well. Can we get an updated release for that?

n8man commented 7 years ago

I just submitted a pull request #79 so hopefully this will get merged in

deesabird commented 7 years ago

Can someone please explain how I would fix the same issue for homebridge-vera ?

ghost commented 7 years ago

so i'm having the same issue with my locks and its still not working. Were there additional steps you guys took?

Just to be more specific when i call the scglage lock to unlock it works fine. When I say, "lock the front door" it returns back a message saying "your front door is unlocked". So its giving me a status rather actually locking the door....thoughts?

ghost commented 7 years ago

The code fix listed above was all that I changed personally.

jclarke0000 commented 7 years ago

@n8man confirming this fixed the problem for me too. Thank you!