Git Product home page Git Product logo

smartthings_myq's Introduction

smartthings_myq's People

Contributors

brbeaird avatar chuckpearce avatar copy-ninja avatar wingrunr21 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

smartthings_myq's Issues

Garage reports status 9, is open.

Hey copy-ninja,

So i got my smartthings setup today and i'm using this awesome app and device type from you. I noticed that for some reason the device being open didn't seem to register properly (it defaulted to "closed")

also the opening...and closing doesnt seem to actually be real (it's some kind of simulated deal)

anyways, so i enabled some logging in the webapp and low and behold im getting status 9:

sebirdman@4b961f7

i've fixed it here. I'm super new to groovy so i'm not sure if you want to do this cleaner (otherwise i'll just submit a PR). With this fix my device now works properly and reports both open and closed.

it also occurs to me that if the status isn't one of the ones we account for, it should return some kind of "unknown" state just in case. This should prompt the user to check the myq app to make sure their garage is closed. It would be pretty scary to default to closed and the door end up being open.

MyQ (Connect)

I've followed the instructions and am stuck at the adding devices section. After inputting my garage door, I get an error: "Failed to save page: prefListDevices". I saw a post on this error, but the only advice is to recopy and paste code. I erased entire smartapp and started all over, recopying and pasting code but I come to the same error again. Please help.

Cannot get property 'expiration'

I'm getting this error: java.lang.NullPointerException: Cannot get property 'expiration' on null object @ line 161

What am I doing wrong? Everything else seems to be doing well!

Error

I get all the way to the last step in the process of setting up the smartapp in the SmartThings app OK. When I click "Done" I receive a message that "An unexpected error occurred" and the app won't complete the setup.

Using SmartThings on an Android device.

Any thoughts, suggestions?

Error in creating smartapp

Received this error:

No signature of method: script14613467282441362373582.metadata() is applicable for argument types: (script14613467282441362373582$_run_closure1) values: [script14613467282441362373582$_run_closure1@471cacd1] Possible solutions: getMetadata(), getState(), setState(java.lang.Object), metaClass(groovy.lang.Closure)

Great App. Could this be added?

Great App. Works like a charm.

Any chance you could add some functionality to automatically close the door if left open for X min?

I came across this code from Jim Mulholland buts its over my head.

/**

  • Auto Garage Close
  • Author: Jim Mulholland (@mully)
  • Collaborators: @mully
  • Date: 2015-04-29
  • URL:
  • Copyright (C) 2015 Jim Mulholland.
  • Permission is hereby granted, free of charge, to any person obtaining a copy of this
  • software and associated documentation files (the "Software"), to deal in the Software
  • without restriction, including without limitation the rights to use, copy, modify,
  • merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
  • permit persons to whom the Software is furnished to do so, subject to the following
  • conditions: The above copyright notice and this permission notice shall be included
  • in all copies or substantial portions of the Software.
    *
  • THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
  • INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
  • PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
  • HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
  • CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
  • OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
    */

definition(
name: "Auto Garage Close",
namespace: "",
author: "",
description: "Close an open garage door after X minutes.",
category: "Safety & Security",
iconUrl: "https://s3.amazonaws.com/smartapp-icons/Convenience/Cat-Convenience.png",
iconX2Url: "https://s3.amazonaws.com/smartapp-icons/Convenience/[email protected]",
iconX3Url: "https://s3.amazonaws.com/smartapp-icons/Convenience/[email protected]")

preferences
{
section("Garage door") {
input "door", "capability.doorControl", title: "Which garage door controller?"
input "openThreshold", "number", title: "Close when open longer than ",description: "Number of minutes", required: true
}
}

def installed()
{
log.trace "installed()"
subscribe()
}

def updated()
{
log.trace "updated()"
unsubscribe()
subscribe()
log.debug "Auto Garage Close updated."
}

def subscribe() {
log.debug "Settings: ${settings}"
subscribe(door, "door", garageDoorState)
}

def garageDoorState(evt)
{
log.info "garageDoorState, $evt.name: $evt.value"
if (evt.value == "open") {
schedule("0 * * * * ?", "doorOpenCheck")
log.debug "Schedule Set"
}
else {
unschedule("doorOpenCheck")
log.debug "Unscheduled"
}
}

def doorOpenCheck()
{
final thresholdMinutes = openThreshold
log.debug "doorOpenCheck -- ${currentState?.value}; thresholdMinutes: ${thresholdMinutes}"
if (thresholdMinutes) {
def currentState = door.doorState
if (currentState?.value == "open") {
log.debug "open for ${(now() - currentState.date.time)/60000} minutes"
if (now() - currentState.date.time > thresholdMinutes * 60 *1000) {
def msg = "${door.displayName} was been open for ${thresholdMinutes} minutes"
log.info msg
door.close()
}
}
}
}

Does not work with Acceleration sensor(s)

In Service Manager, the setting variable is named "settings.accelerationSensorTrigger", but code @ line 138 checks for "settings.threeAxisSensorTrigger", so the acceleration subscription is never made.

Works MUCH better with this fixed!

Incorrect Door Status

I have two garage door openers connected to my MyQ. I call them Single Bay door and Dual Bay door. When both doors are open, SmartThings app shows that both doors have a status of "closed."

2 Garage Doors Not Registering.

