caronc / ultrasync Goto Github PK
View Code? Open in Web Editor NEWAPI and CLI wrapper to The Interlogix ZeroWire and Hills ComNav (NX-595E) UltraSync Security Panel
License: MIT License
API and CLI wrapper to The Interlogix ZeroWire and Hills ComNav (NX-595E) UltraSync Security Panel
License: MIT License
๐ชฒ Describe the bug
watch panel dump
๐ก Screenshots and Logs
[fed]$ ./bin/ultrasync -w -c ~/.config/ultrasync/vpnnat.cfg
2021-01-15 14:54:46 [001] F1 : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] F2 : Ready
2021-01-15 14:54:46 [001] F3 : Ready
2021-01-15 14:54:46 [001] P1 : Ready
2021-01-15 14:54:46 [001] P2 : Ready
2021-01-15 14:54:46 [001] F4 : Ready
2021-01-15 14:54:46 [001] F5 : Ready
2021-01-15 14:54:46 [001] F6 : Ready
2021-01-15 14:54:46 [001] P3 : Ready
2021-01-15 14:54:46 [001] P4 : Ready
2021-01-15 14:54:46 [001] IR1 : Ready
2021-01-15 14:54:46 [001] IR2 : Ready
2021-01-15 14:54:46 [001] IR3 : Ready
2021-01-15 14:54:46 [001] IR4 : Ready
2021-01-15 14:54:46 [001] IR5 : Ready
2021-01-15 14:54:46 [001] IR6 : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] TMP : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [001] - : Ready
2021-01-15 14:54:46 [081] F #1 : Armed Away
2021-01-15 14:54:46 [000] B #2 : Armed Away
---
Traceback (most recent call last):
File "./bin/ultrasync", line 71, in <module>
main()
File "/home/xxx/.local/lib/python3.8/site-packages/click/core.py", line 829, in __call__
return self.main(*args, **kwargs)
File "/home/xxx/.local/lib/python3.8/site-packages/click/core.py", line 782, in main
rv = self.invoke(ctx)
File "/home/xxx/.local/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/xxx/.local/lib/python3.8/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "/home/xxx/04_configurazioni/ultrasync_caronc/ultrasync-xgen-nx64ip-support/ultrasync/cli.py", line 199, in main
results = usync.details()
File "/home/xxx/04_configurazioni/ultrasync_caronc/ultrasync-xgen-nx64ip-support/ultrasync/main.py", line 588, in details
if not self.update(max_age_sec=max_age_sec):
File "/home/xxx/04_configurazioni/ultrasync_caronc/ultrasync-xgen-nx64ip-support/ultrasync/main.py", line 573, in update
if not self._sequence():
File "/home/xxx/04_configurazioni/ultrasync_caronc/ultrasync-xgen-nx64ip-support/ultrasync/main.py", line 1829, in _sequence
return getattr(self, '_{}_sequence'.format(self.vendor))()
File "/home/xxx/04_configurazioni/ultrasync_caronc/ultrasync-xgen-nx64ip-support/ultrasync/main.py", line 2046, in _comnav_sequence
if area['sequence'] != a_seq[bank]:
IndexError: list index out of range
๐ป Your System Details:
๐ฎ Additional context
The idea of this feature would be to access the latest entry in the log of the panel and exposing it.
This would provide information on who (which user) has enable / disable the alarm and when.
The information is available in the /user/history.html. It seems that an history.xml is also available but did not succeeded to get access to.
I have several people (grandmother, maid) having access to the house without having home assistant access (app on phone). It would allow me when someone is arriving and leaving based on the code they are using in the alarm system.
Still worth to say your work is already excellent ;)
โ Question
Hey, after the merge of the latest changes for NX595e, are you planning to make a new release for ultrasync?
Hi
I have a question:
Is there any way to make this work with NX-596 module?
I am unable to make it work with it.
Sorry if this is the wrong place to ask.
Thanks
โ Question
I was wondering on how I could get the current state of the alarm, like Armed, away or stay. I can't seem to find anything related to the current state of the alarm?
๐ก The Idea
Add support for the xGen Panel v8 based on this thread from a user @GenGT
๐ชฒ Describe the bug
The ComNav v0.108-O model displays all 128 Zones. The expected output is to only show the zones that are actually in use.
The original request comes from the Home Assistant Forum (here).
๐ฎ Additional context
n/a
โ Question
Hello,
The documentation is not clear on where and how the config file should be named?
As per documentation i wrote sudo nano ~/.config/ultrasync
and it worked.
Does this support a ATS advanced x500 with Ultrasync connection?
User: ? user account or Ultrasync id / SID
Pin: ? user account pin or Ultrasync password
Can i change the connecting port? through the config? ATS usually connects through port 32000
Hi
Thank you for the amazing work on this. It just added a whole extra level to my alarm system.
I had a switch in the output control section of the Ultrasync app which operates my garage door. I was wondering if there was any way i could turn it on or off using this in home assistant.
Hi Chris,
I have been doing extensive testing of the Ultrasync app and I'm very happy with the whole experience. All states report correctly for each Zone,
however I have two Zones that are associated with area2, (eg Large and Small Garage door reeds), and Area 2 is always showing a status of "Ready".
I opened either or both of the zones, and in the app state is "Ready"
However if I log directly into the web server, this shows Area 2 "Not Ready"
I also use UltraConnect as an APP on the Phone and that shows Area 2 not ready as well.
regards
David
Logger: homeassistant.helpers.entity
Source: helpers/entity.py:583
First occurred: 16:31:21 (12 occurrences)
Last logged: 16:32:18
Entity sensor.ultrasync_zone5state (<class 'custom_components.ultrasync.sensor.UltraSyncSensor'>) implements device_state_attributes. Please report it to the custom component author.
Entity sensor.ultrasync_zone6state (<class 'custom_components.ultrasync.sensor.UltraSyncSensor'>) implements device_state_attributes. Please report it to the custom component author.
Entity sensor.ultrasync_zone7state (<class 'custom_components.ultrasync.sensor.UltraSyncSensor'>) implements device_state_attributes. Please report it to the custom component author.
Entity sensor.ultrasync_zone8state (<class 'custom_components.ultrasync.sensor.UltraSyncSensor'>) implements device_state_attributes. Please report it to the custom component author.
The payload for the zone bypass, ise sent in any case regardless the vendor.
That as a results gives an log error:
2023-05-08 13:18:04.581 ERROR (SyncWorker_6) [ultrasync] Failed to query http://[internal IP address]/user/zonefunction.cgi
The checking of the zone starts in main.py file in line 592. Then there are if statements for each vendor, but the sent of the payload, is done inside the if statements. However, there is another sent payload after the if statements (line 637), which creates the bug.
This must be deleted.
I have created a pull request to resolve the bug.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.