matthillman / homebridge-tc-2-0 Goto Github PK
View Code? Open in Web Editor NEWHomebridge Plugin for TotalConnect Security Panel
License: Apache License 2.0
Homebridge Plugin for TotalConnect Security Panel
License: Apache License 2.0
Is their any work or anything to add sensor connectivity to HomeKit?/
I've read the other posts here. Seems that "disarming" status staying despite what the panel/system is set to, is common. I noticed that if I manually change the system state in HOOBS to "home", the bridge/accessory in HomeKit will switch from "disarming" to "home". If I then change it to "off" in HOOBS (which does change the system state properly by the way), the bridge/accessory in HomeKit changes to "off".
Then if I close the Home app (force close), I get a warning that says "Total Connect was armed for stay". This doesn't actually change the state of the system - it stays in "home" state (in HOOBS as well). But then the bridge/accessory displays "disarming". I can synch it back up, for lack of a better phrase, by going through what I said in the first paragraph which only holds until I force close the app (or significant time goes by after I switch to another app on my iOS device).
When this happens, this error is in the HOOBS log:
2:19:19 PMTc Security Panel BridgeWARNINGunhandled rejection: TypeError: Cannot read property 'Partitions' of undefined
Question: any plans to add the ability for sensors/zones to be accessories in HomeKit through this plug-in?
This is with the new Pro series system for what it's worth.
Thank you for a great plugin. This is the best TC security plugin I’ve seen yet.
I may be experiencing a bug. When changing the alarm state in the Home app, the alarm device immediately changes to “not responding.” The change goes through and the alarm does what I told it to do. Closing and reopening the Home app refreshes the state and it accurately reports the state. The logs only show the state change with no apparent errors.
I am running Homebridge in Docker on a RPI 3.
I'm getting the following errors
[02/02/2023, 16:36:30] [TotalConnect] Unknown state received: 0
[02/02/2023, 16:36:30] [TotalConnect] Get current state -> 0
[02/02/2023, 16:36:30] [TotalConnect] [getStatus] RequestError: write EPROTO C0FAEF76:error:0A000152:SSL routines:final_renegotiate:unsafe legacy renegotiation disabled:../deps/openssl/openssl/ssl/statem/extensions.c:922:
Any Ideas or thoughts on what is causing this issue.
Thanks
Getting the following error:
This plugin slows down Homebridge. The read handler for the characteristic 'Security System Current State' didn't respond at all!. Please check that you properly call the callback! See https://homebridge.io/w/JtMGR for more info.
I'm guessing this plugin has been abandoned at this point?
Hello,
I have had issues incorporating the original version of this plugin into Homebridge but noticed that there is a pull request that focuses on fixing many of the issues. How do I go about incorporating this pull request into Homebridge to help resolve the issues?
I am getting the error stated in the title but more info is below: (I did mask the directory it's running in for security)
(node:9468) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'Partitions' of undefined
at TCApi.getStatus (\npm\node_modules\homebridge-tc-security-panel\src\tc.v2.ts:263:63)
at runMicrotasks ()
at processTicksAndRejections (internal/process/task_queues.js:95:5)
at Timeout._onTimeout (\npm\node_modules\homebridge-tc-security-panel\src\tcAccessory.ts:56:22)
(Use node --trace-warnings ...
to show where the warning was created)
(node:9468) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict
(see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:9468) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Periodically the alarm device will get stuck on "Disarming...". The logs show the following when it happens:
[2/4/2021, 6:55:34 AM] [TotalConnect] Get Characteristic TargetState -> 3
[2/4/2021, 6:55:34 AM] [TotalConnect] Get current state -> 0
There does not seem to be any consistent way to get the plugin to go back to its normal behavior.
When Homebridge starts, it always shows the alarm as armed for HOME. Throws this error:
[TotalConnect] [getStatus] TypeError: Cannot read properties of undefined (reading 'Partitions')
OpenSSL 3.0 breaks this plugin due to rs.alarmnet.com not supporting secure renegotiation.
This error from the Homebridge log repeats upon every getStatus() call: [TotalConnect] [getStatus] RequestError: write EPROTO C0A767E63D7F0000:error:0A000152:SSL routines:final_renegotiate:unsafe legacy renegotiation disabled:../deps/openssl/openssl/ssl/statem/extensions.c:922:
I was able to reproduce this issue by running openssl s_client rs.alarmnet.com:443
, resulting in
CONNECTED(00000003)
4067A7E0927F0000:error:0A000152:SSL routines:final_renegotiate:unsafe legacy renegotiation disabled:../ssl/statem/extensions.c:879:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 3111 bytes and written 324 bytes
Verification: OK
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
Protocol : TLSv1.2
Cipher : 0000
Session-ID: 109F731E12A40FC3D9B886870B5FB43F94E6DA86AC66A8E4E26E8A54DEBB824B
Session-ID-ctx:
Master-Key:
PSK identity: None
PSK identity hint: None
SRP username: None
Start Time: 1675831906
Timeout : 7200 (sec)
Verify return code: 0 (ok)
Extended master secret: no
---
If I add the following lines to openssl.cnf (/etc/ssl/) then I'm able to execute the s_client command above and it returns the server certificate with a successful handshake.
[ssl_sect]
system_default = system_default_sect
[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT@SECLEVEL=1
Options = UnsafeLegacyRenegotiation
However, even IF I were to change this for the whole system (which I do NOT want to do), the plugin is still failing. I tried adding --openssl-legacy-provider
, --tls-max-v1.2
, and --openssl-config /etc/ssl/openssl-unsafe.cnf
to NODE_OPTIONS to no avail.
Alarm status changes but the state will not update.
Plug-in does not seem to work. it will get stuck if I disarm or arm. any ideas?
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.