I have 2 garage doors w 2 ZWave sensors via Smartthings. I've gone thru adding in the MyQLite to my SmartApps and when I go to register my 2 doors, only 1 actually shows up in the My Home. If I go in and do just 1, it is fine. If i remove that one and then add the other, it shows up. However, it seems to not be able to get both to register under My Home at the same time. Any thoughts on how to fix this?? When there is 1, it is totally functional via ST by the way.

Thanks in advance.

Proxy?

Can't you still get it working if you proxy requests instead of using myq API server from this smart app? i.e. Setup a home server and proxy all requests through it so it uses your home ip instead of SmartThings IP address? Same idea as you would setup homebrigde on a server at home.

No signature of method error

I create a "New SmartApp" and select "From Code" when I paste the code into the window and hit "Create" I receive the following error:

No signature of method: script14455551136311022644387.metadata() is applicable for argument types: (script14455551136311022644387$_run_closure1) values: [script14455551136311022644387$_run_closure1@5cb33d55] Possible solutions: getMetadata(), getState(), setState(java.lang.Object), metaClass(groovy.lang.Closure)

Having Failed to save page: prefListDevices issue

I saw this as a closed issue, but I am having the same problem. I get through all the steps and start installing on my smartthings app. I have a co-worker who has this working on his iPhone to compare it to as I go.

When I get to the Connect to MyQ page on the app, I have the Advanced options greyed out while he has those options available. In other words, I don't have the Contact Sensor or Acceleration Sensor options. He does but he doesn't have them selected.

I enter my user email and pw and choose Chamberlain as the Gateway brand and it takes me to the next screen.

It asks me which devices to connect. I get Garage Door Opener and a blank box which I assume is the lights. I click them both, or either one, it doesn't matter. I click done and get a green box at the top that says, MyQ (Connect) is now installed and automating. But the screen does not go away and I get a red box that says Failed to save page: prefListDevices

UPDATE: We just got it working, (sort of) but I hope to post this here in the hopes that it may help others. We THINK that the problem was that my HUB was not yet registered. I'm pretty sure we DID do that, but it may not have taken for some reason or another. Once we saw that I did not show a hub on my page here, we added the hub and that seemed to do the trick.

ALSO: I had a half dozen MyQ Connect Smart Apps at this point that I needed to delete. So make sure you don't have that also.

UPDATE 2: I still don't have Alexa functionality. I have some weirdness going on. First, as I mentioned above, I have TWO MyQ:Connect Devices. One is blank and I assume it is the light? The other is the Garage Door opener. When I ask Alexa to open my Garage Door she thinks I am crazy. She tells me to name the device and the action. I've tried Alexa, Garage Door Open and that doesn't work either.

The Alexa smart app is installed and both MyQ things are seen and recognized by Alexa but she doesn't do anything with them. I gotta say, this is some really heavy lifting for most people and is sure not ready for prime time. Most of my friends wouldn't touch this with a 10 foot pole and I might not would have if I had known what I was getting into. I was better off with Wink for most things. But I wanted ALEXA to do everything, LOL. If you leave this open I will come back and post if I find out what I'm doing wrong now. My hope is that this will help someone else in the future.

UPDATE 3: I've managed to really screw things up. I got home and talked with my friend, he said to change the name from MyQ:Garage Door Opener to Garage Door. I did that. It worked. Well, Alexa would OPEN the door but not shut the door. This got me to wondering if maybe the other blank MyQ was CLOSE the door. So I named it Garage Door also. LOL. Every time you change anything, you have to tell Alexa to REDISCOVER everything.

So I created a paradox. I ended up losing everything. My entire MyQ:Connect app was blank again so I had to re-enter my credentials and brand of Gateway. THIS TIME I am able to see the ADVANCE sensor options. I don't know if I should mess with them. So I'm kind of back to square one, except I should add that adding the garage door to Smartthings seemed to have taken it OFF of WINK so when I got home I couldn't get the garage door to open through WINK and had to use Smartthings.

What a mess!

Smarthing_MyQ stop working

On Feb. 13, 2017 my Smartthing hub stopped opening my MyQ Camberlain Garage Door Opener. A friend of mine has the same setup and his quit working about the same time. I do not know if Smartthing did an update that broke the accessibility to the MyQ controller. The door does open using the MyQ Chamberlain app on my Android device.

Thanks you for your help (in advance)

Failed to save page: prefListDevices

I'm trying to get things setup using the github method. I see both copy-ninja : MyQ Garage Door Opener and copy-ninja : MyQ Light Controller in device handlers and both have the status of published. I also have copy-ninja : MyQ (Connect) in my smart apps, also published.

On the iPhone when I add the app I can get past username and password and can select Garage Door Opener on the devices page. When I press Done at this point I get a green alert that the app is installed. At this point I don't leave the page. If I press done again I get the message: Failed to save page: prefListDevices

watching the logs I get

groovy.lang.GroovyRuntimeException: Ambiguous method overloading for method physicalgraph.event.EventService#create.
Cannot resolve which method to invoke for [null, class java.util.LinkedHashMap] due to overlapping prototypes between:
[class physicalgraph.app.InstalledSmartApp, interface java.util.Map]
[class physicalgraph.device.cache.HubDTO, interface java.util.Map]
[class physicalgraph.device.cache.InstalledSmartAppDTO, interface java.util.Map]
[class physicalgraph.device.cache.LocationDTO, interface java.util.Map]
[class physicalgraph.location.Location, interface java.util.Map] @ line 115

Not sure next steps for debugging.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.