einstein.42 Posted December 19, 2015 Author Posted December 19, 2015 That's a good idea. Use what's already there! Sent from my iPhone using Tapatalk
dywicked Posted February 12, 2016 Posted February 12, 2016 Hi Einstein.42: this is great! I run all of my ad-hoc HA stuff on a Raspberry Pi, so I quickly scripted a CGI wrapper for your app - it's pretty ugly since it doesn't really handle output any more than it needs to so Apache won't barf - but it works for being called as a network resource. So, Keypadlinc with a garage button is good to go. Also, if you or others are looking for a way to reflect the door status on the Keypadlinc in near real-time based on MYQ (instead of another sensor) you can use IFTTT now. I have my MYQ app configured to send an email alert if there is a door open or close event. I created a gmail label to capture those notifications. I then created an IFTTT rule which calls the maker channel to run my Get/Update status program on the ISY when new mail with that label comes in. For safety, rather than immediately setting a specific status, the program runs the status command in your script and then turns the scene with the KPL button responder on/off accordingly. It doesn't matter if it was an open or close email, it's always handled the same way. I also have a program which runs every 5 minutes to do the same just in case IFTTT or gmail is gummed up. This way you can get near real-time status reflection if a native controller is used to open/close the door without hammering their API every few seconds. Best, -David
einstein.42 Posted February 13, 2016 Author Posted February 13, 2016 Excellent. Sounds great. Thanks for the input and awesome idea dywicked!
lsibarra Posted June 28, 2016 Posted June 28, 2016 (edited) Hi Einstein.42 You helped me integrate my garage door last December. I had issues because the python script was not compatible with my ISY firmaware version. Since then, you updated the script, it was running very smooth. Thanks again for all your help. I just wanted to make you aware that I believe there are new added features or updates on the my-garage.py script. I tried to use the new one this past weekend and it didn't work with my ISY. The odd part though was that, I was able to run the command via terminal and the garage would open or close depending which one I run. However, it is not working from the DSCLink relay server. Even including the full path it is still not working. I am not sure if you have any idea why its not working. The old one still works like a charm. My current ISY version is 4.4.6. Hope this helps. I wonder if you received any feedback from anyone with the same issue. Thanks again for your help. -Larry Edited June 28, 2016 by lsibarra
einstein.42 Posted June 30, 2016 Author Posted June 30, 2016 Can you send me the log or attach it here?
lsibarra Posted July 2, 2016 Posted July 2, 2016 Hi einstein.42 I am not sure what log are you referring. How can i get or obtain the log? All the log I have was the one form the logs folder. I am not sure if this will help but this is all I am getting. I am new to linux and not sure what the command. Please let me know. 2016-06-30 15:48:37,067 INFO ==================================STARTED==================================2016-06-30 22:06:45,304 INFO ==================================STARTED==================================2016-06-30 22:06:46,756 INFO gDoor is Closed. Last changed at Thu 30 Jun 2016 14:58:262016-06-30 22:06:46,787 INFO Searching ISY Definitions for MyQ_gDoor2016-06-30 22:06:46,788 INFO State variable: MyQ_gDoor found with ID: 372016-06-30 22:06:46,801 INFO Get_Var_State: init: 0 - val: 02016-06-30 22:06:46,801 INFO ISY Get Var ID Return - id: 37 - varname: MyQ_gDoor - init: 0 - value: 02016-06-30 22:06:46,814 INFO Get_Var_State: init: 0 - val: 02016-06-30 22:06:46,815 INFO MyQ_gDoor is already set to 02016-06-30 23:23:14,427 INFO ==================================STARTED==================================
lsibarra Posted July 2, 2016 Posted July 2, 2016 Hi einstein.42 here's additional info that may help. 2016-07-01 18:17:00,818 INFO ==================================STARTED==================================2016-07-01 18:17:02,065 INFO gDoor is Closed. Last changed at Fri 01 Jul 2016 17:39:342016-07-01 18:17:02,076 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 18:17:02,077 ERROR Traceback (most recent call last):2016-07-01 18:17:02,077 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 18:17:02,077 ERROR gdoor_main()2016-07-01 18:17:02,078 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 18:17:02,078 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 18:17:02,078 ERROR TypeError2016-07-01 18:17:02,078 ERROR :2016-07-01 18:17:02,079 ERROR 'NoneType' object is not iterable2016-07-01 18:17:29,316 INFO ==================================STARTED==================================2016-07-01 18:18:00,701 INFO ==================================STARTED==================================2016-07-01 18:18:02,302 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 18:18:02,303 ERROR Traceback (most recent call last):2016-07-01 18:18:02,303 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 18:18:02,304 ERROR gdoor_main()2016-07-01 18:18:02,304 ERROR File "./myq-garage.py", line 332, in gdoor_main2016-07-01 18:18:02,304 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 18:18:02,305 ERROR TypeError2016-07-01 18:18:02,305 ERROR :2016-07-01 18:18:02,305 ERROR 'NoneType' object is not iterable2016-07-01 18:19:42,997 INFO ==================================STARTED==================================2016-07-01 18:19:45,111 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 18:19:45,111 ERROR Traceback (most recent call last):2016-07-01 18:19:45,111 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 18:19:45,112 ERROR gdoor_main()2016-07-01 18:19:45,112 ERROR File "./myq-garage.py", line 332, in gdoor_main2016-07-01 18:19:45,112 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 18:19:45,113 ERROR TypeError2016-07-01 18:19:45,113 ERROR :2016-07-01 18:19:45,113 ERROR 'NoneType' object is not iterable2016-07-01 18:51:28,995 INFO ==================================STARTED==================================2016-07-01 18:51:30,559 INFO gDoor is Closed. Last changed at Fri 01 Jul 2016 18:20:042016-07-01 18:51:30,570 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 18:51:30,571 ERROR Traceback (most recent call last):2016-07-01 18:51:30,571 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 18:51:30,572 ERROR gdoor_main()2016-07-01 18:51:30,572 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 18:51:30,572 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 18:51:30,573 ERROR TypeError2016-07-01 18:51:30,573 ERROR :2016-07-01 18:51:30,573 ERROR 'NoneType' object is not iterable2016-07-01 18:51:42,888 INFO ==================================STARTED==================================2016-07-01 19:04:05,072 INFO ==================================STARTED==================================2016-07-01 19:04:06,521 INFO gDoor is Closed. Last changed at Fri 01 Jul 2016 18:20:042016-07-01 19:04:06,532 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:04:06,532 ERROR Traceback (most recent call last):2016-07-01 19:04:06,533 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:04:06,533 ERROR gdoor_main()2016-07-01 19:04:06,533 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:04:06,534 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:04:06,534 ERROR TypeError2016-07-01 19:04:06,534 ERROR :2016-07-01 19:04:06,535 ERROR 'NoneType' object is not iterable2016-07-01 19:04:18,276 INFO ==================================STARTED==================================2016-07-01 19:04:19,864 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:04:19,865 ERROR Traceback (most recent call last):2016-07-01 19:04:19,865 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:04:19,865 ERROR gdoor_main()2016-07-01 19:04:19,866 ERROR File "./myq-garage.py", line 332, in gdoor_main2016-07-01 19:04:19,866 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:04:19,866 ERROR TypeError2016-07-01 19:04:19,866 ERROR :2016-07-01 19:04:19,867 ERROR 'NoneType' object is not iterable2016-07-01 19:04:35,597 INFO ==================================STARTED==================================2016-07-01 19:04:37,074 INFO gDoor is Closed. Last changed at Fri 01 Jul 2016 18:20:042016-07-01 19:04:37,085 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:04:37,086 ERROR Traceback (most recent call last):2016-07-01 19:04:37,086 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:04:37,086 ERROR gdoor_main()2016-07-01 19:04:37,087 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:04:37,087 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:04:37,087 ERROR TypeError2016-07-01 19:04:37,087 ERROR :2016-07-01 19:04:37,088 ERROR 'NoneType' object is not iterable2016-07-01 19:05:07,169 INFO ==================================STARTED==================================2016-07-01 19:05:08,722 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:05:08,723 ERROR Traceback (most recent call last):2016-07-01 19:05:08,723 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:05:08,724 ERROR gdoor_main()2016-07-01 19:05:08,724 ERROR File "./myq-garage.py", line 332, in gdoor_main2016-07-01 19:05:08,724 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:05:08,725 ERROR TypeError2016-07-01 19:05:08,725 ERROR :2016-07-01 19:05:08,725 ERROR 'NoneType' object is not iterable2016-07-01 19:05:14,282 INFO ==================================STARTED==================================2016-07-01 19:05:20,946 INFO ==================================STARTED==================================2016-07-01 19:05:32,137 INFO ==================================STARTED==================================2016-07-01 19:05:33,722 INFO gDoor is Open. Last changed at Fri 01 Jul 2016 19:05:192016-07-01 19:05:33,733 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:05:33,735 ERROR Traceback (most recent call last):2016-07-01 19:05:33,735 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:05:33,736 ERROR gdoor_main()2016-07-01 19:05:33,736 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:05:33,737 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:05:33,737 ERROR TypeError2016-07-01 19:05:33,737 ERROR :2016-07-01 19:05:33,737 ERROR 'NoneType' object is not iterable2016-07-01 19:05:47,071 INFO ==================================STARTED==================================2016-07-01 19:05:48,553 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:05:48,553 ERROR Traceback (most recent call last):2016-07-01 19:05:48,554 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:05:48,554 ERROR gdoor_main()2016-07-01 19:05:48,555 ERROR File "./myq-garage.py", line 332, in gdoor_main2016-07-01 19:05:48,555 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:05:48,555 ERROR TypeError2016-07-01 19:05:48,556 ERROR :2016-07-01 19:05:48,556 ERROR 'NoneType' object is not iterable2016-07-01 19:05:56,133 INFO ==================================STARTED==================================2016-07-01 19:05:57,375 INFO gDoor is Open. Last changed at Fri 01 Jul 2016 19:05:192016-07-01 19:05:57,386 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:05:57,386 ERROR Traceback (most recent call last):2016-07-01 19:05:57,386 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:05:57,387 ERROR gdoor_main()2016-07-01 19:05:57,387 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:05:57,388 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:05:57,388 ERROR TypeError2016-07-01 19:05:57,388 ERROR :2016-07-01 19:05:57,388 ERROR 'NoneType' object is not iterable2016-07-01 19:06:02,995 INFO ==================================STARTED==================================2016-07-01 19:06:04,305 INFO gDoor is Closing. Last changed at Fri 01 Jul 2016 19:05:572016-07-01 19:06:04,316 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:06:04,316 ERROR Traceback (most recent call last):2016-07-01 19:06:04,316 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:06:04,317 ERROR gdoor_main()2016-07-01 19:06:04,317 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:06:04,318 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:06:04,318 ERROR TypeError2016-07-01 19:06:04,318 ERROR :2016-07-01 19:06:04,318 ERROR 'NoneType' object is not iterable2016-07-01 19:06:22,276 INFO ==================================STARTED==================================2016-07-01 19:06:23,672 INFO gDoor is Closed. Last changed at Fri 01 Jul 2016 19:06:072016-07-01 19:06:23,683 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:06:23,684 ERROR Traceback (most recent call last):2016-07-01 19:06:23,684 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:06:23,684 ERROR gdoor_main()2016-07-01 19:06:23,685 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:06:23,685 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:06:23,685 ERROR TypeError2016-07-01 19:06:23,686 ERROR :2016-07-01 19:06:23,686 ERROR 'NoneType' object is not iterable2016-07-01 19:06:36,476 INFO ==================================STARTED==================================2016-07-01 19:06:38,087 INFO gDoor is Closed. Last changed at Fri 01 Jul 2016 19:06:072016-07-01 19:06:38,097 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:06:38,098 ERROR Traceback (most recent call last):2016-07-01 19:06:38,098 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:06:38,098 ERROR gdoor_main()2016-07-01 19:06:38,099 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:06:38,099 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:06:38,099 ERROR TypeError2016-07-01 19:06:38,100 ERROR :2016-07-01 19:06:38,100 ERROR 'NoneType' object is not iterable2016-07-01 19:06:44,794 INFO ==================================STARTED==================================2016-07-01 19:06:46,207 INFO gDoor is Closed. Last changed at Fri 01 Jul 2016 19:06:072016-07-01 19:06:46,218 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:06:46,218 ERROR Traceback (most recent call last):2016-07-01 19:06:46,219 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:06:46,219 ERROR gdoor_main()2016-07-01 19:06:46,219 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:06:46,220 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:06:46,220 ERROR TypeError2016-07-01 19:06:46,220 ERROR :2016-07-01 19:06:46,220 ERROR 'NoneType' object is not iterable2016-07-01 19:06:56,389 INFO ==================================STARTED==================================2016-07-01 19:06:57,948 INFO gDoor is Closed. Last changed at Fri 01 Jul 2016 19:06:072016-07-01 19:06:57,959 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:06:57,960 ERROR Traceback (most recent call last):2016-07-01 19:06:57,960 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:06:57,960 ERROR gdoor_main()2016-07-01 19:06:57,961 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:06:57,961 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:06:57,961 ERROR TypeError2016-07-01 19:06:57,961 ERROR :2016-07-01 19:06:57,962 ERROR 'NoneType' object is not iterable2016-07-01 19:07:15,882 INFO ==================================STARTED==================================2016-07-01 19:07:17,188 INFO gDoor is Closed. Last changed at Fri 01 Jul 2016 19:06:072016-07-01 19:07:17,198 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:07:17,199 ERROR Traceback (most recent call last):2016-07-01 19:07:17,199 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:07:17,199 ERROR gdoor_main()2016-07-01 19:07:17,200 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:07:17,200 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:07:17,200 ERROR TypeError2016-07-01 19:07:17,201 ERROR :2016-07-01 19:07:17,201 ERROR 'NoneType' object is not iterable2016-07-01 19:08:14,673 INFO ==================================STARTED==================================2016-07-01 19:08:15,996 INFO gDoor is Closed. Last changed at Fri 01 Jul 2016 19:06:072016-07-01 19:08:16,007 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:08:16,008 ERROR Traceback (most recent call last):2016-07-01 19:08:16,008 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:08:16,008 ERROR gdoor_main()2016-07-01 19:08:16,009 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:08:16,009 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:08:16,009 ERROR TypeError2016-07-01 19:08:16,010 ERROR :2016-07-01 19:08:16,010 ERROR 'NoneType' object is not iterable2016-07-01 19:08:28,553 INFO ==================================STARTED==================================2016-07-01 19:08:29,929 INFO gDoor is Closed. Last changed at Fri 01 Jul 2016 19:06:072016-07-01 19:08:29,939 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:08:29,940 ERROR Traceback (most recent call last):2016-07-01 19:08:29,940 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:08:29,941 ERROR gdoor_main()2016-07-01 19:08:29,941 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:08:29,941 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:08:29,941 ERROR TypeError2016-07-01 19:08:29,942 ERROR :2016-07-01 19:08:29,942 ERROR 'NoneType' object is not iterable2016-07-01 19:08:33,393 INFO ==================================STARTED==================================2016-07-01 19:08:34,617 INFO gDoor is Closed. Last changed at Fri 01 Jul 2016 19:06:072016-07-01 19:08:34,628 ERROR Caught Exception in isy_get_var_id: ('Connection aborted.', error(111, 'Connection refused'))2016-07-01 19:08:34,628 ERROR Traceback (most recent call last):2016-07-01 19:08:34,628 ERROR File "./myq-garage.py", line 348, in <module>2016-07-01 19:08:34,629 ERROR gdoor_main()2016-07-01 19:08:34,629 ERROR File "./myq-garage.py", line 320, in gdoor_main2016-07-01 19:08:34,630 ERROR id, varname, init, value = isy_get_var_id(inst.name)2016-07-01 19:08:34,630 ERROR TypeError2016-07-01 19:08:34,630 ERROR :2016-07-01 19:08:34,630 ERROR 'NoneType' object is not iterable
Marc44 Posted July 23, 2016 Posted July 23, 2016 Hi einstein, Thank you for this, I have this working great on a windows box, I already have one running 24/7 so thought I'd try there first. It runs great from the command line, but I'm having some issues getting ti to run as a scheduled task I'm still playing around, but anyone have any tips? Marc
godoorgo Posted September 3, 2016 Posted September 3, 2016 Hello einstein, I'm running the script with ISY set to False, and am getting the following: When I issue './myq-garage.py status' I get no results and the following shows in the log: 2016-09-02 20:04:55,062 INFO ==================================STARTED================================== When I issue './myq-garage.py open garage' I also get no output but the following in the log: 2016-09-02 20:12:11,324 INFO ==================================STARTED================================== 2016-09-02 20:12:13,262 ERROR Traceback (most recent call last): 2016-09-02 20:12:13,264 ERROR File "./myq-garage.py", line 344, in <module> 2016-09-02 20:12:13,267 ERROR gdoor_main() 2016-09-02 20:12:13,269 ERROR File "./myq-garage.py", line 333, in gdoor_main 2016-09-02 20:12:13,272 ERROR print(doorname + ' not found in available doors.') 2016-09-02 20:12:13,275 ERROR UnboundLocalError 2016-09-02 20:12:13,277 ERROR : 2016-09-02 20:12:13,279 ERROR local variable 'doorname' referenced before assignment What's the problem here? Thanks
pastro50 Posted October 7, 2016 Posted October 7, 2016 (edited) Having some trouble with the 2nd Place. The first place is a normal chamberlain door with a door type of 2, The second place is a a Myq garage (adds myq to a non-chamberlain) and the door type is a 7 - which is not supported. WIth no modifications of the code, I get the door status for the normal door and nothing for the 2nd place. I then added a SUPPORT_DEVICE of 7 to the ones you had (2 and 5) and now I get the status of the door on the 2nd place, but I also get a line: is Closed. Last changed at Sat 16 Jan 2016 02:49:26 With no name. And from the log I see that the type 7 is getting door status for two doors - There are two devId that are one number off from each other. I'm pretty sure that the myq garage supports two devices although I only have one connected - Maybe the door that isn't installed is still returning some info? Editing - Worked on removing the blank door name. I saw that the name was "" on the 2nd device on the 2nd place so I put a check in the python if the if len(name) > 0: DOOR(id, name,state,time) And that seemed to fix the door with the no name being reported The number of devices was being returned as 2 but the 2nd device was not being used or setup. Probably is a better way to do this - but this worked. Edited October 7, 2016 by pastro50
einstein.42 Posted October 10, 2016 Author Posted October 10, 2016 Interesting. This must have been either a new type or one I haven't seen used before. You are welcome to commit your changes to github and I will merge it.
lsibarra Posted October 24, 2016 Posted October 24, 2016 Hi einstein42, I upgraded my ISY to 5.02 and using the nodelink 0.6.7 with the relay enabled to port 2405. However, I'm having issues with the myq-garage.py script. If I run it in terminal, it works just fine. However, if I run in from the ISY to send the command, it is not responding. Below is the error log I have. Hope you can help me again and I hope its an easy fix. Larry 2016-10-24 02:12:49,708 INFO ==================================STARTED================================== 2016-10-24 02:12:50,657 WARNING Unsupported device (Gateway) found, skipping 2016-10-24 02:12:52,150 INFO Searching ISY Definitions for MyQ_gDoor 2016-10-24 02:12:52,151 INFO State variable: MyQ_gDoor found with ID: 37 2016-10-24 02:12:52,169 INFO Get_Var_State: init: 0 - val: 0 2016-10-24 02:12:52,169 INFO ISY Get Var ID Return - id: 37 - varname: MyQ_gDoor - init: 0 - value: 0 2016-10-24 02:12:52,187 INFO Get_Var_State: init: 0 - val: 0 2016-10-24 02:13:21,934 INFO ==================================STARTED================================== 2016-10-24 02:13:22,784 WARNING Unsupported device (Gateway) found, skipping 2016-10-24 02:13:24,631 INFO Searching ISY Definitions for MyQ_gDoor 2016-10-24 02:13:24,632 INFO State variable: MyQ_gDoor found with ID: 37 2016-10-24 02:13:24,650 INFO Get_Var_State: init: 0 - val: 1 2016-10-24 02:13:24,650 INFO ISY Get Var ID Return - id: 37 - varname: MyQ_gDoor - init: 0 - value: 1 2016-10-24 02:13:24,668 INFO Get_Var_State: init: 0 - val: 1 2016-10-24 03:26:54,819 INFO ==================================STARTED================================== 2016-10-24 03:27:06,919 INFO ==================================STARTED================================== 2016-10-24 03:27:07,730 WARNING Unsupported device (Gateway) found, skipping 2016-10-24 03:27:08,555 INFO gDoor is Closed. Last changed at Mon 24 Oct 2016 02:40:41 2016-10-24 03:27:08,592 INFO Searching ISY Definitions for MyQ_gDoor 2016-10-24 03:27:08,593 INFO State variable: MyQ_gDoor found with ID: 37 2016-10-24 03:27:08,611 INFO Get_Var_State: init: 0 - val: 0 2016-10-24 03:27:08,612 INFO ISY Get Var ID Return - id: 37 - varname: MyQ_gDoor - init: 0 - value: 0 2016-10-24 03:27:08,629 INFO Get_Var_State: init: 0 - val: 0 2016-10-24 03:27:08,630 INFO MyQ_gDoor is already set to 0 2016-10-24 03:37:17,068 INFO ==================================STARTED================================== 2016-10-24 03:37:18,089 WARNING Unsupported device (Gateway) found, skipping 2016-10-24 03:37:19,373 INFO Searching ISY Definitions for MyQ_gDoor 2016-10-24 03:37:19,374 INFO State variable: MyQ_gDoor found with ID: 37 2016-10-24 03:37:19,392 INFO Get_Var_State: init: 0 - val: 0 2016-10-24 03:37:19,393 INFO ISY Get Var ID Return - id: 37 - varname: MyQ_gDoor - init: 0 - value: 0 2016-10-24 03:37:19,412 INFO Get_Var_State: init: 0 - val: 0 2016-10-24 03:37:45,755 INFO ==================================STARTED================================== 2016-10-24 03:37:46,979 WARNING Unsupported device (Gateway) found, skipping 2016-10-24 03:37:48,171 INFO Searching ISY Definitions for MyQ_gDoor 2016-10-24 03:37:48,172 INFO State variable: MyQ_gDoor found with ID: 37 2016-10-24 03:37:48,190 INFO Get_Var_State: init: 0 - val: 1 2016-10-24 03:37:48,191 INFO ISY Get Var ID Return - id: 37 - varname: MyQ_gDoor - init: 0 - value: 1 2016-10-24 03:37:48,209 INFO Get_Var_State: init: 0 - val: 1
lsibarra Posted February 6, 2017 Posted February 6, 2017 Hi, I am getting this error message when i execute the command to open/close/status my 'MyQ Garage Door" from linux terminal. Does anyone know why this error is happening? I am currently running ISY firmware 5.0.2. Please help.
einstein.42 Posted February 6, 2017 Author Posted February 6, 2017 Welp. Looks like the 'unofficial API' caught up with us. MyQ has either removed or changed their API and blocked access to the one all of us we using. If anyone can find the new API documentation or if there is even an API at all please let me know. Until then this project is no longer viable. Please take a moment to thank Chamberlain and Liftmaster for their lack of community support.
lsibarra Posted February 6, 2017 Posted February 6, 2017 Hi einstein.42, I really appreciate you looking into this so quickly. It is unfortunate that these companies are not willing to support our community here at Universal Devices. However, I would like to thank you for putting this together for us. It was quite a ride for me for two years to be able to control my garage door with my ISY. I really appreciate all the updates and support you've provided here. If there is no API available for this, do you have any recommendation or the best solution to control/monitor my garage door? Thanks again, Larry
xKing Posted February 6, 2017 Posted February 6, 2017 Welp. Looks like the 'unofficial API' caught up with us. MyQ has either removed or changed their API and blocked access to the one all of us we using. If anyone can find the new API documentation or if there is even an API at all please let me know. Until then this project is no longer viable. Please take a moment to thank Chamberlain and Liftmaster for their lack of community support. My CGI script still works (at least for me), every time they change something I have to use Fiddler to sniff SSL traffic iOS app sends to MyQ to figure out what changed. 1
einstein.42 Posted February 6, 2017 Author Posted February 6, 2017 Excellent, I'll get this myq script updated shortly. Thanks xKing. My CGI script still works (at least for me), every time they change something I have to use Fiddler to sniff SSL traffic iOS app sends to MyQ to figure out what changed.
einstein.42 Posted February 6, 2017 Author Posted February 6, 2017 Ok. Updated. git pull xKing I borrowed some of your methods, thanks for figuring that out. Did you find a doc or just use Fiddler? I gave you credit in the source.
xKing Posted February 6, 2017 Posted February 6, 2017 (edited) Just Fiddler P.S. I really recommend that you save off the token in a temp file, it's good for about 1 hour, at least that is how the iOS app does it. What's the point of getting a new one every 5 minutes? Edited February 6, 2017 by xKing
einstein.42 Posted February 6, 2017 Author Posted February 6, 2017 Awesome, I spent a while trying to do it from the gui with wireshark but I couldn't get it. Glad the app was easier. I'll have to look into fiddler. You're the man.
lsibarra Posted February 7, 2017 Posted February 7, 2017 Hi einstein.42 and xKing, you guys are awesome I tested the new script and it works perfectly from the terminal. However, I cannot get it to work from the network module from ISY. Do you have any idea? Larry
einstein.42 Posted February 7, 2017 Author Posted February 7, 2017 Network module? Not sure what you are doing. Refresh my memory.
lsibarra Posted February 7, 2017 Posted February 7, 2017 Hi einstein.42, I was running the commands via network resource module in ISY using the relay server from io_guy's NodeLink Server. I setup the relay command in ISY as follows: Command Type: tcp, Host: <rpi_id_address>, Port: 2405, Mode: C Escaped However, it is currently not working with the script. Therefore, I tried to bypass the config.ini file and entered all the information directly to your myq-garage.py script. Doing it this way, I was able to get the garage to respond from the ISY command via network resource module. Do you have any idea why it is not working with the config.ini file? Both files (myq-garage.py and the config.ini permission is set to 0755). Thanks, Larry
einstein.42 Posted February 7, 2017 Author Posted February 7, 2017 I would assume because it doesn't know where to find the config.ini because it isn't run from that local directory by NodeLink server. Someone else merged in that config.ini stuff, I never had much of a taste for it. You should be fine the way it is. xKing, I dug into fiddler and I get a totally different AppID from my ipad that what you had. Thought that was odd.
Recommended Posts