Interesting coincidence, mine shows not faulted- - Ready - but my Garage Overhead open all the time even though it isn’t.
What Alarm Server are you using? My guess is that you are not using Juggies because you have more status codes like arm_stay and arm_away.
All,
JFYI - I just added physical panel integration to my Smart App. It’s on my github if you’d like to try it out. As it is, I’m calling this one an Alpha as I haven’t completely tested it out, but it seems to be working. Let me know if you see any issues.
–> smartapps/phiz118/dsc-command-center-v2.src
In the live logging, it should read out at version 2.1 when you first initialize it. I would recommend deleting the one you currently have and adding this one if you want to install it.
I’ve also added a bunch of comments to help those looking at the code.
David
JFYI - My new smartapp does this if you’d like to look at it as an example.
I am using MattTW/HoneyAlarmServer with a Vista 20p panel
its driving me nuts
I tried your new code change i keep getting this in my logs
9:41:25 AM: error physicalgraph.app.exception.SmartAppException: Not Found
Unfortunately, I can’t seem to recreate that error. Did you re-setup the smartapp after you updated it? You’ll need to open your phone, go to smartapps, click DSC Command Center 2, and make sure everything is answered. I added one more question “Integrate w/ Physical Panels” which allows you to turn the new functionality off in case it is causing you problems.
On the flip side, it is actually causing me problems and it’s not my code!! errr It looks like if I set the alarm to “stay” mode, Envisalink reports that back as away mode. This is causing smartthings to resync and switch from stay to away. I’m not sure how to fix it yet. I’m hoping it’s just a setup issue with my DSC alarm and not something everyone will experience. Hopefully, I’ll be able to find a fix shortly…
I tried your new v2 last night and it’s great, I can remove SHM and just use physical panel ad the alarms still works. I did have a sync problem last night though. I mistakenly left a door ajar so when I went to bed and did Night Mode the alarm didn’t set. Got up and check the physical panel and sure enough it wasn’t green; fixed the door and tried again but I couldn’t get a software Stay. Physically armed the panel and went to bed as I had been fiddling with the alarmserver earlier and blamed myself.
This morning looked at the PC and all was running fine. I couldn’t disarm because the v2 app said it was already Disarmed so I gather when you push the button it says there is no state change so it doesn’t send the command regardless? Once I Armed, which it was already, and then Disarmed all worked again.
So all this babble summarized, system wasn’t ready, I pushed sent Stay command and it (v2) thought it went to Stay. I fixed system to real ready state and pushed v2 Stay but it already was is Stay so went back to Disarm? Tried to Diasarm in morning but it was already Disarm (v2) so didn’t send command to system. I think.
Further to my verbal diarrhea I just tested the various on/off/SHM/Panel integration and I think my issue is what you were describing earlier and intimated that you would have to look at alarmserver to fix?
Basically the button you created for SmartTiles doesn’t sync with ST.
In most cases, is it syncing correctly? Here’s the steps I believe you took.
- Left door open
- Tried to arm the alarm using a “Night Mode” routine
- Alarm didn’t arm due to open open zone
- Alarm and Smartthings never synced to “disarm” mode
- When you fixed the open zone, ST thought it was still armed and wouldn’t allow you to arm it again.
- You physically set the panel to armed
- ST should now be synced (both are armed)
- You woke up the next morning, and ST is now set to disarm, but your panel is still armed.
- You armed and disarmed in ST, then everything was working again and synced.
Step 4 is weird, my app tries to sync once every minute, so unless this was all rapid fire, it should have synced correctly. Step 8 is even weirder. How did the system disarm without you or ST telling it to? Was it disarmed because your routine moved out of Night mode back into day mode so that happened automatically? If so, then it goes back to the point 4 where the panel and ST aren’t syncing. If it syncs most of the time, but just didn’t in this situation, then I’d ask that you open up “Live Log” and post the results after recreating the issue.
That’s correct, I haven’t added the sync code tot he button I created for you to use with SmartTiles. Smartthings should know that you pushed it, but if you set the Alarm Panel, it won’t sync back to the button. I can add it to the list.
how does this sync up with the zones?
ex sending status’s to the zone device types
or does this just run separate
Anyone know if somehow you can use an android app as the server for DSC. Like this one
Would be a lot easier to use an app like this, then just add the ST portions. The whole use of python and raspberry pi confuses me
Thanks
phiz118 does your smart app (DSC Command Center v2) have to have the rest api setup from alarm server to work? or does it get its information from the web api (ex 1.1.1.1:8111/api/) that the alarmserver creates?
I see my issue now, i am getting this in the IDE log
> 8c25c19f-58d6-4336-87bc-3b2181b29071 10:56:30 AM: error something went wrong: groovy.json.JsonException: Lexing failed on line: 1, column: 1, while reading '<', no possible valid JSON value or punctuation could be recognized. > 8c25c19f-58d6-4336-87bc-3b2181b29071 10:56:30 AM: debug Check Alarm
I validated the JSON that the alarmserver returns and it looks ok
> {"zone": {"1": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "A", "lastfault": "Last Closed longer ago than I can remember"}, "2": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Alarm Cabinet Door", "lastfault": "Last Closed longer ago than I can remember"}, "3": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Motion in Basement", "lastfault": "Last Closed longer ago than I can remember"}, "4": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Basement Flood West Window Well", "lastfault": "Last Closed longer ago than I can remember"}, "5": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Basement Windows", "lastfault": "Last Closed longer ago than I can remember"}, "6": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Basement Window South", "lastfault": "Last Closed longer ago than I can remember"}, "7": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "G", "lastfault": "Last Closed longer ago than I can remember"}, "8": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "H", "lastfault": "Last Closed longer ago than I can remember"}, "9": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "I", "lastfault": "Last Closed longer ago than I can remember"}, "10": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Maw n' Paw Smoke Detector", "lastfault": "Last Closed longer ago than I can remember"}, "11": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "James Window", "lastfault": "Last Closed longer ago than I can remember"}, "12": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Josies Window", "lastfault": "Last Closed longer ago than I can remember"}, "13": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Garage Overhead Door North", "lastfault": "Last Closed longer ago than I can remember"}, "14": {"status": {"tamper": false, "fault": true, "alarm": false, "open": true}, "lastevents": [], "name": "Motion in the Living RM", "lastfault": "Last Closed longer ago than I can remember"}, "15": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Maw n' Paw Glass Break", "lastfault": "Last Closed longer ago than I can remember"}, "16": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Sliding BackDoor", "lastfault": "Last Closed longer ago than I can remember"}, "lastevents": [], "18": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Front Door", "lastfault": "Last Closed longer ago than I can remember"}, "19": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Family Room Window", "lastfault": "Last Closed longer ago than I can remember"}, "20": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Kitchen Front Window", "lastfault": "Last Closed longer ago than I can remember"}, "21": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Kitchen Side Window", "lastfault": "Last Closed longer ago than I can remember"}, "22": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Maw n' Paw Window", "lastfault": "Last Closed longer ago than I can remember"}, "23": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Wireless Alarm Bell", "lastfault": "Last Closed longer ago than I can remember"}, "24": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Basement Utility Smoke Detector", "lastfault": "Last Closed longer ago than I can remember"}, "25": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Basement Smoke Detector", "lastfault": "Last Closed longer ago than I can remember"}, "26": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Living room smoke detector", "lastfault": "Last Closed longer ago than I can remember"}, "27": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Utility Room Glass Break", "lastfault": "Last Closed longer ago than I can remember"}, "28": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Wireless Repeater", "lastfault": "Last Closed longer ago than I can remember"}, "30": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Freezer Temperature Is High", "lastfault": "Last Closed longer ago than I can remember"}, "31": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Overhead Garage Door South", "lastfault": "Last Closed longer ago than I can remember"}, "52": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "!!PANIC!! Call Police", "lastfault": "Last Closed longer ago than I can remember"}, "53": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "!!PANIC!! Call Police", "lastfault": "Last Closed longer ago than I can remember"}, "17": {"status": {"tamper": false, "fault": false, "alarm": false, "open": false}, "lastevents": [], "name": "Garage Door", "lastfault": "Last Closed longer ago than I can remember"}}, "partition": {"lastevents": [], "1": {"status": {"alarm_fire_zone": false, "fire": false, "entry_delay": false, "armed_stay": true, "armed_bypass": false, "ac_present": true, "alpha": "ARMED ***STAY*** ", "ready": false, "chime": false, "trouble": false, "armed": true, "exit_delay": false, "alarm_in_memory": false, "beep": "off", "alarm": false, "armed_away": false, "armed_zero_entry_delay": false}, "lastevents": [], "name": "Home", "lastfault": "Last Closed longer ago than I can remember"}}, "disarm": true, "version": 0.2, "cancel": false, "arm": false}
I had to reinstall the DSC Command Center V2 app a week ago and now I can’t remember if it isn’t working properly or if that was on your “to-do” list. The app works fine to toggle the alarm and the DSC Panel echoes the software and hardware perfectly but DSC Command never shows the status of DSC Panel. e.g. If you set or unset the alarm from the physical panel DSC Panel’s status is correct but DSC Command never changes.
I’m trying to get Phiz118s command center 2 app to work with a Honeywell panel, can someone with a DSC panel post or pastebin a dump of what their “0.0.0.0:8111/api” returns?
@sanity any update on your code? I’m using a mix of @ethomasii and yours, but it would be really nice if we could get an “official” build with arm/disarm locally as well as smarthome monitor control. I’d be willing to pay a bounty
So far all is working well enough for me, I just don’t use the SHM and DSC Command Centre app as they don’t reflect the actual state of the alarm when set manually via the keypad.
You can just add all the DSC contacts to a rule and have that rule pop you a message if any of them open; I did that through Rule Machine.
@phiz118 created an Alarm toggle that I use in SmartTiles. I just toggle that switch on and off with my Good Night/Away and presence rules to arm and disarm. It would be nice if that reflected in the Control Panel but I believe he said that the alarmserver.py would have to be modified for everything to sync.
@daven if you look through my posts you’ll find my github with custom alarmserver.py that uses local hub actions for arm/disarm, and supports status updates from dsc to smartthings. so if you arm or disarm, it reflects in smartthings also.
Thanks! I’ll backup my instance and give your’s a try. It would be nice if they all played together.
Just had a look at your notes and I assume that, because I have a working set up already, I only have to do something (fill in the blanks) with the last 4 or 5 commands at the bottom as they are required for the integration?
+1 on that @isriam i would add to that bounty